人們總是使用防毒軟體消極的面對一次又一次的病毒,但是真正對防 毒的了解卻是少之又少,花了大錢買了防毒軟體卻只能靠專業人員去 解決和設定,我的動機很簡單,我要做一份網管人員必看,企業顧主 必看的郵件防毒處理系統,在面對病毒未來洶湧攻勢之下,奠定更多 防護,讓損失降到最低。
第二章
EXPN---用於擴充郵件列表。
若 SMTP 伺服器 mail.abc.com 收到一封信要發到 [email protected]:
a.Sendmail 請求 DNS 給出主機 sh.abc.com 的 CNAME 記錄,如有,
假若 CNAME 到 shmail.abc.com,則再次請求 shmail.abc.com 的 CNAME 記錄,直到沒有爲止。
b.假定被 CNAME 到 shmail.abc.com,然後 sendmail 請求@abc.com 域 的 DNS 給出 shmail.abc.com 的 MX 記錄,
shmail MX 5 shmail.abc.com 10 shmail2.abc.com
c. Sendmail 最後請求 DNS 給出 shmail.abc.com 的 A 記錄,即 IP 位 址,若返回值爲 1.2.3.4。
d. Sendmail 與 1.2.3.4 連接,傳送這封給 [email protected] 的信到 1.2.3.4 這台伺服器的 SMTP 後臺程式。
7.SMTP 基本命令集:
命令 描述
不需要和發送者自己的位址是一致的。RCPT TO 與之等同,指明
evnelope 是由伺服器主機間 SMTP 後臺提供的,而 message from/to 是由用戶提供的。有無冒號也是區別。
2.2 E-mail 工作原理及安全漏洞 E-mail 工作原理
一個郵件系統的傳輸包含了用戶代理(user Agent)。傳輸代 理(Transfer Agent 及接受代理(Doelivery A_gent)三大部 分。用戶代理是一個用戶端發信和收信的程式,負責將信按照 一定的標準包裝,然後送至郵件伺服器,將信件發出或由郵件 伺服器收回。
傳輸代理負責信件的交換和傳輸,將信件傳送至適當的郵件主 機,再由接受代理將信件分發至不同的郵件信箱。
傳輸代理必須要能夠接受用戶郵件程式送來的信件,解讀收信 人的地址,根據 SMTP(Simpie Mail Transport proto_col)協 定將它正確無誤地傳遞 d 到目的地。現在一般的傳輸代理已採 用 Sendmail 程式完成工作, 到達郵件主機在經接收代理 POP
(Post Office Protocol,網路郵局協定或網路中轉協定)來 使郵件被用戶讀取至自己的主機。
E-mail 的安全漏洞
當用 e 戶與你或站點交換 E-mail 時,應確保他們是安全的。
E-mail 在 Internet 上傳送時,會經過很多點,如果中途沒有 什麽阻止它,最終會到達目的地。
資訊在傳送過程中通常會做幾次短暫停留,因爲其他的 E-mail 伺服器會查看信頭,以確定該資訊是否發往自己,如果不是,
伺服器會將其轉送到下一個最可能的地址。
E-mail 伺服器有一個“路由表”,在那裏列出了其他 E-mail 伺服器的目的地的位址。當伺服器讀完信頭,意識到資訊不是 發給自己時,它會迅速將資訊送到目的地伺服器或離目的地最 近的伺服器。E-mail 伺服器向全球開放,他們很容易受到黑客 的襲擊,從而暴露隱私。資訊可能攜帶會損害伺服器的指令,
例如,Morris bug 內有一種會損壞 Sendmail 的指令,這個指
原理 :
用 SMTP 協定的方式去將多個資料夾內的.eml 信件寄給 Interscan 掃 毒
if( outputFilesList != null ) {
for( int i=0; i<outputFilesList.length; i++ ) {
if( outputFilesList[i].isFile() &&
outputFilesList[i].getName().endsWith(".eml") ) {
vt.addElement( outputFilesList[i] );}
} }
判斷 outputFilesList 不為 null 變去抓取.eml 副檔名的郵件將之寄給 Interscan
第三章 病毒造成的大量損失和 IMSS 的使用 3.1 摘要
一直以來我們都會搜集有關病毒相關的資料和程式碼做自己興趣的 研究,病毒的危害究竟有多嚴重,讓我們用損失來告訴你。
3.1.1 服務阻斷攻擊(DoS)
2000 年二月,「服務阻斷攻擊」(DoS)用大量資料阻塞了 Yahoo、eBay、
CNN 及 ZDNet 的網路,致使用戶無法正常造訪長達兩、三小時之久。
3.1.2 梅莉莎變種重現江湖 Mac 文件檔也遭殃 CNET 新聞專區:Ian Fried 報導 19/01/2001
電腦病毒專家說,梅莉莎(Melissa)病毒的新變種正在蔓延中,這 一回是藏身於蘋果麥金塔(Macintosh)格式的微軟 Office 檔案 (.doc)中。
Network Associates 的 McAfee 防毒緊急研究小組主任 Vincent Gullotto 指出,新變種的樣本約一個月前已送到他的工作室,但直 到最近一、兩天,已傳報超過24 件中毒事件。
如同其他梅莉莎變種,新病毒(稱Melissa -X 或 Melissa 2001)
主要作用是自我複製。系統被感染後,日後凡是用微軟Word 製作文
件檔案,就可能夾帶這隻病毒,而且如果在 Windows 環境下執行微 軟電子郵件軟體Outlook,病毒就會使用此軟體的通訊錄,自動傳出 50 封夾帶病毒程式 anniv.doc 的電子郵件。 息,一種名為藍色代碼(Worm. IIS. Code Blue)的新型網路病毒已經現 身,該病毒利用了 WINDOWS2000 的漏洞來傳播,比紅色代碼更具 強大的攻擊性,並已開始在大陸網路用戶中流傳。
降直至系統癱瘓。專家告誡廣大網路用戶,儘快升級防病毒軟體,如
3.1.6 觀念突破性病毒-Nimda
廖立茹指出,Nimda 傳染速率之所以高過紅色警戒,原因在於 Nimda 病毒的傳染途徑非常多,除了最傳統的電子郵件夾帶病毒檔
(readme.exe)外,由於 Nimda 設計時針對採用微軟 IIS 架構設計網站的 漏洞進行攻擊,因此使用者只要瀏覽遭受 Nimda 病毒感染的網站,就
會立即感染病毒。而遭受感染的電腦,又會立即透過網路芳鄰的資源
WORM_MSBLAST.A 災情持續向上飆漲,受感染電腦用戶數再創新
高!網路安全領導廠商趨勢科技今天(13 日)針對「疾風病毒」公佈目 前最新國內外受感染電腦用戶的數字,根據趨勢科技目前掌握的最新 消息,在台灣方面,短短數日之內受感染的大型企業客戶已急速擴增
到兩百多家,中小型企業用戶更是多達數千家以上,估計全台個人電 件。就以 1999 年暴發的梅莉莎(Melissa)就結合了病毒和蠕蟲的特
性,除了感染 Word 檔之外,且透過電子郵件大量散發,是首隻利用 電子郵件管道大量複製散播的病毒,至此之後,不管是那一類型的病 毒也都仿造著這一般的攻擊模式,帶有可造成大量郵件擴散的程式
(Mass Mailing Payload) 。而製作病毒的技術門檻卻是逐漸降低中,
網路上有許多現成可以產生病毒的工具,就算是給新手,也可以在幾 分鐘內製作一隻病毒。
如圖一所示,其中的紅線是指感染源是電子郵件歷年來的變化,你 會發現逐年增加比例實在快速的驚人。
3.3 採用 IMSS 對抗郵件病毒
採用 SMTP 的傳送方式將信件給 IMSS
信件收下之後,會在此處拆解準備進行掃毒,以 A 代表已掃毒的 信件,以 B 代表未掃毒的信件。
更新的部分
Scan engine 向 Virus pattern 取得最新的病毒碼進行掃瞄
Log 裡紀錄了相關所有的變動和掃完之後的紀錄
第四章 內容過濾及信件派送
如下圖所示
判斷流程:
1. 先查看是否為本公司
2. 若比對結果為否就表示是其他公司
3. 比對結果為是就代表目的地是本公司的單位,再從系統設定值找 出本地代號為何
4. 依不同目的地分別送至不同之路徑
判斷單位
Monitor.java ,ContentFilter.java 與 Dispatcher.java 而兩個程式的概略說明如下:
Monitor.java
內容過濾及信件派送程式的各類別檔均用 Monitor.java 來控制,
包括參數值和程式運作流程。簡單的說,Monitor.java 是為好掌控而 設計的主類別檔。故在啟動內容過濾及信件派送程式時,只須在 compiler 後,執行 "#java Monitor" 即可。
ContentFilter.java
執行內容過濾
Dispatcher.java Step:
XXXXXXXXXXXXXXXXX.eml ^^^^^^^^^^^^^^^^^^^^^^^^^^
同步字串 副檔名 同步字串共 17 個 char 長度
5. 對單封 mail, 得到所有需收到 mail 的人的 E-Mail 6. 派送:
a) 內容過濾
b) 根據該封所有 E-Mail, 判斷須把該郵件送至 MS 或 DB 或 XML 或 ILLEGAL_MAIL_DIR c) 複製該郵件至該到達的地方
(MS 或 DB 或 XML 或 ILLEGAL_MAIL_DIR) d) 重覆 b 直到所有要派送的 mail 都送完
7. 移除已派送的 mail
第五章 遇到的困難和解決的過程 server 的設定和進階的認識,需要我一點一滴花時間去從新學習,不 過,我自己的電腦一直撐不起 server 龐大的資源耗費,加上一時實驗 室沒多的機器可以借我,在東借西借的努力之下才借到一台筆記型電 腦,才能把相關的軟體灌好,才沒有不穩的情形出現,此時的金山正 在使用 server-client 的機制,以丟 IP address 和 port 的方式進行傳送,
不過,在一切都弄好的同時專題的另一端出了問題,學長堅持要我們 使用某一個函式去寫程式,不過,那方面的資料並不是太多,我一連 在圖書館裡找了好幾天的書,才找到相關的程式和資料開始著手寫程
式,在寫完程式之後移植程式到 Free BSD 的環境之時,才發現學長
一再的嚐試,卻是一再的原地踏步,完全沒有進展。
另外,在信件派送的方面,由於對於 email address 的”@”之後的 domain
name 判斷收信者的身份並不是很清楚,也拖了一段時間才與相關人 員探討這方面的問題。相關人員在瞭解了我的問題之後,回去也將判 斷規則詳細說明的內容,以 email 的方式寄給我。也因此讓我能由收 信者的 Email Address 來判斷要先將該信件覆製到哪個暫存資料匣,
再由該暫存資料匣做後續的處理,例如:加解密、壓縮、解壓縮、傳 送或續傳…等等後續動作。以完成該封信件的傳送工作。
由這個小地方可以得知,不管是多麼細節的地方,都必須很小心注意 的確立與訂定規格,不然在實作的時候,一定會碰到模擬兩可、模糊 不清的狀況,而導致沒有辦法順利完成。
第六章 參考資料
[1] 精通 windows 2000 server 網路規劃及架設篇 中文板
Mark Minast / Chista Anderson / Brian M. Smith / Doug Toombs 原著 陳玄玲 / 許皓翔 編譯 松崗出版
[7] 資傳網 http://infopro.com/
[8] msdn http://msdn.microsoft.com/default.aspx [9] O’REILLY http://www.oreilly.com/
[10] SEND MAIL http://www.sendmail.com/
[11] SOPHOS http://www.sophos.com/
[12] TREAD http://www.trendmicro.com/tw/home/enterprise.htm [13] OPENFIND http://www.openfind.com.tw/
[14]人民網 http://www.people.com.cn/
[15] CNET 新聞專區 http://taiwan.cnet.com/news/
[16]奇摩新聞 http://tw.news.yahoo.com/
[17]CIO 資訊傳真周刊 [18]資訊安全通訊雜誌
第七章 附錄
附錄一
IMSS 的安裝與設定針對整個網域做搜尋, 找尋網域上所有群組及電腦。
點選要安裝的主機(可以同時遠端安裝多台主機)。
在安裝主機之前, 會要求你輸入主機的管理帳號和密碼並且
把 C 槽 share 出來。
正在安裝中。
安裝軟體完成之後, 進入管理控制台或是
http://<target server’s IP address>InterScaMSSConfig.html 。
過來就是進到整個防毒軟體的內部設定,當然需要 IMSS 管
理者才能進去。
設定 SMTP 的 IP address 和 Port 及管理者信箱
。這三個資料夾,分別是 mqueue、bmqueue 和 postpone,是 IMSS
用來存放剛收下的郵件和不能傳遞的郵件及稍後傳送或有
特殊規定的郵件。
IMSS 一開始並沒設定密碼,所以管理者必須在第一次進入
系統之後,把系統密碼設定好。
選擇要更新的 pattern,和更新的日期。
這邊是 log 檔的部分,可以從這邊看到有關 Virus pattern 和
郵件的收發是否正常及問題出現在那。
設定要郵件收集的網域,以便 IMSS 判斷來源。
設定掃完病毒郵件傳送的主機。
出現在桌面的訊息視窗,會把收發的郵件記錄以精簡的訊息
呈現出來。
附錄二 郵件轉換站記錄(Mail Exchanger Record) 錄,MD(mail destination)和 MF(mail forwarder)兩個組成。MD 記錄詳 細記載了最終目的的主機,也就是該訊息所記載要接收的主機位址,
[name][ttl] IN MX preference host
preference
與某一個主機或網域有關的 MX 記錄可能不只一個,
preference 欄位指定嘗試這些郵件伺服器的順序,preference 數值小的伺服器先試。所以最受歡迎的偏好值是 0,通常一