郵件欺詐與SPF防御


一、郵件欺詐:

  眾所周知,現在郵件的發件人是自己生成的,其實發件域名也是可以自己生成的。例如,A得知B組織的郵箱域(前提是B組織郵箱域沒有配置SPF),那么A可以自己起一個郵箱服務器,配置相同的域名。配置一個賬號,例如招聘或者高層管理人員的賬戶。從而可以進行釣魚、欺詐等活動。測試可以使用winmail,配置快捷、使用方便。

二、防御措施:

  發件原理:SMTP(鳴謝)http://blog.csdn.net/kerry0071/article/details/28604267

 1 """
 2 C: telent SMTP.xxx.com 25  //以telenet方式連接xxx郵件服務器  
 3 S: 220 xxx.com Anti-spam GT for Coremail System //220為響應數字,其后的為歡迎信息  
 4 C: HELO SMTP.xxx.com //除了HELO所具有的功能外,EHLO主要用來查詢服務器支持的擴充功能   
 5 S: 250-mail  
 6 S: 250-AUTH LOGIN PLAIN  
 7 S: 250-AUTH=LOGIN PLAIN  
 8 S: 250 8BITMIME //最后一個響應數字應答碼之后跟的是一個空格,而不是'-'   
 9 C: AUTH LOGIN   //請求認證  
10 S: 334 dxNlcm5hbWU6  //服務器的響應——經過base64編碼了的“Username”=  
11 C: Y29zdGFAYW1heGl0Lm5ldA==  //發送經過BASE64編碼了的用戶名  
12 S: 334 UGFzc3dvcmQ6  //經過BASE64編碼了的"Password:"=  
13 C: MTk4MjIxNA==  //客戶端發送的經過BASE64編碼了的密碼  
14 S: 235 auth successfully  //認證成功   
15 C: MAIL FROM: bripengandre@163.com  //發送者郵箱  
16 S: 250 … .  //“…”代表省略了一些可讀信息  
17 C: RCPT TO: bripengandre@smail.hust.edu.cn //接收者郵箱  
18 S: 250 … .    // “…”代表省略了一些可讀信息  
19 C: DATA //請求發送數據  
20 S: 354 Enter mail, end with "." on a line by itself  
21 C: Enjoy Protocol Studing  
22 C: .  
23 S: 250 Message sent  
24 C: QUIT //退出連接   
25 S: 221 Bye  
26 """

其實這個smtp服務器可以自己搭建,配置域名和賬戶,從而偽造email的from字段。於是誕生了一中的問題:

防御方式來自於接受你郵件的服務器,根據的域名和IP要進行SPF查詢,看是否是在DNS服務器中配置的合法的IP,是則放行,不是則認定為垃圾郵件會退信。

三、SPF的配置:

客戶端查看dns上是否有關於該域名的SPF配置

1 nslookup -type=txt xxx.xxx.xxx

(注:除了公網出口IP要配置在公網DNS的SPF上之外,公司內網客戶端需要在自己的內部DNS上同樣配置SPF)

#SPF 有點類似路由交換中的ACL
#一條 SPF 記錄定義了一個或者多個 mechanism,而 mechanism 則定義了哪些 IP 是允許的,哪些 IP 是拒絕的。

舉個例子:
"v=spf1 -all" #拒絕所有(表示這個域名不會發出郵件)
"v=spf1 +all"#接受所有(域名所有者認為 SPF 是沒有用的,或者根本不在乎它)


+接受-拒絕~軟拒絕(中立,有郵件服務器自己判斷)
v=spf1 a mx ip4:173.194.72.103 -all  a和mx記錄代表dns記錄類型
ipv4(也可以是ipv6)最后 -all表示其他都拒絕

四、SPF更多選擇:

include

格式為include:<domain>,表示引入<domain>域名下的 SPF 記錄。注意,如果該域名下不存在 SPF 記錄,則會導致一個PermError結果。例如:

"v=spf1 include:example.com -all" 即采用和 example.com 完全一樣的 SPF 記錄

exists

格式為exists:<domain>。將對<domain>執行一個 A 查詢,如果有返回結果(無論結果是什么),都會看作命中。

ptr

格式為ptr或者ptr:<domain>。使用ptr機制會帶來大量很大開銷的 DNS 查詢,所以連官方都不推薦使用它。

關於v=spf1

這是必須的,這個表示采用 SPF 1 版本,現在它的最新版本就是第 1 版。

Modifiers

SPF 記錄中還可以包括兩種可選的 modifier;一個 modifier 只能出現一次。

redirect

格式為redirect=<domain>

將用給定域名的 SPF 記錄替換當前記錄。

exp

格式為exp=<domain>,目的是如果郵件被拒絕,可以給出一個消息。而消息的具體內容會首先對<domain>執行 TXT 查詢,然后執行宏擴展得到。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM