關(guān)于郵件偽造的一些新思路

本文首發(fā)于 I春秋

起因:

由于紅隊(duì)工作的原因,我們需要不定期對(duì)公司內(nèi)部的設(shè)備及人員發(fā)起攻擊,但是常規(guī)的WEB攻擊或者系統(tǒng)服務(wù)攻擊,并不能完整的模擬出外部的威脅。所以在這段時(shí)間,我也就研究了一下郵件偽造技術(shù)。(當(dāng)然本文中的偽造肯定不同于常規(guī)的偽造)。

在討論郵件偽造的主題之前,我們先來(lái)簡(jiǎn)單了解一下這幾個(gè)協(xié)議(POP3,IMAP,SMTP)與SPF。

1.POP3:

POP3即“Post Office Protocol - Version 3”,其作用是客戶(hù)端連接服務(wù)器下載服務(wù)器中所有未閱讀的郵件。

2.IMAP:

IMAP即“Internet Mail Access Protocol”,它不同于POP3,POP3協(xié)議并不會(huì)將客戶(hù)端對(duì)郵件進(jìn)行的操作同步至服務(wù)器。當(dāng)使用IMAP協(xié)議與郵件服務(wù)器交互的時(shí)候,你在客戶(hù)端對(duì)郵件進(jìn)行的操作都會(huì)同步到服務(wù)器上,所以IMAP也叫做交互式郵件存取協(xié)議。

3.SMTP

SMTP協(xié)議即“Simple Mail Transfer Protocol”簡(jiǎn)單郵件傳輸協(xié)議。它是用于從源地址到目標(biāo)地址傳輸郵件的規(guī)范。通過(guò)該協(xié)議來(lái)控制郵件的中轉(zhuǎn)。而我們常用的郵件供應(yīng)商所提供的郵件服務(wù),基本都是采用的SMTP協(xié)議進(jìn)行傳輸。
SMTP協(xié)議同時(shí)也要求了客戶(hù)端連接服務(wù)器需要進(jìn)行認(rèn)證(如果允許匿名登錄那就另當(dāng)別論了)。但是它也僅僅只要求了客戶(hù)端需要與服務(wù)端進(jìn)行認(rèn)證。而SMTP服務(wù)器之間傳輸郵件的過(guò)程是不需要進(jìn)行認(rèn)證的。這也就是郵件偽造的關(guān)鍵點(diǎn)所在。

4.SPF

SPF即“Sender Policy Framework”是一種以IP地址認(rèn)證電子郵件發(fā)件人身份的技術(shù)。 接收郵件方會(huì)首先檢查域名的SPF記錄,來(lái)確定發(fā)件人的IP地址是否被包含在SPF記錄里面,如果在,就認(rèn)為是一封正確的郵件,否則會(huì)認(rèn)為是一封偽造的郵件進(jìn)行退回。
SPF可以防止別人偽造你來(lái)發(fā)郵件,是一個(gè)反偽造性郵件的解決方案。當(dāng)你定義了你域名的SPF記錄之后, 接收郵件方會(huì)根據(jù)你的SPF記錄來(lái)確定連接過(guò)來(lái)的IP地址是否被包含在SPF記錄里面,如果在,則認(rèn)為是一封正確的郵件,否則則認(rèn)為是一封偽造的郵件。

傳統(tǒng)的郵件偽造

當(dāng)我們?cè)谶M(jìn)行郵件偽造的時(shí)候,一般都會(huì)去查詢(xún)對(duì)應(yīng)域名的SPF記錄,如下騰訊便使用了SPF技術(shù):


基本上現(xiàn)在很難有看到?jīng)]有使用SPF的大廠域名了。當(dāng)我們偽造郵件的時(shí)候,如果域名有設(shè)置SPF,那么我們基本就很難進(jìn)行傳統(tǒng)的偽造了。

但是優(yōu)良傳統(tǒng)不能忘,這里我還是得舉個(gè)使用Swaks進(jìn)行郵件偽造的例子。(公司內(nèi)部郵箱)
關(guān)于Swaks的具體用法請(qǐng)自行百度。畢竟它不是本文的關(guān)鍵。

Swaks

