反垃圾郵件技術之密徑追蹤(圖)
發表時間:2023-07-31 來源:明輝站整理相關軟件相關文章人氣:
[摘要]中國的網民數量已突破1 億,每年電子郵件發送量達500 億封,但是這樣的數據卻并不能令我們驚喜,因為在這500 億封電子郵件中,有將近60%也就是有300 億封是垃圾郵件。垃圾郵件已經成為一個綜...
中國的網民數量已突破1 億,每年電子郵件發送量達500 億封,但是這樣的數據卻并不能令我們驚喜,因為在這500 億封電子郵件中,有將近60%也就是有300 億封是垃圾郵件。垃圾郵件已經成為一個綜合性的社會問題,要想從根本上杜絕垃圾郵件的泛濫,必須采取全民總動員的方式。由政府出面組織立法,行業制訂規 則、積極協調,郵件服務商則提供技術,用戶積極參與、協同合作。只有這樣,形成一個大眾化的反垃圾郵件聯盟,才能從根本上取得顯著成效。
反垃圾郵件技術之 密徑尋源
濫用SMTP
垃圾郵件泛濫的今天,如果收到了垃圾郵件,你可能會根據郵件的提示采用取消訂閱的操作,而這些取消訂閱的方法根本就是一種偽裝,幾乎沒有一個是有效的。相 反,郵件的發起者卻根據你的反饋信息,將你的郵件地址納入有效投遞用戶數據庫,得不償失。追其原因,主要和商業利益以及SMTP協議的安全機制不健全有 關。
SMTP協議對我們來說,應該是再熟悉不過的了,但是,這個協議在創建的時候并沒有考慮到未來的郵件會成為垃圾,因此安全性很差(人們還是以RFC524 為基礎來執行SMTP的),郵件頭可以任意創建、偽造和修改。郵件服務器一般不檢查發送者的內容,而只關心接收者,這就給了垃圾郵件發送者可乘之機。互聯 網上的SMTP認證是針對無限制轉發采取的措施。所謂無限制轉發,就是任何人都可以使用你的服務器發送郵件,一方面降低了投入成本,另一方面隱藏了真實的 來源。隱藏真實地址的原因主要是因為垃圾郵件發送在許多國家屬于違法行為,另外,垃圾郵件發送者(spammer)都明白垃圾郵件是不受歡迎的,通過偽造 發送者地址,就可能減少這種反應。早在2002年的時候,歐美的一些IT技術論壇上,關于因為大量的垃圾郵件引起了西方ISP屏蔽中國郵件服務器的“熱 潮”,就曾經廣為部署過。當時,中國電信的202.96.0.0—202.111.255.255范圍內的全部地址都被屏蔽,這都是垃圾郵件惹的禍。服務 器被中繼(Open Relay)的現象不但阻止垃圾郵件的首要任務,而且也是病毒郵件泛濫的罪魁禍首。
解讀信頭
追蹤郵件將很大程度依靠對郵件頭的分析,RFC2076 列出了多數通用的消息頭,此外也可以參考RFC2822。比如在Outlook Express中,我們可以通過點擊郵件的高級屬性打開郵件頭部的信息(圖1),一個郵件頭中常用于分析的項目如下:
cs.xzking.com/d/file/20150130/708cfb8e2a529bebe94a4562d4256172.bmp' />
1. Return-Path: eberlyolabode@domian1.net ;回復時發送的地址。很容易被偽造,但常常提供線索,比如有些垃圾郵件經常用該域指向一個合法的郵件地址,以便spammer能夠接收到回復的郵件;
2. Delivered-To: nospammer@mymail.com;和后面的“To”相同,收信人地址;
3. Received: from mail.domian1.net (unknown [192.168.x.148])
by mail.domain2.com (Postfix) with ESMTP id 66B1612191F
for ; Mon, 24 Jul 2006 05:11:54 0800 (CST)
郵件頭中最可信部分。一般會有幾條,形成站點列表,這些信息表明達到目的地過程中郵件所經過的服務器,域名都是郵件服務器自動插入 的,spammer 可以偽造,但是在被偽造以后經過的域名是可信的。這個列表從下往上表明了服務器路徑,最上面的一條Received是最終目的郵件服務器,也就是自己要接 收郵件的服務器,除非它也出現了問題。Receive 語句的基本表達格式是:from Server A by Server B,Server A 為發送服務器, Server B 為接收服務器。ESMTP ID 表示
4. Message-ID: 000001c6ae9c$a563a520$a4e8a8c0@saj61> ,郵件系統在創建郵件時的唯一標記(參考RFC822 、RFC1036)。也經常被偽造,但如果是正常的,那么Message-ID:也通常能確定發送者所登錄的系統,而不僅僅是郵件被創建的系統。 Message-ID 的結構同郵件服務器程序有直接關系,不同的郵件服務器的ID也不相同,但區別于ESMTP ID;
5. 服務器產生的ID 也不一樣,有時相同郵件服務器的不同處理也會產生不一樣的ID
6. Reply-To: "Olabode Eberly" eberlyolabode@domian1.net> 回復地址,被偽造;
7. From: "Olabode Eberly" eberlyolabode@domian1.net> 發信人地址,被偽造;
8. To: nospammer@ mymail.com
判別源頭的要點
一個完整的郵件傳輸過程如下:“郵件發送者→ MUA → MTA → 網絡傳輸→MTA → MDA→ 可能會有的郵件過濾 →MUA → 郵件接收者”。通過郵件傳輸原理,就可以將每個環節的不同特征拿出來,這為我們判別垃圾郵件帶來幫助(圖2)。
l MUA (Mail User Agent)
Mail Client端的軟件,它幫我們傳送與接受Mail,使用者通過它來跟 Mail Server 溝通,最常見的 MUA 有 Outlook Express和Fox Mail等
l MTA (Mail Transfer Agent)
它的作用是幫助我們把Mail傳送給其它Mail Serve,同時接受外部主機寄來的信件,所有的 SMTP servers 都可稱為 MTA。
l MDA (Mail Delivery Agent)
這項服務是用來把 MTA 所接受的Mail傳遞至使用者 Mailbox(收信箱)里面,部分SMTP Servers 也兼顧這MDA的角色。
l 收信、發信人地址
在我們收到的垃圾郵件中經常遇到發信人是我們自己的名字,或者收信人根本是與自己毫無關系的名字。這是因為收信人的MUA會從郵件中提 取,From、To、Date字段,如果發信人的MUA不是按照正常的邏輯工作的,或者發信人有意的使用垃圾郵件發送軟件,那么就會變更MAIL FROM 和RCPT TO 的值,使其擁有了不同的郵件地址。這個時候,MAIL FROM的值絕對是不可信的,而發信者為了得到收信人的反饋信息,所有我們可以通過RCPT TO 中的域名地址來定位來源。
l 非法中繼
如果發信人使用的不是自己所擁有的郵件服務器,在傳輸過程中使用互聯網上帶有Open Relay漏洞的服務器,這就為判別郵件的真實來源帶來的困難。在Received字段中如果包含了既不是發信人,又不是收信人域名的郵件服務器,這就很 有可能是被非法中繼的服務器,我們可是使用TELNET等工具測試這臺服務器是否具有Open Relay漏洞。
l 反向解析不同
如果發信人的域名為sender.com,但他在SMTP對話中的HELO命令后冒充另外一個域名是,比如 HELO testname.org ,此時信件的Received字段很有可能是如下形式:Received: from testname.org (sender.com [192.168.100.100]) by……, 我們通過對testname.org進行反向地址查詢后,就能發現IP地址信息與這個域名地址不符。
l 查找偽造的Received
由于怕暴露自己的真實信息,垃圾郵件的發送者經常在郵件頭中插入大量的Received行。如果你的郵件頭中存在大量的Received字段,最 后幾行一般是被插入的,因為信件一旦離開主機后,發信人是無法進行控制的,所經過的郵件服器將自動將信息加入到信頭頂部。從上到下追蹤From和by的信 息,以及IP的路由信息,是可以判別那些行是被偽造的。
評論:
通過上述內容我們有可能查找出郵件的真實發送IP,將其屏蔽,但如果發信方采用撥號的方式進行發送,或者機場經常更換地址,這就增加了判別正確的可信度。 早在 1999 年,垃圾郵件與病毒郵件還未成為全球IT業關注議題時,制定因特網與電子郵件相關標準的 IETF/IRTF等單位就提交文件 RFC 2505, 針對反制垃圾郵件的 SMTP MTA 主機設計提出規劃建議:需要SMTP MTA 主機應針對郵件發送來源進行通透解析,判定是否具匿名、偽造、濫發等非法行為,以采取退件或延遲反制機制;RFC 2505 更提出技術洞見,預言具彈性辨識機制、精良設計的 MTA 才能時時因應垃圾濫發者的反制手法。深度垃圾郵件行為解析必需在 MTA 階段執行,以郵件傳輸值追蹤技術、郵件通訊行為解析技術與預設濫發者類型 Pattern,追蹤、驗證并判斷來信是否為垃圾郵件。絕非淺層郵件行為解析如聯機次數分析、發送 IP 地址、發送時間、發送頻率、收件者數目、淺層電子郵件標頭檢查、發送行為偵測與檢驗Handshaking 聯機階段等信息可判斷。
上面是電腦上網安全的一些基礎常識,學習了安全知識,幾乎可以讓你免費電腦中毒的煩擾。