為什麼空的 MAIL FROM 地址可以發送電子郵件?
我們正在使用 Smarter Mail 系統。最近,我們發現黑客入侵了一些使用者帳戶並發送了大量垃圾郵件。我們有防火牆來對發件人進行速率限制,但是對於以下電子郵件,由於 FROM 地址為空,防火牆無法執行此操作。為什麼認為空的 FROM 地址可以?實際上,在我們的 MTA(surgemail) 中,我們可以在電子郵件標題中看到發件人。任何想法?
11:17:06 [xx.xx.xx.xx][15459629] rsp: 220 mail30.server.com 11:17:06 [xx.xx.xx.xx][15459629] connected at 6/16/2010 11:17:06 AM 11:17:06 [xx.xx.xx.xx][15459629] cmd: EHLO ulix.geo.auth.gr 11:17:06 [xx.xx.xx.xx][15459629] rsp: 250-mail30.server.com Hello [xx.xx.xx.xx] 250-SIZE 31457280 250-AUTH LOGIN CRAM-MD5 250 OK 11:17:06 [xx.xx.xx.xx][15459629] cmd: AUTH LOGIN 11:17:06 [xx.xx.xx.xx][15459629] rsp: 334 VXNlcm5hbWU6 11:17:07 [xx.xx.xx.xx][15459629] rsp: 334 UGFzc3dvcmQ6 11:17:07 [xx.xx.xx.xx][15459629] rsp: 235 Authentication successful 11:17:07 [xx.xx.xx.xx][15459629] Authenticated as hackedaccount@domain1.com 11:17:07 [xx.xx.xx.xx][15459629] cmd: MAIL FROM: 11:17:07 [xx.xx.xx.xx][15459629] rsp: 250 OK <> Sender ok 11:17:07 [xx.xx.xx.xx][15459629] cmd: RCPT TO:recipient@domain2.com 11:17:07 [xx.xx.xx.xx][15459629] rsp: 250 OK <recipient@domain2.com> Recipient ok 11:17:08 [xx.xx.xx.xx][15459629] cmd: DATA
空
MAIL FROM
用於傳遞狀態通知。郵件伺服器需要支持它(RFC 1123 第 5.2.9 節)。它主要用於退回消息,以防止無限循環。當
MAIL FROM
與空地址(表示為)一起使用時,如果消息正在發送給不存在的使用者<>
,則接收伺服器知道不生成退回消息。如果沒有這個,某人可能會通過向另一個域中不存在的使用者發送消息來拒絕您,並使用您自己域中不存在的使用者的返回地址,從而導致永無止境的循環退回郵件。
如果你用一個空的 阻塞消息會發生什麼
MAIL FROM:
?
- 您的使用者不會收到來自其他域的退回郵件:他們永遠不會知道自己在向其他域的使用者發送郵件時是否輸入錯誤。
您看到的空
MAIL FROM:
郵件可能不是來自垃圾郵件發送者。相反,垃圾郵件發送者在您的域中偽造了一個地址,並將其用作向另一個域發送郵件的返回地址。假設您是
yourdomain.com
,我的域是mydomain.net
. 垃圾郵件發送者向 發送消息johnq@mydomain.net
,將返回地址偽裝成johnq@yourdomain.com
。由於我的域中沒有使用者johnq
,我的郵件伺服器將退回郵件 (MAIL FROM:<>
) 發送給明顯的發件人,johnq@yourdomain.com
。這就是你可能看到的。在我看來,屏蔽空
MAIL FROM
消息弊大於利。根據我的經驗,垃圾郵件發送者很少使用空地址,MAIL FROM:
因為他們很容易偽造一個看起來真實的地址。當郵件是真正的垃圾郵件時,有更好的方法來檢測和阻止它,包括 RBL、貝氏過濾器和 SpamAssassin。最後,您可以通過為您的域
yourdomain.com
設置適當的SPF 記錄來防止至少一些偽造品的使用。**更新:**仔細查看您的日誌後,有人能夠
AUTH
為您的伺服器使用有效的使用者名和密碼。這使它陷入了另一類麻煩。但是,我所說的一切MAIL FROM:
仍然有效。99% 的時間都是退回郵件的結果。