這里我已經(jīng)收到了郵件,但是其在郵件中提示了SPF Failed,這就是雖然我們公司做了SPF,但是其規(guī)則存在問(wèn)題,所以會(huì)出現(xiàn)攔截失敗的狀況。但是這種攔截失敗的提示對(duì)于財(cái)務(wù),人力等非技術(shù)人員來(lái)說(shuō)可能并不會(huì)注意,但是對(duì)于技術(shù)人員來(lái)說(shuō)當(dāng)收到這種郵件的時(shí)候,肯定會(huì)起疑。所以我們?cè)谶M(jìn)行紅隊(duì)釣魚(yú)工作的時(shí)候,可以有針對(duì)性的對(duì)特定目標(biāo)進(jìn)行釣魚(yú)。

非傳統(tǒng)性郵件偽造(基于客戶(hù)端漏洞的偽造),以騰訊郵箱為例

首先,我們知道,騰訊郵箱是做了SPF策略的。當(dāng)我們使用Swaks去偽造管理員用戶(hù)的時(shí)候,是無(wú)法偽造成功的。如下,550錯(cuò)誤


但是這樣我們是否就無(wú)法進(jìn)行偽造了?當(dāng)然可以繼續(xù)偽造,不過(guò)我們需要使用的方法不同而已。
首先我們需要知道,SMTP協(xié)議發(fā)送郵件的時(shí)候,是使用Mail From來(lái)指定發(fā)件人,但同時(shí)需要我們知道的還有一點(diǎn)即(發(fā)件人別名),這個(gè)是我們可以自定義的,那么這個(gè)時(shí)候我們來(lái)大膽猜測(cè)一下。發(fā)件人別名有什么用?而郵件客戶(hù)端是如何去對(duì)它進(jìn)行處理的。因此我對(duì)QQ郵箱進(jìn)行了FUZZ測(cè)試。測(cè)試結(jié)果如下圖所示:

可以看到我收到了以admin@qq.com為發(fā)件人發(fā)送的郵件。這個(gè)時(shí)候我在給你們看看郵件原文,你們應(yīng)該就知道這是為什么了。

其實(shí)就是我通過(guò)修改“發(fā)件人別名”在其中填充大量的特殊字符,從而使郵箱客戶(hù)端截取實(shí)際發(fā)件人失敗,導(dǎo)致實(shí)際顯示效果為我們偽造的郵箱及發(fā)件人。

以下為發(fā)件人別名payload,當(dāng)然也可以自己寫(xiě)個(gè)SMTP腳本進(jìn)行測(cè)試。腳本我已經(jīng)寫(xiě)好了,但是敏感時(shí)期就不發(fā)了。大家可以使用outlook進(jìn)行測(cè)試。

管理員 <admin@qq.com>                                                                                                                            ···                         ···

最后

經(jīng)過(guò)測(cè)試,并非只有騰訊郵箱存在這樣的問(wèn)題,各個(gè)郵件廠商都或多或少的存在問(wèn)題,同時(shí)我也將這個(gè)問(wèn)題提交給了騰訊SRC,但是他們的回復(fù)是這是符合RFC標(biāo)準(zhǔn)和協(xié)議的偽造場(chǎng)景。SO,我也就沒(méi)什么好說(shuō)的了。但好在這次研究中也發(fā)現(xiàn)了一些Outlook與Exchange的問(wèn)題。

最后放上一張圖,不知道這算不算郵件偽造成功或者偽造漏洞?

最后最后:

以上利用點(diǎn)僅用于研究,或紅隊(duì)公司內(nèi)部任務(wù)使用,切勿用于非法用途,望周知!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言 在開(kāi)發(fā)中,經(jīng)常需要寫(xiě)sql語(yǔ)句。但有個(gè)很?chē)?yán)重的問(wèn)題, sql 語(yǔ)句是 字符串型的,書(shū)寫(xiě)容易出錯(cuò)。 所以要封裝...
    jianshudxw閱讀 1,372評(píng)論 0 0
  • 不肯與君相決絕。 你和我,這個(gè)擁抱,來(lái)得好晚。 這一年,我六十歲了,頭發(fā)白了,牙齒松了,是個(gè)不再活潑的老太太。 三...
    女巫陳兒閱讀 794評(píng)論 2 8
  • 表妹還有一個(gè)多月就生產(chǎn)了。 他們都說(shuō) 我們家族里下一個(gè)就該你了。每當(dāng)這時(shí),總感覺(jué)自己的心上像是壓了一塊重重的鐵...
    栗么閱讀 236評(píng)論 0 0

友情鏈接更多精彩內(nèi)容