捐血一袋救人一命

2011年6月24日 星期五

Check SMTP Authentication

相信很多公司的郵件伺服器都會開放 SMTP 25 Port ,供差旅同仁方便寄信。

但這也給予Cracker / SPAMER SMTP Auth Relay Attack 的機會。

這會造成公司的郵件主機被列入黑名單之中…(網路上還是有不少公司堅持使用這種落伍的黑名單技術來阻擋廣告信)

到時同仁就會一直反應會被退信…

因為從外部透過公司郵件主機 Relay ,需要進行 SMTP 驗證

所以我寫了一支程式去監控事件檢視器,搭配 Exchange 的 SMTP 驗證記錄;如果有 SMTP 驗證成功的訊息,就會在我的電腦 Pop Up 一個提醒視窗。

首先把 Exchange 的 SMTP 驗證事件開啟

2011-06-24_113509

2011-06-24_113629

接著在本機執行以下程式(請存成 .vbs 檔案,然後執行它)

strComputer = "MAIL"

Set objWMIService = GetObject("winmgmts:{(Security)}\\" & strComputer & "\root\cimv2")

Set colMonitoredEvents = objWMIService.ExecNotificationQuery ("Select * from __InstanceCreationEvent Where " & "TargetInstance ISA 'Win32_NTLogEvent' " & "and TargetInstance.EventCode = '1708'")
Do
    Set objLatestEvent = colMonitoredEvents.NextEvent
    Wscript.Echo "User:" & objLatestEvent.TargetInstance.User & chr(13) & "DateTime:" & objLatestEvent.TargetInstance.TimeWritten & chr(13) & "Log:" & objLatestEvent.TargetInstance.Message

Loop

其中 1708 是 SMTP 驗證成功的事件代碼

當程式監控到 Event 時,就會跳出如下的視窗。

image

 

有人說:DNS MX 記錄指向 AntiSPAM 設備就不會受到 SMTP Auth Attack ,這是一個嚴重的錯誤觀念!

駭客要攻擊都會直接掃瞄 25 Port ,有誰開 25 Port ,就會被 Try…

反應:

0 意見: