由于個人的安全意識水平存在差異,釣魚郵件往往很容易成功讓人中招。本篇主要介紹郵件釣魚時繞過 SPF 偽造發(fā)信人信息。
SPF 發(fā)件人策略框架(Sender Policy Framework)電子郵件認證機制,主要作用是防止偽造郵件地址。
SPF記錄的本質,是向收件人宣告:本域名的郵件從清單上所列IP發(fā)出的都是合法郵件。
當在DNS中定義了域名的SPF記錄后,為了確認郵件聲稱發(fā)件人不是偽造的,郵件接收方首先檢查郵件域名的SPF記錄,來確定發(fā)件人的IP地址是否被包含在SPF記錄中,若包含,則認為是一封正確的郵件,否則認為是一封偽造的郵件并退回,或將其標記為垃圾/仿冒郵件。
dig -t txt qq.com //linux
nslookup -type=txt qq.com //windows
'v=spf1 -all' (拒絕所有,表示這個域名不會發(fā)出郵件)
'v=spf1 +all' (接受所有)
'v=spf1 ip4:192.168.0.1/16 -all'(只允許 192.168.0.1/16 范圍內的IP發(fā)送郵件)
'v=spf1 mx -all'(允許當前域名的 mx 記錄對應的IP地址發(fā)送郵件)
'v=spf1 mx mx:test.example.com -all'(允許當前域名和 test.example.com 的 mx 記錄對應的IP地址發(fā)送郵件)
'v=spf1 a mx ip4:173.194.72.103 -all'(允許當前域名的 a 記錄和 mx 記錄和一個給定的IP地址發(fā)送郵件)
'v=spf1 include:example.com -all'(采用和 example.com 一樣的SPF記錄)
如果郵箱沒有配置 SPF ,就可以直接偽造郵箱地址發(fā)送郵件。下圖是沒有配置SPF 的郵箱系統(tǒng)。
本篇使用 Swaks 工具進行郵件偽造,該工具在 kail 中已經集成,以下是該工具的一些參數介紹。
-t –to 目標地址 -t test@test.com
-f –from 來源地址 (發(fā)件人) -f 'text<text@text.com>'
–protocol 設定協議(未測試)
--body 'http://www.baidu.com' //引號中的內容即為郵件正文
--header 'Subject:hello' //郵件頭信息,subject為郵件標題
-ehlo 偽造郵件ehlo頭
--data ./Desktop/email.txt //將TXT文件作為郵件發(fā)送
下面是測試需要用到的臨時郵箱地址。
http://24mail.chacuo.net/
https://www.linshi-email.com/
1.檢測
nslookup -type=txt iubridge.com
檢測發(fā)現該地址沒有配置 SPF。
2.偽造
swaks --header-X-Mailer '' --header-Message-Id '' --header-'Content-Type'='text/html' --from 'QQ安全中心<admin@qq.com>' --ehlo shabimeiguo -header 'Subject: 測試' --body 這是一個測試 --to khyscqharm@iubridge.com
如果郵箱存在 SPF ,本篇會介紹4種繞過方法。
如果郵箱配置了 SPF,我們又不在其 SPF 配置的IP地址中,就無法直接偽造郵箱地址。但是我們依然可以通過修改字眼的方式來迷惑對方,如修改一些單詞為數字,如字母 l 可以修改為數字 1 等等。
swaks --body 'test' --header 'Subject:testT' -t xxx@qq.com -f message@adobe.com.cn
將 message@adobe.com 偽造成 message@adobe.com.cn
所謂的郵件轉發(fā),就是我們注冊一個開啟了 POP3 服務的郵箱,使用該郵箱來轉發(fā)我們的郵件。
注冊一個郵箱開啟 POP3 轉發(fā),需要保存好授權碼,本篇使用的是 163 郵箱。
將要發(fā)送的郵件導出 EML 模版
修改內置的發(fā)件人內容時間等
使用 swaks 發(fā)送郵件。
swaks --to 收信人 -f 發(fā)信人 --data 1.eml --server smtp.163.com -p 25 -au 賬號 -ap 授權碼
成功偽造了發(fā)件人,不過依然不是很隱蔽,因為下面顯示了由什么郵箱地址轉發(fā)。
因為使用自己的郵箱進行轉發(fā)的話,很容易就暴露了我們的個人信息,所以推薦使用第三方平臺進行郵件轉發(fā),這樣代發(fā)顯示就是第三方平臺,避免了過多的暴露我們自己的信息。
下面是第三方郵箱系統(tǒng)的網址,本篇使用的是 SendCloud 平臺。
https://www.smtp2go.com/ //smtp2go(速度慢但免費發(fā)送量大)
https://www.sendcloud.net/ //SendCloud(速度快但免費發(fā)送量少)
首先新增域名,將域名配置中的發(fā)信配置一個個添加到域名解析中去。
接著生成新的API_KEY ,這里需要保存好,后面發(fā)送郵件會用到。
最后測試發(fā)送,發(fā)信地址處輸入我們要偽造的地址。
成功偽造發(fā)件人地址,后面代發(fā)地址顯示的也是第三方轉發(fā)平臺。
在我們進行郵件釣魚時,往往需要大批量的發(fā)送郵件,這時候一款支持批量發(fā)送郵件的工具就顯得尤為重要,本篇主要介紹 Gophish 這一款工具。
項目地址
https://github.com/gophish/gophish
使用手冊
https://docs.getgophish.com/user-guide/
本篇使用的 windows 版本,直接運行 exe 版本即可,服務會在本地 3333 端口開啟。
1.首先配置發(fā)件接口,將我們開啟了 POP3 服務的郵箱配置上去。
配置好了之后可以點下面的發(fā)送郵件進行測試。
2.然后配置發(fā)信模版,找一個要偽造的郵箱內容,將源碼導入進入。
可以配置偽造的地址。
可以自行選擇是否添加附件。
3.配置觸發(fā)頁面,配置這個是為了方便我們進行釣魚,這個配置好后郵件里的地址都會指向我們配置的,比如我在這里配置為百度的地址。
4.配置收信人地址,這里是為了添加多個用戶,從而可以實現批量發(fā)送。本篇測試使用只添加了一個用戶。
5.所有配置完成后就可以發(fā)送郵件了。
成功偽造發(fā)件人信息。
郵件所有地址都指向百度。
本篇主要介紹了繞過 SPF 從而偽造發(fā)件人信息。在發(fā)送釣魚郵件時,如果安全意識比較薄弱的人,看到發(fā)信人顯示的是高信譽的郵箱,往往很容易相信郵件的內容,進而點擊郵件的網站或下載了附件,從而成功被攻擊者釣魚。借助此篇也希望能讓大家對郵件釣魚的技術多一些了解,多一些防范。
聯系客服