一.什么是惡意軟件
惡意軟件是一種秘密植入用戶系統借以盜取用戶機密信息,破壞用戶軟件和操作系統或是造成其它危害的一種網絡程序。對于絕大多數系統來說,惡意軟件已經成為了最大的外部威脅,給企業和個人都帶來了巨大的損失。僅以惡意軟件中的間諜軟件為例,間諜軟件侵犯了用戶的隱私,這已經成為企業用戶關注的焦點。盡管間諜軟件的出現已有時日,但是近幾年使用間諜軟件侵入系統監視用戶行為變得更加猖獗。企業還面臨一些與惡意軟件相關的非惡意軟件威脅。其中司空見慣的就是網絡釣魚,就是使用基于計算機的欺騙方法套出用戶的敏感信息。還有就是病毒欺騙,就是對新的惡意軟件威脅發出錯誤的警報。
二.惡意軟件分類
一般認為,惡意軟件包括病毒,蠕蟲,木馬,惡意的移動代碼,以及這些的結合體,也叫做混合攻擊。惡意軟件還包括攻擊者工具,譬如說,后門程序,rookits,鍵盤記錄器,跟蹤的cookie記錄。本篇討論的內容包括,惡意軟件怎么樣進入和感染系統及其傳播;怎么樣工作;針對的目標;怎么樣影響系統。
2.1 病毒
病毒能夠實現自我復制,并且感染其它文件,程序和計算機。每一種病毒都有感染機制;譬如,有的病毒可以直接插入主機或是數據文件。病毒的威力可大可小,有些可能只是小惡作劇,還有可能是相當惡意的攻擊。絕大多數的病毒都有誘發機制,也就是誘發其威力的原因,一般需要用戶的互動方能實現。目前有兩種重要的病毒,一是可編譯病毒(compiled virus),主要通過操作系統實現;二是演繹性病毒(interpreted virus),主要通過應用程序實現。
2.1.1 可編譯病毒
可編譯病毒的源代碼可以經由編譯器程序轉換為操作系統可以直接運行的程序格式。可編譯病毒包括以下三種:
■ 文件感染器(file infector) 這種病毒一般將其附加在可執行程序中,譬如word,電子表格和電腦游戲。一旦病毒感染程序,就直接影響系統中的其它程序,還有使用系統作為共享的感染程序。Jerusalem和Cascade就是兩種最出名的文件感染病毒
■ 引導區(boot sector)引導區病毒一般感染硬盤驅動的MBR或是硬驅和移動媒介的引導區。引導區,顧名思義就是存儲信息的硬盤或是磁盤的開始部分。MBR是磁盤上比較獨特的區域,因為電腦的基本輸出/輸入系統(BIOS)可以加載啟動程序的地方就在此。一旦電腦啟動的時候,如果硬驅中有感染的磁盤,病毒就自動執行。引導區病毒隱藏性很強,成功率高,破壞性強。其表現就是啟動的時候出現錯誤信息或是啟動不穩定。Form,,Michelangelo和Stoned是很典型的引導區病毒。
■ 混合體(Multipartite)混合體病毒使用多種感染方式,典型的是感染文件和引導區。相應地,混合體病毒有上述兩種病毒的特征。典型例子:Flip和Invader
除了感染文件之外,可編譯病毒還可以躲藏在感染系統的內存中,這樣每次執行新的程序的時候就可以感染新的程序。在上述三種病毒中,啟動區域病毒最有可能存在于內存中。相比那些非存在于內存中的病毒而言,這種病毒危害性更大,更加頻繁。
2.1.2 演繹性病毒
與可編譯病毒有操作系統執行不同的是,這種病毒的源代碼只能由特定程序來實現。這種病毒以其簡單易操作深受歡迎。即使一個不是太熟練的黑客也可以借此編寫和修正代碼,感染計算機。這種病毒的變體很多,最主要的兩種是宏病毒(macro virus)和腳本病毒(scripting virus)
宏病毒是這種病毒中最流行最成功的。病毒一般附加到word,電子表格等,并且使用這些程序的宏編譯語言來執行病毒。它們利用的正是很多流行軟件的宏編譯語言功能,譬如說,微軟的辦公軟件。由于人們共享具有宏功能文檔的增多,這種病毒也越來越流行。一旦宏病毒感染發生,就會感染程序的建立和打開文件夾模板程序。一旦模板被感染,所有藉由此模板建立和打開的文件都會被感染。Concept, Marker, 和Melissa 就是很出名的宏病毒。
腳本病毒與宏病毒類似。最大區別在于,宏病毒是以特定軟件程序語言為基礎,而而腳本病毒是以操作系統理解的語言編程,譬如說Windows腳本主機功能就可以執行VB腳本語言。典型的腳本病毒有First 和 Love Stages病毒。
2.1.3 病毒模糊技術
現在的病毒變得越來越復雜,一般使用多種障眼法達到掩蓋自己的目的。病毒越難查出,危害性就越大。下面介紹幾種典型的病毒模糊技術。
■ 自我加密和自我解密 有一些病毒能夠加密和解密他們的病毒代碼,這樣就可以躲避殺毒軟件的直接檢查。使用加密的病毒可能會使用多層加密或是隨機加密密鑰,這樣即使是病毒本身代碼是一樣的,看起來也有天壤之別。
■ 多態化 多態化是自我加密的形式多樣化。一般來說,多態化實現默認加密設置的改變,解碼也會隨之改變。在多態化病毒中,病毒本身的內容沒有改變,加密只改變其外在形式。
■ 變形記 變形記的思路是改變病毒本身實質,而不是使用加密隱藏其實質。病毒的改變有幾種方式,譬如,在源代碼中加入不必的代碼順序,或是更改源代碼的順序。被替換的代碼被重新編譯,其執行的時候看起來似乎完全不同。
■ 秘密病毒(stealth)這種病毒使用多種技術隱藏病毒特征。
■ 裝甲 使用裝甲的目的就是為了阻止殺毒軟件或是專家分析病毒功能
■ 隧道法(tunneling)這種病毒一般潛在操作系統的下層接受底層的操作系統請求。由于其位于殺毒軟件之下,借用操作系統就可以防止其被殺毒軟件查出。
殺毒軟件廠商都下大力氣防止病毒模糊技術。一些老式的模糊技術,譬如自我加密,多態化,和秘密行動,殺毒軟件都能有效地處理。但是新的更加復雜的,譬如,變形技術,現在還很難查殺。
2.2蠕蟲
蠕蟲能夠實現自我復制的程序,蠕蟲病毒是一種常見的計算機病毒。它的傳染機理是利用網絡進行復制和傳播,傳染途徑是通過網絡、電子郵件以及優盤、移動硬盤等移動存儲設備。蠕蟲程序主要利用系統漏洞進行傳播。它通過網絡、電子郵件和其它的傳播方式,象生物蠕蟲一樣從一臺計算機傳染到另一臺計算機。因為蠕蟲使用多種方式進行傳播,所以蠕蟲程序的傳播速度是非常大的。
蠕蟲侵入一臺計算機后,首先獲取其他計算機的IP地址,然后將自身副本發送給這些計算機.蠕蟲病毒也使用存儲在染毒計算機上的郵件客戶端地址簿里的地址來傳播程序。雖然有的蠕蟲程序也在被感染的計算機中生成文件,但一般情況下,蠕蟲程序只占用內存資源而不占用其它資源。
2.3 木馬
其名稱來源于希臘神話,木馬是一種非自我復制程序,但是實際上帶有隱蔽的惡意動機。一些木馬使用惡意版本替代現有文件,譬如系統和程序中的可執行代碼;還有一些在現有文件中添加另外的程序重寫文件。木馬一般有以下三種模型:
■ 執行正常系統的功能的同時,執行單獨的,不相關的惡意活動(譬如,在執行游戲程序的時候收集程序密碼)
■ 執行正常系統功能的同時,修正其功能執行惡意活動,或是掩蓋惡意活動
■ 完全期待正常系統功能執行惡意程序功能
木馬很難被檢測到。因為木馬病毒在設計之初就掩蓋了其在系統中的現形,并且執行了原程序的功能,用戶或是系統管理員很難察覺。現在還有一些新的木馬使用了模糊化技術躲避檢測。
現在,使用木馬傳播間諜軟件越來越頻繁。間諜軟件一般與支持軟件捆綁,譬如說一些點對點的文件共享軟件;一旦用戶安裝了這些貌似正常的軟件,間諜軟件亦隨之安裝。木馬病毒還會傳播其它種類的攻擊者工具到系統中,借此可以實現未經授權的訪問或是使用感染的系統。這些工具要么是與木馬捆綁,要么是木馬替代系統文件之后再下載。
木馬會導致系統嚴重的技術問題。譬如說,替代正常系統可執行文件的木馬可能會導致系統功能的不正常運行。與間諜軟件相關的木馬對系統的破壞性特別大,有可能會導致系統不能正常運行。木馬及其安裝的相關工具會消耗大量的系統資源,導致系統性能的嚴重下降。著名的木馬病毒有SubSeven, Back Orifice和Optix Pro.等等。
2.4惡意的移動代碼
移動代碼可以在不需要用戶指示的情況下實現遠程系統在本地系統上的執行。這是編程方法現在很流行,編寫的程序被廣泛使用于操作系統和應用程序上,譬如說,網絡瀏覽器和電子郵件應用程序。盡管移動代碼本身不壞,但是黑客們卻發現惡意的移動代碼是攻擊系統的有效工具,也是傳播病毒,蠕蟲和密碼的良好機制。惡意移動代碼與病毒和蠕蟲很不同的地方在于它不感染文件或是自我復制。與利用利用系統漏洞不同的是,它利用的是系統給于移動代碼的默認優先權。編寫惡意移動代碼的受歡迎的語言包括Java, ActiveX, JavaScript, 和 VBScript.。其中最出名的惡意移動代碼是使用Java腳本的Nimda。
2.5 混合攻擊
混合攻擊使用多種感染或是攻擊方式。著名的Nimda蠕蟲實際上就是很典型的混合攻擊。它使用了四種分布方法:
■ 電子郵件 一旦用戶打開了惡意的郵件附件,Nimda就會利用瀏覽器上的漏洞展現基于HTML語言的電子郵件。一旦感染了主機,Nimda就會尋找主機上的電郵地址然后發送惡意郵件。
■ Windows共享 Nimda掃描網絡服務器,尋找微軟的網絡信息服務(IIS)上的已知漏洞。一旦發現有漏洞的服務器,馬上就會發送復件到這臺服務器上感染服務器和文件。
■ 網絡客戶端 如果有漏洞的網絡客戶端訪問了被Nimda感染的網絡服務器,那么客戶服務器也被感染了。
除了使用上述描述的方法之外,混合攻擊可以通過即時通訊和點對點文件共享軟件傳播。人們很多時候把混合攻擊誤認為蠕蟲,因為它具有蠕蟲的一些特征。實際上,Nimda具有病毒,蠕蟲和惡意移動代碼的特征。另外一個混合攻擊的例子是Bugbear,它既是海量郵件蠕蟲也是網絡服務蠕蟲。由于混合攻擊比單一惡意軟件更加復雜,所以更難制造。
混合攻擊并非同時使用多種方式發動攻擊,它們可以依次感染。它越來越作為傳播和安全木馬的流行方式。
2.6 跟蹤cookies
Cookies就是上網時留下的數據文件。Session cookies是對單一網站session有效的臨時cookies。長期cookies是未定義地存儲在計算機上的cookies以便在以后的訪問中確認用戶。長期cookies記錄下了用戶對于網站的喜好以便用戶下次的訪問。這樣長期cookies就可以更加有效地幫助網站服務客戶了。
但是,不幸的是,長期cookies會被濫用跟蹤用戶的網絡瀏覽記錄。譬如說,一家市場調查公司可能會在很多網站上發布廣告,然后使用cookie跟蹤用戶訪問網站的情況,借此調查用戶的行為特征。這叫做跟蹤cookies。有跟蹤cookies搜集到的信息出售給第三方以便更加有效地發布廣告。絕大多數的間諜軟件檢測和移動工具都可以尋找系統中的跟蹤cookies。
另外一個獲取用戶私人信息的方法是網絡bug的使用。網絡bug是存在于網頁中HTML內容中的小圖像。這個小圖像除了搜集用戶瀏覽HTML的信息之外,別無其它用途。一般用戶看不到網絡bug,因為它只有一個像素大小。正如跟蹤cookies一樣,它也為市場調查機構廣泛使用。他們可以收集用戶IP地址或是網絡瀏覽器類型,還可以訪問跟蹤cookies。所有這些使得網絡bug可以被間諜軟件利用構建用戶的個人信息。
2.7攻擊者工具
作為惡意軟件和其它系統威脅的一部分,各種各樣的攻擊者工具都可以發送到系統中。這些工具包括各式惡意軟件,會讓攻擊者未經授權訪問或是使用被感染系統及其數據,或是發動攻擊。一旦被其他惡意軟件傳播,攻擊者工具就會變成惡意軟件的同伙。譬如,一臺感染蠕蟲的系統會直接受蠕蟲的指示訪問特定的惡意網站,下載工具,然后安裝到系統中。下面介紹幾種流行的攻擊者工具:
2.7.1 后門程序
后門程序是對監聽TCP或是UDP端口命令惡意軟件的統稱。絕大多數的后門程序包括客戶端和服務器兩部分。客戶端在攻擊者的遠程計算機上,服務器端位于感染的系統上。一旦客戶端和服務器之間連接上,遠程攻擊者就會實現對感染計算機一定程度上的控制。即使最不濟的后門程序也會允許攻擊者執行一定的系統命令,譬如文件傳輸,獲取密碼,或是執行模糊命令。后門程序也有一些功能,如下:
■ 僵尸 最主流的僵尸就是DDoS攻擊代理。攻擊者可以使用遠程命令控制大量計算機對同一目標發動攻擊。著名的DDoS攻擊代理有Trinoo 和Tribe Flood Network. 。
■ 遠程管理員工具(RAT) 從字面意義上說,RAT會使攻擊者得到其想要的訪問權限。絕大多數的RAT 都可以讓攻擊者訪問系統功能和數據。包括監視系統屏幕上出現的任何東西,或是遠程控制系統設備,譬如攝像頭,麥克風等。著名的RAT包括Back Orifice和Netbus等。
2.7.2 鍵盤記錄器
鍵盤記錄器用來監視和記錄鍵盤的使用記錄。鍵盤記錄器記下輸入到系統中的信息,諸如電子郵件內容,用戶名和密碼,或是金融信息。有一些鍵盤記錄器需要攻擊者從系統中找尋數據,還有一些會自動將數據通過電子郵件等發送到系統中。KeySnatch, Spyster, 和 KeyLogger Pro都是常用的鍵盤記錄器。
2.7.3 Rookits
Rookit是指一些安裝到系統中的文件,采取惡意的和偷偷摸摸的方式替代系統的正常功能。在一些操作系統中,,譬如Unix和Linux中,rookits修正或是代替數以百計的文件。在其它操作系統中,譬如Windows中,rookit修正或替代文件或是僅僅存在于內存中,或是修正操作系統內置系統請求的使用。許多經rookit修改過的文件都會隱藏rookit的存在,這樣就使得rookit的探測變得異常困難。譬如說,rookit經常用來安裝其它形式的攻擊工具,后門程序或是鍵盤記錄器等。一些rookit包括LRK5, Knark, Adore, 和Hacker Defender(黑客防御者).
2.7.4 網絡瀏覽器插件
網絡瀏覽器幫助用戶瀏覽網絡上的內容。攻擊者常常借用插件傳播間諜軟件。一旦安裝到瀏覽器中,這些插件就會監視瀏覽器的所有所有記錄,譬如網頁瀏覽記錄,然后將其報告給第三方。因為插件是在瀏覽器打開的時候自動加載的,這就提供了監視系統網絡活動的簡單的方法。有一些惡意的網絡插件是間諜軟件撥號器,它們使用調制調解線在未經用戶允許的情況下撥打電話號碼。一般說來,撥打的號碼都是高收費電話或是緊急電話。
2.7.5 電子郵件生成器
惡意軟件可以通過電子郵件生成程序傳播到系統中,這樣在用戶不知情的情況下就會發生大量的郵件到其它的系統中。攻擊者一般使用電子郵件生成器發生惡意軟件,間諜軟件或是垃圾郵件或是其它內容到收件人清單。
2.7.6 攻擊者工具包
攻擊者使用包含多種工具和腳本的工具包探測和攻擊系統。一旦系統受到惡意軟件或是其它方式的攻擊,攻擊者就會在系統中下載和安裝工具包。然后工具包就會借此對這一系統或是其它系統發動攻擊。在攻擊者工具包中常見的程序:
■ 信息包探測器 信息包探測器用來監視網絡流量和獲取信息包。信息包探測器一般可以嗅探到所有的信息包或是包含某一特征的信息包(TCP端口,或是特定IP地址)。絕大多數的信息包嗅探器也是協議分析器,也就是說它們可以重新配置來自于各個信息包的流量,然后解密使用各種各樣協議的通訊。
■ 端口掃描器 端口掃描器遠程掃描系統中開放的端口。以此幫助黑客找到潛在的攻擊目標。
■ 漏洞掃描器 漏洞掃描器用來尋找本地或是遠程系統上的漏洞。以此幫助黑客成功對系統發動攻擊。
■ 密碼破解器 使用密碼破解器破解操作系統和應用程序密碼。絕大多數的破解工具都嘗試猜測密碼或是試遍可能的密碼。找出加密密碼的時間長短不一,取決于加密手段或是密碼本身的復雜程度。
■ 遠程登錄程序 攻擊者常常使用SSH( Secure Shell安全外殼)和telnet(用于遠程聯接服務的標準協議或者實現此協議的軟件)遠程登錄其它系統。攻擊者可以利用這些程序實現很多目的,譬如控制受到威脅的系統,在系統之間傳輸數據。
■ 攻擊 攻擊者常常使用各種各樣的工具或是腳本對本地或是遠程系統進行攻擊。攻擊者想要達到各種各樣的目的,包括危害系統或是發動DoS攻擊。
實際上,攻擊者工具包中的攻擊工具作用兩面的,關鍵是使用它們的人。譬如,信息包嗅探器和協議分析器經常為網絡管理員所用尋找網絡通訊問題,也可以為攻擊者所用竊聽私人通訊。上網管理人員可以利用密碼破解器測試系統密碼的強度。還有些工具內置到操作系統中作為診斷或是管理工具。因此,上述工具的出現并不一定意味著風險的發生。
2.8 非惡意軟件威脅
主要討論兩種形式的與惡意軟件相關的非惡意軟件風險。第一是網絡釣魚;第二是病毒欺騙#p#副標題#e#
2.8.1 網絡釣魚
網絡釣魚指的是利用欺騙性的基于計算機的方式引誘個人透露敏感的個人信息。為了執行網絡釣魚攻擊,攻擊者首先需要建立一個與知名企業類似的網站或是假冒知名企業的郵件,譬如網上購物網站,信用卡發行機關或是金融機構。這些假冒的網站和郵件就是為了欺騙用戶透露個人數據,特別是金融信息。譬如,網絡釣魚者搜尋網上銀行的用戶名和密碼,還有銀行賬號。
網絡釣魚助長了很多犯罪行為,包括身份盜取和欺騙。在用戶系統上安裝惡意軟件。常見的安裝惡意軟件的網絡釣魚包括假冒的廣告促銷和網絡上的彈出窗口。用戶一不小心點擊了這些東西的話,估計鍵盤記錄器就已經安裝的到系統了。這些都會令用戶受傷。
2.8.2 病毒欺騙
正如其字面意思所指,病毒欺騙就是錯誤的病毒警告。這些錯誤的病毒一般被描述成破壞性極大,并且需要馬上采取保護措施。大多數使用電子郵件發送的病毒警報都是騙人的。病毒欺騙影響時間時間長,因為收到郵件的用戶都會轉發給別人提高警惕。盡管病毒欺騙很少造成破壞,但是有一些病毒欺騙知道用戶修改操作系統設置或是刪除正常文件導致安全和操作問題。病毒欺騙還會消耗企業的精力,因為很多員工收到這類郵件之后會向技術部門報告,尋求技術支持或是提醒他們。很出名的病毒欺騙是Good Times(好日子)
2.9 總結
惡意軟件已然成為絕大多數系統最大的外部威脅,給企業和個人帶來了巨大的損失。要小心防范。在第三部分中,我們將詳細介紹。
三.惡意軟件事件防范
惡意軟件防范的四個組成部分是政策,警惕性,漏洞處置和威脅處理。確保處置風險的政策是執行防范控制的基礎。建立和管理用戶對于惡意軟件的警惕計劃,對于那些直接與惡意軟件打交道的IT人員加強警惕性培訓,這些都是減少人為失誤的重要因素。在漏洞處置上花費時間是減少攻擊的重要因素。部署威脅處置技術和工具,譬如說殺毒軟件和防火墻,能夠成功地阻止對系統和網絡的攻擊。
一旦規劃了惡意軟件防范方法,企業就應該做到對當前和將來一段時間的攻擊因素做到心中有數。他們應該知道系統的控制性能,因為這與防范方法的有效性有很大的相關性。除此之外,企業還應該組合當前的防范措施,譬如殺毒軟件部署和補丁管理,融入到惡意軟件的防范措施中。盡管如此,企業應該意識到,不管在惡意軟件的防范上付出多少努力,最終還是會發生狀況。正所謂百密終有一疏。
3.1 安全政策
企業需要有相應的政策防范惡意軟件事件。這些政策應該作為額外的惡意軟件防范措施的基礎(警惕性,漏洞處置和風險處置)。如果企業不能在安全政策中清晰地表述惡意軟件防范需要考慮的事項,那么要想實現惡意軟件防范的連貫性和有效性就是空談。惡意軟件防范相關的政策要有較大的靈活性以便減少修改的必要,但是同時在關鍵措施上也要足夠詳細。盡管一些企業有單獨的惡意軟件相關的政策,但是很多是包含在其它措施之中的,因此現行的安全政策有些可以借用相關的內容。惡意軟件防范也要把遠程工作地員工納入到考慮范圍。
一般的惡意軟件防范政策考慮的因素包括如下幾個方面:
■ 郵件附件包括壓縮文件在打開之前進行殺毒掃描
■ 禁止使用電子郵件收發某些文
■ 禁止使用不必要的軟件,譬如說那些經常傳播惡意軟件的應用程序(即時通訊軟件,桌面搜索引擎,點對點的文件共享軟件),禁止使用公司已經提供的服務之外的相似軟件,譬如說電子郵件功能。
■ 限制用戶的管理員權限,這樣防止用戶通過使用管理員權限傳播惡意軟件
■ 操作系統和應用程序的實時更新和下載補丁
■ 限制移動媒介的使用,軟盤,CD,USB接口閃存的使用
■ 對癥下藥。不同的系統(文件服務器,電子油價服務器,代理服務器,主機,PDA)使用不同的防范軟件(殺毒軟件,間諜軟件檢測和移除工具)。保證軟件的實時更新。
■ 使用企業允許的和安全機制訪問外部網絡
■ 防火墻設置的修改需要通過正式的程序
■ 限制移動設備在信任網絡上的使用
3.2 警惕性
一個行之有效的警惕性計劃規定了用戶使用企業IT系統和信息的行為規范。相應地,警惕性計劃應該包括對惡意軟件事件防范的指導,這可以減少惡意軟件事件的頻度和危害性。企業中的所有用戶都應該知曉惡意軟件入侵,感染,和在系統中傳播的渠道;惡意軟件造成的風險;惡意軟件按防范技術的短板;用戶在惡意軟件防范中的重要性。警惕性教育要考慮不同系統環境的不同特征,譬如說那些出差的員工。除此之外,警惕性教育計劃還應該滲透上面討論的安全政策中的一些政策。以下列舉數例考慮的因素:
■ 不要隨意下載可疑的郵件附件
■ 不要點擊可疑的網站漂浮圖表
■ 不要點擊可能包含惡意內容的網站連接
■ 不要要打開.bat,.com,.exe,.pif,.vbs,等后綴名的文件,因為它們常常與惡意軟件相關
■ 不要禁止附加的安全控制機制
■ 不要在例行的系統操作中使用管理員賬號
■ 不要下載或執行來自于非信任網站上的程序
總之,企業應該保證用戶了解惡意軟件處理的政策和程序,包括怎么樣確認系統已被感染,怎么樣報告可疑的感染,用戶在風險處理中可以做些什么(升級殺毒軟件,掃描系統中的惡意軟件)。用戶應該知道在發生風險之后怎么樣通過可信任的渠道報告。用戶還要知道一些簡單的處置風險方法,譬如斷開受感染系統的網絡,阻止某些郵件附件
作為警惕性教育的一部分,企業要教育用戶明了犯罪分子常用的欺騙伎倆。還有一些常用的應對網絡釣魚攻擊的建議:
■ 不要回復詢問金融信息和個人信息的郵件。企業最好也不要使用電子郵件詢問這些信息,因為電子郵件很可能會被未經授權的第三方監視。你可以電詢企業的電話或是訪問其官方網站。千萬不要使用電子郵件中提供的聯系信息。
■ 不要在電子郵件中回復密碼,PIN(個人身份號碼)碼或是其他代碼。一定要訪問企業的官方網站。
■ 不要打開可疑的電子郵件附件。如果收到這樣的附件,與發件人聯系確認。
■ 不要回復任何可疑的郵件。直接將其移到黑名單中。
盡管用戶警惕性教育會減少惡意軟件事件發生的頻度和危害性,但是其作用與漏洞的技術控制和風險處置相比還是很小的。企業不能僅僅借此來防范惡意軟件,它只能作為技術手段的一種補充。
不管怎么說,企業IT人員都應該對惡意軟件防范有一些基本的常識,對其它員工的教育應該讓他們知道其責任以及在惡意軟件按防范中做些什么。除此之外,企業IT管理人員需要檢查新的安全威脅,評估可能造成的風險,采取防范措施。
3.3 漏洞處置
一般來說,惡意軟件攻擊操作系統,服務和應用程序的套路就是利用其漏洞。于是乎,漏洞的處理就成為了惡意軟件事故防范中關鍵的一環,特別是新的漏洞發現之后的惡意軟件,甚至在漏洞廣為人知之前就發生了惡意軟件事故。通過采取綜合的防控措施可以有效地處理漏洞,譬如說,升級軟件按,或是重新配置軟件(禁止有漏洞的服務等等)。
由于當前漏洞處置面臨的一些挑戰,包括處理不斷發現的新漏洞,企業應該有記錄在案的處理風險的政策,流程,以及建立新的漏洞管理程序。還有需要不斷評估漏洞以便確定風險處理的優先順序。企業要通過各種渠道搜集關于新的漏洞和主要惡意軟件的信息,譬如說事故響應小組,安全廠商的公告,以及殺毒軟件廠商的惡意軟件咨詢。企業還需要建立評估新的漏洞和威脅的機制,藉此確定恰當的處置方法,把信息分布到不同的部門。企業還需要跟蹤風險處置的進程。
企業在風險處置中應該使用多層放防御策略,因為單一的防范措施很難應對絕大多數的漏洞。后面我們將詳細討論三種常用的漏洞處置辦法——漏洞管理,最少權限和其它的主機加強方法。除了漏洞處置之外,企業還需要執行威脅處置行動,主要是防止惡意軟件有利用漏洞的可能性。殺毒軟件等一些安全工具在惡意軟件未達到目標之前除之。威脅處置對于不利用漏洞的惡意軟件事件處置很重要,譬如說引誘用戶運行惡意文件。威脅處置對于企業在面臨新的安全威脅的情形下也是很重要的,而企業卻沒有可行的漏洞處置方案。譬如說,對于新的漏洞還沒有補丁出現。以下我們將詳解:
3.3.1 補丁管理
對于處理操作系統和應用程序中已知漏洞的最常見的方法就是系統。一般說來,補丁包括以下幾步,評估補丁的緊急性,測試補丁,在小范圍之內實驗補丁,記錄補丁評估和決策過程。現在來說,對于補丁時效性的要求是一大挑戰——目前從漏洞的發布到出現漏洞攻擊軟件的時間已從數月減少到數星期,甚至是一天。由于補丁的測試通常需要花費數周的時間,這就意味著不可能馬上就大范圍部署補丁。在有些情況下,使用其它的漏洞處置或是威脅處理技術比使用補丁更加安全。除此之外,即使補丁經過測試完全可行,我們也不敢保證所有的計算機安裝了補丁,特別是遠程系統上。盡管如此,使用補丁依然是減少惡意軟件風險最有效的方法。惡意軟件事件頻發的一個原因就是沒有及時安裝補丁。補丁管理也是事故處置的關鍵。
3.3.2 最少權限
最少權限的準則就是按需分配,各取所需。管理權限的分配應該視需要而定。為什么說最少權限在防止惡意軟件事件中很有效呢? 因為惡意軟件常常需要管理員權限成功地利用漏洞。一旦惡意軟件事件真的發生,先前的擁有最少權限的程序造成的損失也是最少的。最少權限管理可以在服務器,網絡設備,以及用戶的臺式機和筆記本上使用。但是,最少權限會消耗掉大量系統資源;譬如說,用戶在未經管理員允許的情況下,能安裝操作系統升級。
3.3.3 其它主機加強措施
除了使用補丁和最少權限原則之外,企業還需要使用其他一些主機加強措施減少惡意軟件事件發生的可能性。
■ 禁止或是移除可能導致漏洞的不需要的網絡服務
■ 減少不安全的文件共享,文件共享很容易導致蠕蟲的傳播
■ 刪除或是更山操作系統等默認的用戶名和密碼,惡意軟件可以借此獲得未經授權的訪問
■ 訪問網絡需要獲得授權
■ 禁止腳本自動運行
企業還要考慮使用操作系統和程序配置指導幫助管理員持久和有效地保護主機的安全。配置指導一般包括推薦配置提高默認安全層級。或是手把手教你保護系統安全的指導。企業需要有規律地進行風險評估找出系統中未處置的安全風險,然后加以處理。即使系統上所有的已知漏洞都得到了處理,周期性的風險處理仍然是必要的,因為在平時的不恰當的系統管理和操作活動中會破壞一些安全措施。譬如說,在安裝補丁的時候,可能會一不小心刪掉其他補丁或是更改安全設置。
3.4威脅處置
我們主要討論幾種常見的處置惡意軟件風險的安全工具:殺毒軟件,間諜軟件探測和刪除工具,入侵防御系統(IPS),防火墻和路由器。對于每一種軟件,我們會介紹其典型功能,針對的惡意軟件,檢測和處理惡意軟件的方法。以及關于這些軟件的推薦,指導,軟件的缺點。
3.4.1 殺毒軟件
殺毒軟件是最常見的對付惡意軟件的方法。對于經常被惡意軟件光顧的系統來說,殺毒軟件顯然是必備的。殺毒軟件有很多種,大多數的殺毒軟件都提供以下功能:
■ 掃描關鍵系統區域,諸如啟動文件和啟動記錄
■ 實時監視系統活動檢查可疑行為,典型的就是掃描電子郵件附件中的已知病毒,殺毒軟件實時掃描文件的下載,打開和執行,這被稱作“訪問時掃描”。
■ 監控常見程序行為,譬如說電子郵件客戶端,瀏覽器,文件傳輸程序,即時通訊軟件。殺毒軟件還會監視那些可能被利用的高風險軟件。
■ 掃描文件中的已知病毒。殺毒軟件周期性地掃描硬盤尋找被感染的文件。必要的情況下還可以人工掃描,這被稱作“定制掃描”。
■ 確認常見的惡意軟件—病毒,蠕蟲,木馬,惡意的移動代碼和混合攻擊,以及鍵盤記錄器和后門程序等黑客工具包。絕大多數的殺毒軟件都新增了檢測間諜軟件的功能。
■ 防止文件的感染,指的是在一個文件夾中刪除惡意軟件,或是隔離惡意軟件。隔離感染文件是常用的方法,但是有一些感染的文件不能被隔離。這時候,就只能直接刪除感染文件了
以下從3.4.1.1到3.4.1.4主要介紹殺毒軟件配置,管理等方面的一些內容,以及殺毒軟件的缺陷。
3.4.1.1 殺毒軟件檢測的準確性
殺毒軟件主要是依據已知的惡意軟件特征尋找惡意軟件。這些特征叫做特征庫。對于尋找已知的惡意軟件和確認已知病毒變體,特征庫非常有效的。主要的殺毒軟件廠商一般都會在數小時之內分析新的病毒的特征,然后編寫特征,測試,最后發布病毒特征。
由于特征庫依據的是已知的威脅,對于全新的惡意軟件很難確認。為了解決這一問題,殺毒軟件廠商使用了啟發式殺毒技術,這種技術就是通過檢查大量文件特征尋找惡意軟件活動。常見的啟發式殺毒技術包括,尋找文件中的可疑代碼順序和或是模擬文件行為尋找異常現象(譬如,在虛擬環境中執行文件,然后監視其行為)。不幸的是,啟發式殺毒經常誤判,這叫做“假陽性”。由于假陽性會給企業帶來很大的不便,所以絕大多數的殺毒軟件產品將啟發式殺毒設為中等或是低。采用這種方式確實減少了假陽性的發生,但同時也增加了忽略惡意軟件的可能性。這被稱作“假陰性”。不管使用什么樣的啟發式殺毒技術,殺毒軟件探測新威脅的準確率不可能太高,但是病毒庫實時升級后,檢測已知惡意軟件的成功率還是很高的。所以,殺毒軟件應該升級到最新的病毒庫以便提高準確率。
3.4.1.2 殺毒軟件配置和管理
鑒于殺毒軟件對于惡意軟件防范的重要性,權威機構強烈建議所有的系統上都要使用殺毒軟件。在安裝操作系統之后,應該立馬配置殺毒軟件并且升級到最新的病毒庫。然后使用殺毒軟件掃描系統找出潛在的威脅。為了保證系統的持續安全,應該管理好殺毒軟件以便持續有效地檢測和阻止惡意軟件。
在一個管理良好的環境中,企業應該使用中央管理殺毒軟件。一般來說,在這種環境下,個人不允許阻止和刪除殺毒軟件,也不允許更改關鍵設置。殺毒軟件管理員要定期檢查殺毒軟件,確保用戶使用殺毒軟件以及其更新。這些信息也可以從中央管理殺毒軟件上獲取,企業可以使用系統掃描,網絡登錄時的系統檢測,和其它方法搜集信息。執行上述建議有助于企業建立一個部署完善,行之有效的殺毒軟件。
在一個管理不夠嚴密的網絡環境中,特別是在那些用戶擁有個人系統管理權限的企業中,殺毒軟件的管理就不那么連貫了。當面臨這種情況的時候,企業就需要逐漸向管理嚴格的網路環境中轉變。特別是要加強警惕性教育。企業要定期發送信息提醒本地系統管理員和用戶升級病毒庫;提醒用戶升級軟件的重要性;發布升級系統指導書;出現新的威脅時,提醒本地系統管理人員升級殺毒軟件;企業要鼓勵系統管理員和員工經常升級病毒庫,下載更新
使用中央管理殺毒軟件的企業應該確保其執行有充分的冗余滿足峰值。譬如說,企業應該有多臺殺毒軟件服務器管理殺毒軟件客戶端軟件和分布更新。如果可能的話,使用多臺無關的操作系統平臺為殺毒軟件服務,以此來減少單一攻擊針對殺毒軟件服務器造成的全局性傷害。企業使用的殺毒軟件操作系統平臺與其他服務器操作平臺最好是不一樣。如果某個漏洞影響了絕大多數的服務器,以及殺毒軟件服務器,那么很可能導致殺毒軟件服務器的崩盤。
另外一個加強惡意軟件防范的方法就是在關鍵系統,譬如電子郵件服務器上,使用多種殺毒軟件產品。例如,有的殺毒軟件廠商發布病毒庫的時間比其它廠商早;還有一種可能性就是如果使用的一款殺毒軟件產品本身有漏洞的話,替代的殺毒軟件可以繼續提供有效的保護。由于在同一系統中同時使用多款殺毒軟件,可能會導致產品之間的沖突,要想同時使用多款產品,它們應該安裝在不同的系統中。譬如說,殺毒軟件可以在內外兩個郵件服務器上使用。這樣可以更加有效地探測新的威脅,但是同時也會增加培訓管理費,以及額外的軟硬件花費。
3.4.1.3 殺毒軟件的缺陷
盡管殺毒軟件是防范惡意軟件必須的工具,但是這并不意味著殺毒軟件可以防止所有的惡意軟件。正如前面所討論的那樣,殺毒軟件在查殺未知惡意軟件的表現不盡人意。一旦發現新的威脅,就應該馬山有相應的病毒庫。然而,安全廠商需要時間獲取,測試和發布病毒庫。病毒特征的測試很重要,因為病毒特征可能會導致殺毒軟件或是操作系統的沖突,或是其它系統和程序之間的沖突。即使是在最好的情況下,從威脅的確認到新的病毒庫的發布也需要數小時的時間,這段時間正是病毒發動攻擊的窗口時間。此外,病毒庫的發布也需要大量的時間;殺毒軟件服務器和網絡不可能同時處理所有的升級請求。那些沒有聯網的系統不能升級,很可能淪為攻擊的對象(使用移動媒介傳播的惡意軟件)。
殺毒軟件的另外一個挑戰就是惡意軟件傳播渠道很多,包括各種各樣的網絡協議的服務(電子郵件,文件傳輸,點對點文件共享,網頁瀏覽,聊天室和即時通訊軟件),還有移動媒介(CD,軟盤和閃存)。企業需要使用基于主機和基于網絡的殺毒軟件掃描(從防火墻和電子郵件服務器),這樣的話就可以發現那些試圖通過防火墻和防火墻之后的主機發動的攻擊。但是,現行的殺毒軟件很難監視企業中所有系統的傳輸機制。譬如說,殺毒軟件可能不能分析有新的網絡協議,應用程序參與的活動。企業還要關注控制之外的系統訪問網絡,譬如說,員工在家里使用撥號連接或是VPN(虛擬個人網絡)訪問網絡或是合作伙伴訪問網絡。這些外部系統可能已經感染了惡意軟件,并且惡意軟件很可能借此網絡傳播。
3.4.2 間諜軟件檢測和刪除功能
間諜軟件檢測和刪除功能主要是用來檢測系統上的各種間諜軟件,然后隔離或是刪除間諜軟件文件。與殺毒軟件確認惡意軟件不同的是,間諜軟件按檢測和刪除功能專門針對各種間諜軟件。現在,這種軟件在應對間諜軟件方面比殺毒軟件做的好多了。防止間諜軟件很重要,不僅僅是因為間諜軟件侵犯了用戶的隱私,還因為它經常導致系統功能上的問題,譬如降低系統性能,導致程序的不穩定。盡管有一些間諜軟件探測和刪除軟件只專門針對一種惡意軟件,譬如說惡意的瀏覽器插件,但是絕大多數的還是能夠應對很多間諜軟件的,譬如說:
■ 監視很有可能被間諜軟件替代的應用程序的活動,譬如說瀏覽器和電子郵件服務器
■ 定時掃描文件,內存和配置文件尋找間諜軟件
■ 確認幾種形式的間諜軟件,包括惡意的移動代碼,木馬和跟蹤cookies
■ 隔離和刪除間諜軟件文件
■ 監視網絡驅動器和Windows設置
■ 監視開機自動運行的的程序
■ 阻止間諜軟件常用的安裝伎倆,譬如,彈出窗口,跟蹤cookies,瀏覽器插件安裝和瀏覽器劫持
為了處理間諜軟件風險,企業應該使用間諜軟件探測和刪除軟件或是帶有這一功能的殺毒軟件。所有的系統上都需要使用這些軟件。
典型的間諜軟件探測和刪除軟件依賴于間諜軟件病毒庫,這和殺毒軟件類似。這些工具在辨別已知威脅及其變體上很有效,但是在確認未知威脅上的能力有些失望。由于間諜軟件探測和刪除軟件依賴于病毒庫,間諜軟件就需要及時地升級到最新的病毒庫。所以這種軟件應該配合殺毒軟件的使用,雙劍合壁,方能戰無不勝。企業也需要使用多種間諜軟件探測和刪除軟件提高應對間諜軟件安全風險的能力。
間諜軟件探測和刪除軟件最近才開始提供中央管理和監視功能。還有一些軟件不能提供自動升級,而需要用戶手動升級。因此,如果企業選用間諜軟件探測和刪除軟件的時候,要知道其是如何分布,配置和管理的,以及如何監視惡意軟件的發生。由于間諜軟件探測和刪除軟件有很多相似的特征,企業應該同等重視這兩款產品。
3.4.3 入侵防御系統(IPS)
IPS使用信息包嗅探工具和網絡流量分析確認和制止可疑行為。基于網絡的IPS產品是部署在內線的(inline),也就是類似網絡防火墻的功能。IPS接受信息包進行分析,確定那些是允許的,然后放行這些信息包。基于網絡的IPS可以防禍亂于未萌。絕大多數的基于網絡的IPS使用多種方式分析網絡,應用程序協議,也就是說它們通過尋找預期的攻擊行為確認潛在的惡意活動。
基于網絡的IPS產品被用來檢測除了惡意軟件之外的惡意行為,一般只能探測幾種默認的惡意軟件,譬如最近的主要蠕蟲病毒。盡管如此,一些IPS產品個性化程度很高,這樣就允許管理員在短時間之內自己添加和部署病毒庫。盡管這樣做存在一定的風險,譬如說粗制亂造的病毒庫特征編寫可能會導致假陽性,但是自己編寫的病毒庫特征會在廠商發布病毒特征的數小時之前阻止新的攻擊。基于網絡的IPS產品在阻止已知威脅上很有效,譬如網絡蠕蟲,電子郵件攜帶蠕蟲,和特征明顯的病毒。雖然其功能強大,但是卻無法阻止惡意的移動代碼或木馬。基于網絡的IPS可以通過應用程序協議分析檢測和阻止未知的網絡威脅。
有一種特制的基于網絡的IPS叫做DDoS攻擊處理軟件,它是利用異常網絡流量的確認阻止攻擊。盡管這種產品最早是為了阻止針對企業的DDoS攻擊,但是也可以用來也可以用來確認蠕蟲活動和其它形式的惡意軟件。DDoS攻擊處理軟件一般通過監視正常的網絡流量工作,包括通訊協議,峰流量,等建立基線。如果惡意軟件導致了異常的網絡流量或是使用網絡或是非正常的應用程序協議,DDoS攻擊處理軟件要能夠處理這些活動。另外一個限制惡意軟件事件的方法就是配置網絡設備限制帶寬的最大數量。另外,一些網絡流量監控軟件可以探測到異常的網絡行為。
基于主機的IPS產品與基于網絡的IPS在原則和目的上是相似的,除了基于主機的IPS產品監視的是單一主機的特征和發生在主機之內的事件。基于主機的IPS監視的活動包括網絡流量,系統日志,運行的程序,文件訪問和改變,協調和應用程序配置的更改。基于主機的IPS產品一般使用多種方式確認系統上的已知和未知攻擊。譬如。基于主機的IPS產品可以監視試圖修改文件的行為,以此探測感染文件的病毒和嘗試替代文件的木馬。一旦基于主機的IPS產品監視了主機的網絡流量,就會提供與基于網絡的IPS類似的探測能力。
與殺毒軟件和間諜軟件探測刪除軟件類似的是,基于網絡和基于主機的IPS產品可能會導致假陽性和假陰性。IPS可以提供調試功能,借此可以提高探測的準確性;這種調試的有效性視產品和環境而定。由于假陽性可能會導致正常系統活動的停滯,企業要考慮到這點,采取有效措施防止假陽性的發生。絕大多數的IPS產品都可以自行設置病毒庫限制。還有一些企業使用默認設置禁止了絕大多數的限制,只有在面對新的主要風險的時候才會啟動。
對于惡意軟件的防范來說,基于主機的IPS軟件可以提高企業在面臨未知風險時的安全系數。如果企業將IPS設置為高安全等級的話,在很大程度上就可以阻止殺毒軟件查殺不出的惡意軟件。IPS軟件在應對網絡服務威脅上相比殺毒軟件具有很大的優勢。
對于那些產生巨大流量的惡意軟件來說,譬如說網絡服務病毒,部署在網絡中的基于主機的IPS產品有效減輕惡意軟件造成的網絡負擔。同時使用殺毒軟件和IPS不僅可以從整體上提高惡意軟件事件的防范能力,還可以減輕這兩種技術在應對惡意軟件時的壓力。在一次嚴重的安全事件中,單一的殺毒軟件可能會由于惡意軟件過多導致過載;使用多種控制方法可以減輕負擔。
3.4.4 防火墻和路由器
基于網絡的設備,譬如說防火墻和路由器,還有基于主機的防火墻,可以檢查網絡流量,并且根據一套規則禁止或是允許這些流量。典型的路由器使用一套名為訪問控制清單(ACL)的簡單規則,主要是針對最基本的網絡流量,而防火墻提供更多的選項。現在有兩種防火墻:網絡防火墻和基于主機的防火墻。網絡防火墻是指部署在網絡中限制網絡之間流量流通的設備。基于主機的防火墻是部署在單一主機中限制訪問主機的入流和出流的軟件。這兩種防火墻在限制惡意軟件上都是很有效的。3.4.4.1和3.4.4.2中將介紹防火強,3.4.4.3會簡要介紹路由器。
3.4.4.1 網絡防火墻
一般說來,企業會在網絡中部署多種網絡防火墻保護網絡免于外部攻擊。網絡防火墻會把網絡流量和現行的規則比較,每一個規則對應一種網絡協議,以及通訊的來源和終點。譬如說,有一條規則會允許外部郵件到達企業的電子郵件服務器。相應地,網絡服務器在阻止針對特定端口的網絡服務蠕蟲上表現不錯,特別是端口使用范圍不廣的時候。由于網絡防火墻既可以限制出流和入流,所以可以阻止蠕蟲向外的傳播。
為了防止惡意軟件事件,企業要使用 默認阻止 設置,也就是說防火墻阻止所有未經允許的出流和入流。如果使用了這一設置,惡意軟件就不能使用被認為是不必要的程序傳播了。為了減少惡意軟件的傳播,企業必須嚴格限制外部系統(電訊系統,合作伙伴系統)發送過來的各種流量。企業要確保網絡防火墻可以執行出流量和入流量過濾。入流過濾(ingress filtering)就是限制不適當的入流信息包,譬如說來自于錯誤IP地址的信息;出流過濾(egress filtering)限制所有不應該存在于系統中的出流信息包。蠕蟲在傳播的時候會隨機產生IP地址,所以限制帶有錯誤IP地址的信息包可以有效防止蠕蟲進入內網。還有一點需要切記,實時檢查安全規則,調整其設置。
網絡防火墻本身并不尋找網絡通訊中的攻擊;但是,防火墻中使用額外的軟件可以實現。譬如說,許多防火墻使用入侵防范或是殺毒軟件尋找網絡通訊中的攻擊,電子郵件或是網站流量。還有一些防火墻具有代理功能,代理收到來自客戶機的請求,然后代表客戶機程序向目標站點發出請求。一旦使用代理,每一次成功的連接實際上是有兩次不同的連接:首先是客戶機和防火墻之間,然后是防火墻和目標站點之間。一些代理可以執行基本的分析和網絡協議的確認,譬如HTTP(超文本傳輸協議),或是拒絕不確定的訪問請求,因為這可能包括惡意軟件。這些代理被稱作應用程序層級防火墻。
網絡防火墻在網絡地址轉換(NAT)中使用廣泛,NAT是將一個網絡地址映射到另外一個網絡的過程。NAT主要是將內網中的私人地址映射到聯網的網絡中的地址中。一旦私人地址通過NAT被映射到公網中,外部主機就不能直接訪問內部主機,因為私人地址不是通過因特網路由的。這中方式可以有效阻止網絡服務蠕蟲。
一旦發生針對網絡服務的新的惡意軟件攻擊,企業需要使用防火墻阻止它,尤其是殺毒軟件和入侵檢測不能監視目標服務的時候。為了防范最壞的情況,企業要隨時準備更改防火墻規則防止惡意軟件事件的發生。防火墻規則在阻止使用IP地址的惡意軟件也很有幫助,譬如說,從外部主機上下載木馬的蠕蟲,這時,只要添加規則限制上述主機的IP地址,就可以阻止木馬的下載。
3.4.4.2 基于主機的防火墻
基于主機的防火墻可以有效限制單一主機上的出流和入流,這樣既可以防止主機的感染,也可以防止其傳播惡意軟件。服務器專用的基于主機的防火墻使用與網絡防火墻類似的安全規則。臺式機和筆記本上使用的防火墻也使用相似的規則,但是絕大多數都是根據應用程序清單允許或是限制網絡活動。為了防范惡意軟件,企業可以把防火墻上設置默認阻止入流量。如果可行的加,企業也可以默認阻止出流量。但是,這些規則對于系統可用性和用戶滿意度有嚴重的負面影響。
除了根據規則限制網絡活動之外,在基于主機的防火墻中可以集成殺毒軟件和入侵檢測功能,還有限制瀏覽器彈出窗口,限制移動代碼,禁止cookies,防止網頁和郵件中的潛在隱私問題。集成了這些功能的防火墻不僅在阻止惡意軟件上很有效,也會限制惡意軟件感染的傳播。譬如說,如果防火墻集成了殺毒軟件功能就可以監視收發郵件上的海量郵件攻擊病毒,如果發現這些活動就可以臨時阻斷郵件服務。基于主機的防火墻對于未受網絡防火墻保護的聯網的系統來說相當重要。如果是直接訪問網絡的話,最好有基于主機的防火墻保護系統。
3.4.4.3 路由器
一般的防火墻使用多種方式限制入流量和出流量,路由器使用的是更加寬泛的規則。一個企業常常使用多臺路由器聯網,這些叫做 網絡邊界路由器。這些路由器一般位于企業的主要防火墻前端,檢查一些基本的網絡活動,譬如說入流和出流過濾。
在一個重大的蠕蟲病毒事件中,企業需要重新配置路由器限制入流病毒活動,減輕防火墻的負擔。內網上的路由器也需要重新配置限制網絡中的某些服務;這可以一個網絡中感染的主機傳播病毒。一旦需要的時候,去企業要及時更改路由器ACL。
3.4.5 應用程序設置
許多惡意軟件利用了常見的應用程序,譬如說電子郵件客戶端,瀏覽器和word處理器。這些程序的默認設置中,功能性超過安全性。相應地,企業需要考慮阻止不需要的功能,尤其是那些可能被惡意軟件使用的功能。以下提供一些建議:
■ 限制可疑的電子郵件附件。很多企業的郵件服務限制附件下載或是直接阻止帶有附件的郵件。這些后綴名的文件很可能被禁止,.txt.vbs, .htm.exe等等。但是在阻斷惡意郵件的同時,也阻止了正常的郵件。有些企業直接替換可疑郵件附件的后綴名,在保存和運行之前先重命名。
■ 過濾垃圾郵件。垃圾郵件常常用來傳播網絡釣魚和間諜軟件,有時也包括其它惡意軟件。使用垃圾郵件過濾器可以有效減少垃圾郵件,也就直接減少了由于垃圾郵件導致的事故。
■ 過濾網站內容。盡管網站內容過濾軟件是為了限制不恰當地內容進入工作場所,也可以包括網絡釣魚站點和其它惡意站點清單。還可以限制一些使用危險后綴名的文件。
■ 限制移動代碼執行。瀏覽器和電子郵件客戶端可以配置只允許某種移動代碼(譬如,Java腳本,ActiveX等)和只能執行特定地點的移動代碼(譬如,內網站點)。這樣可以有效防止惡意代碼,但也會限制合法網站的功能。#p#副標題#e#
■ 限制瀏覽器cookies。絕大多數的瀏覽器允許用戶自行設置接受或是禁止cookie。絕大多數的瀏覽器允許用戶自行設置訪問站點的cookie。
■ 限制瀏覽器彈出窗口。有一些彈出的窗口看起來是合法的站點,實際上卻是一些欺騙性站點,譬如說網絡釣魚,修改系統設置
■ 限制瀏覽器安裝軟件。有一些瀏覽器允許用戶安裝瀏覽器插件等軟件。還有一些甚至限制從網站上安裝任意軟件到客戶端。這些對于防范惡意軟件安裝到瀏覽器上很有效。
■ 防止電子郵件照片自動下載。絕大多數的電子郵件客戶端禁止自動下載圖片。這對于防范基于電子郵件的網絡漏洞是很有用的。
■ 改變文件相關性。在許多操作系統中,打開不同的文件要使用不同的程序,譬如說打開.txt文檔使用文本編輯器。一旦用戶打開某一文件的時候,操作系統就會打開默認的應用程序。盡管這對用戶來說是很方便,但是惡意軟件也可以因此而受益;譬如說,用戶在打開郵件附件的時候,操作系統就會自動運行打開附件。有一些企業替代了常用的惡意軟件利用的文件類型,這樣用戶在打開這些文件的時候也不會自動運行了。
■ 限制宏使用。在word和電子表格等應用程序中經常包含有宏語言。宏病毒正式利用了這點。現在絕大多數也能夠有宏功能的軟件都會提供宏安全措施,只有來自于信任站點的宏文檔才能運行。
■ 禁止電子郵件的開放傳播 海量郵件病毒把企業的電子郵件服務器作為開放傳遞棒(open relays),也就是是說發件人和收件人都不是企業的一部分。提供開放傳遞棒的電子郵件服務器可能會讓海量郵件病毒輕輕松松得逞。
盡管這些程序設置在減少惡意軟件頻度上很有效,但是選擇合適的設置常常需要很大的努力。在多數情況下,配置安全性的提高就意味著功能性的下降。譬如說,禁止瀏覽器上的Java支持功能會阻止企業基于Java腳本運行的應用程序運行。所以企業需要在安全性和功能性之間尋找到平衡點。企業要考慮到應用程序的多樣性,譬如說,客戶端系統可能有安裝了多個瀏覽器版本,每一個又有不同的功能和配置設置。
在絕大多數的企業中,執行和管理服務器上的應用程序設置相對簡單;但是要在客戶端做同樣的事情就很難了。在一個管理高度完善的環境中,集中管理應用程序設置是可行的,但是在絕大多數的環境中并不可行。企業可以在新系統中執行選項設置,但是不能確保這些設置隨著安全和功能的變化而變化。企業應該考慮到如何保證應用程序客戶端的執行,管理,和檢查的有效。然而,在一個管理不夠嚴格的網絡環境中,企業就只能依賴于警惕性教育和用戶的自覺性了。
實際上,許多更改客戶端程序配置的好處通過使用基于主機的防火墻也可以實現。前面3.4.4.2已經討論過。但是,基于主機的防火墻并不能執行所有的程序設置,所以最有效的辦法是二者結合使用。
快速改變應用程序設置對于制止新的威脅非常有效。譬如,如果現在出現了一種基于電子郵件的威脅,殺毒軟件對此無能為力。在這種情況下,企業就可以直接更改郵件服務器和客戶端設置刪除所有帶有新病毒特征的郵件。企業也需要提前考慮在出現哪些緊急事件的情況下更改設置。
3.5總結
企業應該根據攻擊因素制定自身的惡意軟件事件防范方法。選擇惡意軟件防范產品的時候要選擇最適合企業的,只買對的,不選貴的。
作為惡意軟件防范努力的基石,企業應該確保安全政策支持惡意軟件事件的防范。常見的與惡意軟件防范相關的政策有以下幾種:
■ 合理使用系統
■ 處理漏洞
■ 處理風險
與惡意軟件防范相關的政策應該考慮到企業內外的遠程工作人員。
教育員工,讓他們知道惡意軟件傳播的方式,導致的風險,技術措施的局限,用戶在防范惡意軟件中至關重要的地位。警惕性教育應該讓用戶知道惡意軟件處置的政策和流程。與惡意軟件直接打交道的管理人員也要經常進行教育。
企業還需要把漏洞處置的政策,流程等記錄在案。因為應對漏洞的方式多樣,需要使用多種方式處置漏洞,譬如說補丁管理和最少權限的同時使用。除此之外,還可以使用主機加強措施。
除了漏洞處置之外,企業需要使用風險處理探測和阻止惡意軟件。以下這些技術很有效:
■ 殺毒軟件
■ 基于網絡的IPS
■ 防火墻
■ 更改應用程序配置
四.惡意軟件事件響應
一般來說,惡意軟件事件響應包括準備活動,譬如說開發惡意軟件事件處理流程和響應小組的培訓。正如我們在第三部分中所討論的,準備階段包括使用安全政策,警惕性教育,漏洞處置,使用安全工具減少惡意軟件事件。盡管采取這些措施也不可能萬無一失。因此,惡意軟件感染的探測對于事件發生的警告是必要的。對于惡意軟件的快速探測有助于防止事態的擴大,探測速度越快,就越能減少感染系統的數量。
事件響應周期 (準備-探測和分析- 病毒抑制,刪除和恢復-后續處理)
對于每一次惡意軟件事件,企業都應該根據事件的嚴重性恰當地處理,譬如說,抑制病毒,清除感染,最后完全恢復系統。如果企業有大量的系統被感染的時候,要實施上述措施將會非常困難。事件被成功處理之后,應該把事件的起因,損失詳細記錄在案,以便企業下次在面臨這些風險的時候采取更加有效地措施。
盡管上述標準的處理惡意軟件的流程差不多,但是要應對大規模的感染還是存在一些挑戰。我們將主要討論企業大規模惡意軟件事件的處理,但是這些指導對于小規模惡意軟件的處理也很有幫助。
4.1 準備
對于企業來說,準備多套時間響應方案是應對惡意軟件事件的基礎之一,如果沒有這些方案的話,事件處理將會變得異常困難。有一些企業由于產期遭受惡意軟件,除了一般的事件響應小組之外,還有專門的事件響應小組。由于惡意軟件在短時間之內會給企業帶來很大的危害,企業制定的惡意軟件事件防范政策和規程要明確企業和個人的責任。定期的針對惡意軟件的培訓和教育有助于員工明確責任,保證安全政策的有效性和綜合性。對于大規模惡意軟件事件的演練是大有裨益的,雖然很少發生,但是一旦發生后果不堪設想。
企業還需要采取其它防范措施響應惡意軟件事件,以下4.1.1到4.1.3將推薦幾種防范措施,包括在應急小組之內構建和維持惡意軟件相關的技術,企業各個部門之間的溝通及合作,使用必要的工具和資源。
4.1.1 構建和使用殺毒軟件相關的技術
除了標準的事件響應小組技術之外,下面的一些知識在應對惡意軟件事件時也是大有裨益的:
■ 惡意軟件感染方法 所有的惡意軟件事件處理人員都需要了解主要的惡意軟件感染系統的方式的傳播的手段
■ 惡意軟件探測工具 我們在3.4中已經討論過,可以使用殺毒軟件,基于網絡和基于主機的入侵防御軟件,間諜軟件探測和刪除軟件,和其它工具都可以有效檢測惡意軟件。事件處理人員需要了解企業配置的這些工具,以便更好地分析支持數據和確認病毒特征。至少應該熟悉企業的殺毒軟件。
■ 計算機取證(computer forensic) 企業需要有一些人員精通計算機取證工具和技術。這種技術在調查特別復雜的惡意軟件時是必須的,譬如說rookit安裝。
■ 對于IT的廣博知識面 這種能力讓技術人員更好地評估惡意軟件風險,以便為抑制,刪除病毒和系統恢復提出更好的建議。
■ 編程 小組中應該要有熟練使用常見編程語言和宏語言的人員,這樣就可以幫助其它成員在短時間之內了解病毒的行為特征和危害
除了進行惡意軟件相關的培訓和演練之外(4.1),企業還要尋找其他技術。譬如說,可以讓小組成員臨時作為殺毒軟件工程師或是管理員,這樣他們就可以獲取新的技術,了解殺毒軟件工作程序。抑或是在漏洞管理小組中臨時工作,這樣可以加深他們對于系統漏洞探測和添加補丁的了解;
4.1.2 促進企業之間的溝通和合作
在處理惡意軟件時最常見的問題就是溝通不暢,信息缺乏交流。在一次事件中,我們常常會發現,由于缺乏對形勢的了解,各個部門,用戶之間產生誤解。為了解決溝通混亂和不及時的狀況,企業應該事先成立專人或是專門小組負責溝通。溝通小組的首要目標是搜集信息,作出對企業最有利的決策,將相關信息及時轉給有關部門。在惡意軟件事件中,相關的部門涵蓋了終端用戶,他們應該學會如何避免系統的感染,如何辨別感染特征,系統感染之后采取的措施。溝通小組要給員工提供關于惡意軟件防范的一些指導,及時向管理人員報告最新進展。
由于大規模的惡意軟件事件常常破壞電子郵件服務,內部網絡站點,Voip和其它通訊手段,因此企業需要有建立其它的溝通渠道保證危機處理人員,技術人員,管理層,和用戶之間暢通聯系。譬如,可以使用企業的電話系統,手機,傳呼機,電子郵件,電報和紙質文檔。即使是在正常情況下,使用不同的聯系方式聯系不同的對象也是很有效的(譬如,使用電子郵件與用戶溝通,關鍵的技術人員使用會議專線聯系)。我們將在4.3.1中討論用戶之間溝通的方式。
企業需要建立惡意軟件咨詢臺,員工可以報告惡意軟件,尋求幫助等等,用戶發現惡意軟件之后,首先需要向咨詢臺報告。
4.1.3 獲取工具和資源
企業要確保有足夠的工具(硬件和軟件)和資源處理惡意軟件。典型的工具有,信息包嗅探器,協議分析器。在3.4中我們已經討論過了惡意軟件,IPS等幾種軟件。常見的資源包括聯系名單和響應信息,常用的端口數量,已知的關鍵資產。
下面介紹惡意軟件事件處理人員常用的工具:
惡意軟件事件分析硬件和軟件
■ 筆記本,提供分析數據和嗅探數據包的移動工作站
■ 額外的工作站,服務器和網絡設備,在隔離的環境下測試惡意軟件
■ 空白的存儲媒介,譬如說軟盤,CD來存儲和傳輸惡意軟件樣本
■ 信息包嗅探器和協議分析器獲取和分析包含惡意活動的流量
惡意軟件事件分析資源
■ 端口清單,包括常用的端口和已知的木馬和后門程序
■ 操作系統,應用程序,網絡協議以及病毒庫等的文件
■ 網絡流量圖和關鍵設備清單,譬如網絡,電子郵件和FTP服務器
■ 預期網絡,系統和應用程序的基線
惡意軟件事件處置軟件
■ 媒介,操作系統根磁盤,CD,操作系統媒介和應用程序媒介
■ 安全補丁
■ 操作系統,應用程序等的磁盤圖像軟件和備份圖像
4.2探測
企業要具有快速探測惡意軟件事件的能力,因為感染會在短時間之內發生。探測越早就越能幫助企業將感染系統的數量降到最低,亦會隨之降低企業的損失和恢復系統的成本。盡管主要的惡意軟件傳播速度很快難以快速反應,但是絕大多數事件還是發生很慢。
由于惡意軟件形式和傳播方式多樣,所以惡意軟件會有很多可能的特征。有時需要花費大量的時間分析,使用專業只是和經驗確定事件是由惡意軟件導致,特別是惡意軟件風險剛出現的時候。在惡意軟件事件探測和確認之后,事件處理人員要確定問題的類型,擴展名和規模,以便確定優先順序。4.2.1到4.2.3將介紹惡意軟件事件的一些特征,確認事件的特征,以及采取措施的先后順序。
4.2.1 了解惡意軟件事件的表征
惡意軟件事件表征有兩種:惡意軟件先驅(precursor)和跡象 (indication),所謂先驅是指惡意軟件攻擊可能會在將來出現。跡象是指是指已經出現或是正在出現的表征。
絕大多數的惡意軟件先驅以如下形式出現:
■ 惡意軟件咨詢公司 殺毒軟件開發商和其它的安全組織會發布新的安全警報。事件處理人員可以定制這些信息報告以便清楚了解時下新的風險。還可以觀察一下那些已經中招的企業。企業還可以自行分析潛在的風險和攻擊。
■ 安全工具警報 有一些工具,譬如殺毒軟件,IPS等可以探測,隔離,刪除,或是阻止惡意軟件感染系統。這些行動導致安全警報的產生。譬如說,惡意軟件的嘗試攻擊的失敗導致的警報,同樣的攻擊可能通過未受監視的攻擊因素侵入企業或是感染系統,這樣就會導致安全事件。
先驅的探測給了企業一個修正安全狀態防止惡意軟件的窗口時間。在最壞的情況下,如果企業發現其將遭到攻擊,就可以事先進入戰時狀態,防范惡意軟件。但是絕大多數的惡意軟件并沒有一個明顯的標志,其跡象的發生也就是在事件發生之前,因此,企業不應該依賴這種事先的預警。
盡管安全事件常常在沒有任何跡象的情況下發生,但是卻又很多惡意事件的表征。常見的表征如下:
■ 網絡服務器崩盤
■ 用戶抱怨上網速度慢,系統資源的消耗和磁盤訪問速度慢
■ 殺毒軟件檢測到主機感染了蠕蟲
■ 系統管理員觀察到異常特征的文件名
■ 日志中記錄了配置的變化
■ 上網的時候,筆記本莫名重啟
■ 電子郵件管理員注意到大量可疑郵件
■ 殺毒軟件等安全措施被禁止
■ 管理員注意到異常流量
上述所列的表征很多都會導致惡意軟件。譬如說,由于非惡意軟件攻擊,操作系統漏洞等導致的網絡服務器崩盤。系統硬件失敗或是電子郵件服務器的誤配置導致的大量郵件,當然也有可能是垃圾郵件者。這些都說明了檢測和確認惡意軟件事件的復雜程度,也說明了技術過硬,接受良好培訓的工作人員的重要性。這些事件處理人員要具有火眼金星,從海量信息中找到異常現象。表征的主要來源包括以下幾種:
■ 用戶 用戶經常向技術人員報告惡意軟件相關的表征。譬如說,用戶可能會發現殺毒軟件上的警報,發現系統不能正常運行,或是異常行為。當然,用戶也有可能是導致感染的原因或是事后尋求幫助。
■ IT管理人員 系統,網絡和安全管理人員對于異常行為很敏感
■ 安全工具 殺毒軟件,IPS等會記錄下詳細的惡意軟件表征。網絡監控等軟件可以報告網絡異常行為。這些信息在探測惡意軟件上尤其寶貴。
由于惡意軟件本身產生的特征如此之多,所以要想完全將其所有表征列舉下來是不可能的。下表將列舉常見安全工具遇到惡意軟件時的表征。對個人和管理人員來說可能會有用:
可能的惡意軟件表征
4.2.2 確認惡意軟件事件特征
由于沒有任何一種表征是完全可靠的,甚至殺毒軟件也有可能誤判正常的活動——所以有時候就需要事件處理人員采用人工分析的方式確認惡意軟件的原因。在一些情況下,譬如說大規模的感染毋庸置疑就是惡意軟件事件。由于惡意軟件處理人員的目標就是探討事件的原因,確認惡意軟件類型。如果一時找不出事件來源,就假設是惡意軟件造成的,如果發現假設不成立時再更換安全措施。如果一味等待,只會造成更大的損失。
作為分析和確認過程的一部分,事件處理人員通過檢查探測來源確認惡意軟件活動的特征。了解惡意軟件活動特征是有效地進行抑制,清除和恢復活動的重要基礎。事件處理人員要事先與安全管理人員合作了解關于惡意軟件信息的數據來源,以及數據來源包括何種信息。除了常見的數據來源,譬如說殺毒軟件,事件處理人員還需要使用如下來源:
■ 防火墻和路由器日志文件
■ 電子郵件服務器和基于網絡的IPS監視器上的日志文件
■ 信息包嗅探器,基于網絡的IPS監視器和網絡取證分析工具上的信息抓包工具,里面可能會包括惡意軟件相關的流量
一旦事件處理人員接收到了探測來源數據和確認了惡意軟件的特征,然后就可以和殺毒軟件廠商的病毒庫作出對照,確認惡意軟件的原因。如果惡意軟件出現已有時日,殺毒軟件廠商一定會有關于其的詳細信息
■ 惡意軟件種類,(病毒,蠕蟲,木馬等)
■ 攻擊的端口和網絡服務
■ 攻擊的漏洞
■ 電子郵件抬頭,附件名,附件大小,關鍵內容
■ 可能被感染的操作系統,設備,程序等
■ 惡意軟件如何感染系統
■ 惡意軟件如何影響被感染的系統,包括被感染文件的名稱和地點,更改的配置設置,安裝的后門端口等
■ 惡意軟件如何傳播及怎么樣實施抑制
■ 如何從系統中刪除惡意軟件
然而,不幸的是,最新的攻擊卻無法在短時間之內出現在惡意軟件數據庫中。因此,事件處理人員還要依賴于其它信息來源作出快速響應。譬如使用公共安全郵件清單,這些可能包含惡意事件的第一手賬號,但是這些報告往往不夠準確和完全;還有就是使用其它企業搜集的信息,如果惡意軟件的傳播速度相對較慢的話,就可以借此搜集數據。總之,要使用盡可能多的信息來源。
事件處理人員還需要研究受感染系統上的惡意軟件行為。譬如說,技術人員從感染系統上獲取樣本,然后在一個隔離的系統上對其進行研究。一臺感染的系統或是感染系統的磁盤都可以放入隔離系統中。測試系統中應該包括搜集惡意軟件信息的工具包(信息包嗅探器等)。這個隔離的系統不僅可以在毫無感染威脅的情況下研究惡意軟件,還可以做惡意軟件的相關培訓。
為了有效分析系統上惡意軟件的行為,分析人員需要在移動媒介上構造可信任的工具包。工具包包括最新的殺毒軟件等。防止工具包存儲媒介被惡意軟件感染;譬如說,軟盤要出于寫保護狀態,CD要寫滿,防止添加新的內容。之所以這樣做是為了防止惡意軟件入侵工具包,篡改其功能,導致不能報告惡意行為。使用這種相對隔離的,受保護的工具可以更加有效地了解惡意軟件。#p#副標題#e#
4.2.3 確定事件響應的先后順序
一旦惡意軟件事件被確認,下一步行動就是采取處理措施。有一些惡意軟件,譬如蠕蟲,會在短時間之內造成極大的危害,因此要優先處理類似病毒。其它病毒,諸如木馬感染的只是單一系統,可以根據數據的價值等采取保護措施。企業有必要建立一套惡意軟件響應的等級制度。這一制度需要考慮如下因素:
■ 惡意軟件進入系統的方式和傳播機制
■ 惡意軟件的種類
■ 惡意軟件在系統中使用了什么攻擊者工具
■ 受感染的網絡和系統
■ 惡意軟件事件的后續影響
4.3 抑制病毒
抑制惡意軟件包括兩部分:一是禁止惡意軟件的傳播,防止感染其它系統;針對所有的惡意軟件都需要采取抑制措施。在應對惡意軟件事件的過程中,確定采用何種抑制方式很重要。孤立感染事件和非傳播性惡意軟件的抑制很簡單,采取直接斷網或是關閉系統的方式即可。對于傳播廣泛的惡意軟件事件來說,企業需要及時采取措施限制計算機感染的數量,造成的危害,以及減少完全恢復系統和服務的時間。
在抑制惡意軟件事件的過程中,要知道禁止惡意軟件的傳播并不能防止其對系統造成的進一步的傷害。即使是在企業完全禁止其傳播之后,惡意軟件還會繼續傳播和刪除數據,應用程序和操作系統文件。除此之外,有一些惡意軟件在斷開網絡連接或是采取抑制措施之后導致額外的傷害。譬如,有的感染系統運行的惡意程序不斷與其它系統聯系。如果切斷網絡就會切斷與網絡的聯系,惡意軟件就會重寫主機硬盤上的所有數據。所以,僅僅斷網是不夠的,還要采取進一步的措施防止進一步的傷害。
企業需要建立相關的流程作出抑制惡意軟件相關的決定,這些決定要反映風險可接受性層級。譬如說,企業決定運行關鍵功能的系統即使在感染病毒的情況下也不能斷網,因為斷網有可能帶了更大的損失。惡意軟件抑制戰略要支持事件處理人員根據不同的感染作出不同的抑制決策。
惡意軟件抑制方法可以分為四種:依靠用戶參與;執行自動探測;臨時中斷服務;禁止特定的網絡連接;以下4.3.1到4.3.4將詳細介紹這四種方法。
4.3.1 全民皆兵,用戶參與
用戶的參與是抑制措施中關鍵的一環,特別是在大規模的事件中。企業教導用戶如何辨別感染,系統感染之后的應對方法,譬如說,尋求幫助,斷開系統網絡,或是關閉系統。這些指導要涵蓋惡意軟件清除,譬如升級殺毒軟件病毒庫和執行系統掃描,或是使用特制的惡意軟件根治軟件。這些措施對于管理混亂的網絡環境和自動根治方法不可靠的情況下是非常有效的。
正如4.1.2中所說,用戶之間信息的溝通很重要。盡管現在電子郵件是最有效的溝通途徑,但是在關鍵時候還是有可能拋錨或是用戶收到郵件時為時已晚。因此,企業需要有備用的通訊方案保證信息發布的及時有效,譬如在企業只能發布信息到用戶的聲音郵箱,在工作場所張貼公告,散發傳單等。在系統登錄的時候發布系統信息也是很有效的,但是很多用戶長期不退出或是忽略了這些消息。那些在家庭或是分支機構辦公的員工,企業要保證信息到達用戶。另外一個重要的措施就是給用戶提供軟件,譬如清除軟件,軟件升級,補丁和升級的病毒庫。
盡管用戶的參與很重要,但是單靠此顯然是不夠的。不管信息溝通渠道多么暢通,總會有用戶收不到信息或是忽略。還有,一些用戶收到指示之后,由于不知所云,所以很難按照指示去辦,或是理解錯誤對系統造成損害。有一些用戶可能只關注常用的工具,而忽略了惡意軟件對系統的影響。但是,我們說,在一次大范圍的惡意軟件感染范圍之內,用戶的參與會大大減輕技術人員的負擔。
4.3.2 自動探測,大顯神威
很多惡意軟件事件使用3.4中描述的技術得到一定的抑制。這些技術包括,殺毒軟件,電子郵件過濾,和入侵防范過濾。由于主機上的殺毒軟件具有探測和刪除病毒的功能,所以在惡意事件抑制中備受喜愛。然而,這些探測工具的不足之初在于其只能依據現有病毒庫探測,無法應對新的惡意軟件。只有不斷的更新病毒庫才能不斷的檢測新的病毒,然而,在升級病毒庫的間歇,惡意軟件已造成巨大傷害。并且病毒庫的發布也是一個問題。你不可能在同一時間滿足所有升級請求。
在一次大規模的惡意軟件事件中,如果惡意軟件未被殺毒軟件辨認或是病毒庫升級尚未完成,企業需要臨時使用其它安全措施抑制惡意軟件。在企業收到升級的病毒庫之后,最好是測試一下,以免對企業正常的系統造成沖擊。另外一個使用多種安全措施的原因就是防止單一技術的過載。期待殺毒軟件處理所有的惡意軟件事件工作量是不現實的。通過探測和阻止惡意軟件的深度防御戰略,企業可以分散殺毒軟件的工作量。還有,使用不同的探測器可以適應不同的環境。以下列舉常用的自動探測工具:
■ 電子郵件過濾 電子郵件服務器和客戶端,以及殺毒軟件可以阻止包含一定特征的電子郵件和附件。譬如,主題,發送人,信息文本,附件類型和名稱。但是,現在惡意軟件的特征越來越多樣化,譬如,病毒可以使用上百個不同的主題,看起來都可能是合法郵件。還有一些病毒甚至產生隨機主題或是附件名,或是復制正常郵件,這些都可能導致郵件過濾方法的失效。除此之外,盡管絕大多數的惡意郵件附件都有可疑的文件擴展名(特別是.bat,.cmd,.exe,.pif和.scr.),還有使用曾是善意的文件擴展名,.zip已然成為更流行的惡意文件附件。
■ 基于網絡的IPS軟件 絕大多數的IPS產品都允許用戶自行設置防護功能。如果IPS是在線的,也就是其是網絡的積極組成部分,并且有惡意軟件特征,那么它就可以確認和阻止惡意軟件。如果IPS沒有激活防范能力的話,最好是重新配置,部署多個IPS探測器,使IPS可以禁止惡意軟件活動。IPS要能夠同時禁止危險的出流和入流。當然,IPS在防范惡意軟件中的價值取決于其病毒庫辨別惡意軟件的能力。有一些IPS產品允許管理員自行編寫病毒庫。在很多情況下,管理員可以在殺毒軟件廠商發布病毒庫幾小時之前自己編寫惡意軟件病毒庫。除此之外,由于IPS病毒庫僅僅對基于網絡的IPS探測器有效,而殺毒軟件病毒庫是影響所有的工作站和服務器,所以自己部署IPS病毒庫的風險比殺毒軟件小。
■ 基于主機的IPS軟件 有一些基于主機的IPS產品可以限制可執行文件的運行。譬如,管理員可以輸入不應該被執行的文件名。如果殺毒軟件病毒庫還沒有包含新的風險,可以部署基于主機的IPS產品阻止文件的執行。
4.3.3 阻斷服務,釜底抽薪
有一些惡意軟件事件需要采取更徹底的措施方能抑制。譬如說,有些惡意軟件可能會產生巨大的網絡流量或是應用程序活動,譬如說電子郵件和文件傳輸導致很多應用程序不能運行。要想抑制這類惡意軟件,很可能要停止很多服務,譬如終止被惡意軟件利用的服務,關閉有些網絡服務或是禁止服務端口。還有一些網絡服務被用來傳播感染。不管是哪種情形,關閉被感染的服務是最佳選擇。一般來說,這是限于應用程序層級或網絡層級。目標就是在抑制惡意軟件的同時,將功能的損失降到最低限。為了支持網絡服務的斷網,企業要列出這些服務清單,以及使用的TCP和UDP端口。
最容易受惡意軟件影響的是電子郵件。電子郵件服務器是病毒和蠕蟲傳播最廣泛的方式。關閉郵件服務器是最直截了當的方法。但是,有些情況下,未知的郵件服務器可能會影響抑制的效果。如果企業服務器比較少,關閉郵件服務器端口可以在沒有太多郵件服務喪失的情況下實施有效的抑制。
從技術的角度來看,禁止服務很簡單;但是要了解其結果就很難了。關閉企業依賴的服務很顯然會產生負面影響。也會影響其它相關的服務。譬如,關閉郵件服務可能會削弱通過郵件復制信息的目錄服務。因此企業在實施抑制措施的時候要考慮到依靠這些主服務的附加服務。使用類似的服務代替很有效。譬如,在一個管理有序的網絡環境中,如果郵件客戶端被感染,用戶可以使用另外的尚未被感染的郵件客戶端。這樣依然可以保證郵件溝通。瀏覽器和客戶端應用程序也可以采用這樣的替代方案。
企業要隨時準備應對由于其它企業禁止服務帶來的不便。譬如說,甲方有一個小組為已方工作,這時需要把甲方小組成員的郵箱賬號導入乙方的郵件系統中,如果乙方突然中止其郵件服務,發出去的郵件就會被退回,然后再發,又被退回,如此形成了郵件循環。如果發生這樣的情況,一些用戶帳戶會導致郵件服務的下降。
4.3.4 斷開網絡,療效明顯
臨時限制網絡連接在抑制惡意軟件時很有效。譬如,感染的計算機嘗試連接外部系統下載rookit,管理員要馬上阻斷訪問的IP地址。類似的 ,如果企業內感染的系統準備向外傳播惡意軟件,管理人員要馬上阻斷來自于這臺機器IP地址的流量。一個方案就是直接阻斷這個IP與網絡的連接,可以通過重新配置網絡設備或是切斷網線或是拔出感染系統上的網卡等實現。
最激進的抑制方式就是故意切斷網絡與未感染系統的連接。這可能會影響很多系統的網絡連接,譬如說遠程撥號和VPN用戶。最壞的情況就是,從主要網絡中隔離二級網絡或是斷開整個企業的網絡防止惡意軟件的傳播。當然采用這種極端措施的情況就是惡意軟件已經造成嚴重危害,并且擴展到其它企業的時候。由于采取大規模的斷網必然會影響企業的正常運轉,因此要盡快恢復連接。
企業在規劃網絡的時候要使通過斷網的抑制變得簡便和減少危害。譬如,有一些企業把服務器和工作站部署在單獨的二級網絡中;如果發生針對工作站的惡意軟件事件,受感染的工作站二級網絡可以從主網絡中隔離,那么服務器二級網絡還是可以正常運轉,為外部客戶和未受影響的內部二級網絡提供服務。另外一種網絡設計就是在感染系統中使用單獨的虛擬局域網(VLAN)。使用這一設計,主機在訪問網絡的時候就會檢查其安全狀況。這種檢查常常由部署在主機上的設備監視主機的行為,譬如操作系統補丁和殺毒軟件升級。一旦主機嘗試聯網的時候,網絡設備就會從監視設備上獲取信息。如果主機未對請求作出響應,或是回應顯示主機不安全,網絡設備就會把主機導向隔離的VLAN。同樣的技術也可以在已經存在于網絡中的主機上使用,受感染的主機會自動移到VLAN中。
使用VLAN技術可以在為感染的主機提供病毒庫升級和下載補丁的同時嚴格限制感染主機的副作用。如果沒有VLAN的話,企業就需要完全終止感染主機的網絡連接,這就需壓迫手動升級和處置漏洞。單獨的VLAN的一個變通策略就是把所有的主機都置于VLAN的一個網絡段中,然后移到正常的網絡中。VLAN的一個缺點就是感染主機的流量仍然和正常網絡使用的設備是一樣的,它只能提供邏輯上的隔離,而不是實體上的。所以,由于惡意軟件活動和系統升級等產生的大量流量都會出現在VLAN中,這有可能導致使用網絡設備的用戶的操作問題。
4.3.5 抑制惡意軟件事件的建議
抑制惡意軟件可以使用上述描述的四種方式。由于單一的惡意軟件處理方式不可能很有效,所以需要綜合采取各種技術。譬如說,阻斷網絡連接在阻止惡意軟件傳播上很有效,但是系統上感染的文件可能會繼續造成破壞。
企業忍受采取極端抑制措施的時間不會太長。相應地,企業需要支持使用成熟的抑制決策,清晰的政策規定擁有作出決策的人員,以及何時采取措施。
4.3.6 感染主機的確定
確定被感染的主機是處理惡意軟件事件的一部分,特別是在大規模的惡意軟件事件時,尤其重要。一旦確認了被感染的主機,我們就可以采取適當的抑制,清除個恢復措施。不幸的是,由于計算的動態性,確認感染的計算機很復雜。譬如,人們會關閉系統,斷開網絡,或是轉移工作地點,這就使得確認感染的計算機變得異常困難。除此之外,有一些主機使用多個操作系統或是虛擬操作系統,如果操作系統之一感染病毒的,另一操作系統沒有,而剛好使用的又是未感染的操作系統,這樣病毒就會檢測不出來。
準確的確認感染主機的復雜性還受其它因素的影響。譬如,有的系統漏洞可能被重復感染過多次。有一些惡意軟件會刪除其它惡意軟件的一些或全部特征,這樣就使得這些病毒難以查出。在一次大規模的惡意軟件事件中,由于主機數量之多所以確認很困難。除此之外,關于感染主機的數據可能來自于多個渠道——殺毒軟件,IDS(入侵檢測系統),用戶報告等。
理想的情況下,感染主機的確認可以使用自動的方法,但是由于多方面的原因(4.3.6.1和4.3.6.2將闡述),這常常是不可能的。人工確認的方法,譬如說依靠用戶確認和報告感染,技術人員挨個檢查系統,但是這些對于綜合性的確認都不可靠。所以企業在惡意軟件事件來臨之前就應該意識到這一問題,使用多種確認方式作為實施有效抑制病毒的一部分。企業還要決定需要哪一種確認信息以及記錄信息的來源。譬如,主機的IP地址對于遠程機是必須的,本地機則需要主機的實體位置。
確認感染系統的實體地址的難處有幾個因素。在一個管理良好的網絡環境中,確認主機地址相對簡單,因為事情都是完全標準化的。譬如,系統名含有用戶ID或是辦公室號,或是系統序列號。還有,資產庫存管理工具可能會包含主機現有的特征。在那些管理不夠完善的網絡環境中,要確認地址就很困難了。譬如說,譬如說管理員知道位于10.3.3.1.70這一地址的系統被感染,但是卻不知道系統在哪,誰在使用。管理員要使用網絡設備跟蹤感染的系統。譬如說,轉換端口繪圖器(mapper)可以發布特定IP地址的轉換,然后確認轉換端口數和與IP地址相關的主機名稱。如果感染的系統要幾道轉換,定位一個IP地址就需要數小時的時間;如果感染系統不是直接轉換的,管理員需要使用多個網絡設備人工跟蹤連接。一個替代的方法就是抽回網線或是關閉感染系統的轉換端口,然后等用戶報告異常情況。這種方法無意間就會影響少數正常的系統,但是如果作為最后的保留方式還是很有效的。
有一些企業,首先確認感染的主機,然后采取抑制,刪除和恢復措施,然后采取措施保護正常系統。當然了,這些措施是要事先準備好的,管理人員在鎖定主機的時候要獲得允許。一般說來,鎖定措施基于特定主機的特征,譬如MAC地址或是靜態IP地址,如果系統與用戶是一一對應的話,也可以依據ID鎖定。還有一種可能性是使用網絡登錄腳本確認和拒絕訪問感染的主機,但是如果是系統開機之后感染的話,就沒有什么效果了。正如,4.3.4中描述的那樣,使用單獨的VLAN是鎖定系統很好的選擇,當然要保證探測感染的機制是可靠的。盡管采用關閉系統的方式只能在極端的情況下使用,企業要事先考慮關閉系統的方式,這樣在需要的情況下,就可以快速行動。
以下4.3.6.1到4.3.6.3討論三種感染主機的確認技術:計算機取證術,主動出擊,手動方式:
4.3.6.1 計算機取證技術確認
計算機取證確認術是通過尋找感染證據確認感染系統的方法。這些證據可能是幾分鐘之前或是幾天之前的;信息時效性越差,正確度越低。最常見的證據來源是殺毒軟件,間諜軟件探測刪除軟件,內容過濾(譬如,垃圾郵件措施),和IPS軟件。安全程序的日志可能包括可疑活動的詳細記錄,也可能暗示已經發生安全事故或是已經阻止。如果安全程序是整個企業部署的一部分,日志會出現在個人主機和中央管理程序日志上。
如果證據來源沒有包含必要的信息,企業需要轉向次信息來源,譬如:
■ 網絡設備日志 防火墻,路由器或是其它記錄連接活動的設備。網絡監視工具在確認網絡連接上也有一定幫助。
■ Sinkhole 路由器 所謂sinkhole路由器是企業內部搜集所有未知路由流量的路由器。惡意軟件一般會產生這樣的流量,這樣的話,sinkhole觀察到的異常流量就會暗示存在新的惡意軟件威脅。建立一個功能強大的sinkhole路由器對于確認感染系統是很有效的。Sinkhole路由器將搜集到的流量發送到日志服務器和IDS上,信息包嗅探器也可以用來記錄可疑活動。
■ 應用程序服務器日志 有一些程序常常作為惡意軟件傳播機制,譬如,電子郵件和HTTP,在它們的日志中可能會顯示哪些主機被感染了。在點對點的傳播過程中,一封郵件的信息可能同時被幾個地方記錄:發件人系統,處理郵件的每一個郵件服務器,收件人系統,殺毒軟件,垃圾郵件和內容過濾服務器等。相似的,瀏覽器上有很豐富的關于惡意網絡活動的信息包括網站收藏,cookies。還有一個來源是DNS服務器日志。
■ 網絡取證技術工具 這些軟件可以獲取和記錄信息包,譬如網絡取證分析工具和信息包嗅探器,這些都可以記錄高度詳細的惡意軟件活動。但是,由于這些軟件會記錄下所有的網絡活動,要從中淘出需要的信息很耗時,還有其它更有效的方法。
使用取證數據確認感染主機比其它方式更有優勢,因為可以從已搜集的數據中抽取出需要的數據。不幸的是,要從有些數據源中抽出需要的信息過于耗時。還有,由于信息很快就會過時,這都會導致正常系統接受不必要的抑制,而感染的系統卻逍遙法外。如果 取證數據的來源準確合理,計算機取證是最有效地確認感染系統的方法。
4.3.6.2 主動確認技術
主動確認技術用于確認當前被感染的主機。一旦發現感染,一些主動探測方式就會執行抑制和清除措施,譬如說,運行隔離感染工具,部署補丁或是殺毒軟件升級,或是將感染主機移到VLAN中。主動確認方式有如下幾種方式部署:
■ 登錄腳本 網絡登錄腳本可以用來檢查主機特征尋找惡意軟件跡象。使用登錄腳本確認感染系統的缺陷就是感染的主機常常數天數月不登陸系統。這樣就無法確認了。
■ 個性化的基于網絡的IPS或是IDS特征庫 自己編寫IPS或是IDSt特征庫確認感染的主機是很有效的技術。有一些企業有單獨的IPS或是IDS探測器,擁有強大的辨別惡意軟件的功能。這樣在有效減輕其它探測器負擔的同時,保證了信息的高質量。
■ 信息包嗅探器 使用信息包嗅探器尋找與病毒匹配的網絡流量特征對于確認感染的主機是很有效的。如果所有的惡意軟件產生的網絡流量都通過同一或是幾個網絡設備的時候,信息包嗅探器是最有效的。
■ 漏洞評估軟件 絕大多數可以確認主機漏洞的程序也可以探測已知的惡意軟件風險。盡管如此,漏洞評估軟件對于主機上的新風險也無能為力。
■ 主機掃描 如果特定的軟件導致感染的主機運行監視端口的惡意程序,對于已知端口的掃描可以有效地找出感染的主機
■ 其它掃描 除了主機掃描之外,其它掃描也是有幫助的,譬如說,特定的配置設置或是系統文件的大小
幾種主動確認技術的混合使用是最有效的,因為這樣可以發揮每種技術的專長。譬如說,主機掃描可能在使用個人防火墻的主機上不夠有效,因為防火墻阻止了掃描,但是信息包嗅探器和登錄腳本在這種情況下卻很有效。盡管主動確認技術的混合使用是很有效的,但是也要常常使用,因為感染狀態的不斷變化和數據搜集的時間差。
4.3.6.3 人工確認
確認感染主機的另一種方式就是人工方法。這是三種方式中最耗人力的,但是是成功確認必須的方式。在網絡完全被與感染相關的流量占據的時候,主動方式就不行了。一旦惡意軟件網絡流量使用假冒的地址和產生大量的活動,由于大量信息的出現會淹沒有價值的信息,這樣會導致網絡取證技術的失效。還有,如果用戶擁有系統的完全控制權,系統特征的千變萬化導致自動確認技術產生的結果不完全和不準確。在這種情況下,人工確認就是最好的選擇。
實施人工方法有幾種可能的技術。一種就是,提供給用戶關于惡意軟件特征的一些信息,讓他們自行確認感染。還有一種方式就是讓IT管理人員檢查所有的系統或是可疑系統。如果是遠程辦公室的話,非IT人士也可以做類似檢查。
4.3.6.4 關于感染主機確認的一些建議
盡管采取主動確認的方式結果是最準確的,但是不是最快的。掃描所有主機相當耗時,由于有的系統斷網或是關閉,掃描就得重來一次。如果取證數據是最近的,這確實是很好的信息來源,盡管這些信息不一定是綜合性的。人工方式對于綜合性的企業范圍內的確認是不可行的,但是可以有效填補其它技術的空白。在很多情況下,同時使用多種方式是最有效的。
企業要從實際出發,選擇最有效的方式,以及確定使用的流程,這樣在面臨風險的時候有章可依。企業要確認哪些人或組織應該參與到這一過程中來。譬如,確認時需要安全管理人員(殺毒軟件,IPS,防火墻,漏洞評估,掃描),系統管理人員(DNS,電子郵件和網絡服務器),網絡管理員(信息包嗅探器,路由器),臺式機管理人員(Windows注冊或文件掃描,登錄腳本更改)等等。參與的人員需要明確責任,分工明確。
4.4 清除惡意軟件
盡管清除的目標就是從感染系統中刪除惡意軟件,但是清除的意義遠不止如此。如果感染的原因是由于系統漏洞或是安全缺陷,譬如說不安全的文件共享,這時候惡意軟件的清除就包括漏洞的處置,防止惡意軟件再借此漏洞感染系統。正如4.3.6中所述,清除行動要與抑制措施一起使用。譬如說,企業需要運行軟件確認感染的主機,使用補丁填補漏洞,運用殺毒軟件刪除感染。抑制措施常常會限制清除手段的選擇。譬如,如果惡意軟件是通過斷網的方式抑制的話,系統要么移到單獨的VLAN中實現遠程升級或者是人工重新配置。由于主機與網絡斷開,事件響應人員最好是快速完成修復任務,讓用戶盡管正常上網。
敵動我動,根據不同的情形使用不同的清除技術。最常用的工具是殺毒軟件,間諜軟件探測和刪除工具,補丁管理軟件。自動清除方法,譬如說觸發式殺毒掃描,就比單純的人工掃描有效。但是自動清除方式不是在所有的情況下都最有效。譬如,一臺感染的機器嘗試破壞另外的系統或是消耗大量帶寬,這需要采取斷網和人工處理的方式。在4..3.1中討論過,用戶參與是很必要的。有一些情況下,需要給用戶提供指導和軟件升級,但是有一些用戶需要幫助。在面臨大規模的惡意軟件事件的時候,額外的IT管理人員可以有效地減輕事件處理人員的工作量。如果企業沒有專門的IT人員,培訓員工基本的刪除措施應對惡意軟件。同時使用不同的抑制措施是必須的。
在一些惡意軟件事件中,重建感染系統是刪除措施的一部分。重建包括重裝系統和應用程序,恢復備份數據。由于重建主機跟其它方式相比,消耗了更多的資源,這種方式當是最后的選擇。譬如說,有一些惡意軟件極難清除,即使被移除,主機操作系統也可能被破壞,可能導致主機不能啟動。如果主機是多重感染,或是感染了一段時間,或是安裝了后門程序,rookit或其它攻擊工具,在這種情況下,重建系統就是最有效的方式。在惡意軟件發生的時候,企業要快速反應,重建主機系統。
清除惡意軟件有時令人懊惱,當你面對如此多的需要清除的系統的時候確實有點灰心,并且這些系統日復一日,年復一年的重復感染。事件處理人員要時常確認哪些主機仍然處于感染狀態,以及清除的效果。如果出現感染主機的數量減少,這就說明策略的有效性,就為以后的事件處理積累的經驗,指明了出路。如果感染主機的數量下降了很多,企業實施要繼續努力,爭取將數量減小到最少。
清除大范圍的惡意軟件感染需要承受很大的壓力,特別是員工和管理層對于清除需要消耗的事件沒有底的時候。由于感染機器數量之多,以及系統的變化性,很多企業需要花費數天或一個星期的時間完成感染系統惡意軟件的清除。因此做好員工和管理層的教育,獲得他們的諒解和支持是很重要的。
由于很多rookit導致系統的變化,破壞最重要的文件,這就需要花費大量的時間和資源完全清除系統中的rookit。一般來說,發現rookit的時候最好是重裝系統。重裝系統需要重裝和重新配置操作系統和應用程序,或是恢復備份數據。一般說來,在下列情況下,最好是采取重裝系統的方式:
■ 多個攻擊者獲取了管理員權限
■ 任何人都可以使用后門程序,蠕蟲或是其它方式獲取管理員權限的訪問
■ 系統文件已經被木馬,后門程序,rookit,攻擊者工具或是其它文件代替
■ 使用殺毒軟件,間諜軟件探測和清除軟件或是其它技術刪除惡意軟件之后,系統出現不穩定。這說明惡意軟件為被清除干凈或是重要的系統和應用程序設置遭篡改
如果惡意軟件事件沒有上訴特征,使用常見的惡意軟件清除方式即可。一旦發現對系統未經授權的訪問,企業可以考慮重建系統。
4.5恢復措施
恢復措施的兩個重要方面:恢復系統功能和系統數據; 刪除臨時的抑制措施。那些造成損害比較小的惡意軟件事件不需要采取額外的行動恢復系統。在4.4中,我們已經討論過,對于危害比較大的惡意軟件,木馬,rookit或是后門程序等,最好先重建系統或是從備份數據中恢復,然后采取有效措施確保系統的安全。不怕一萬,只怕萬一。企業要做好應對最壞情況的打算,譬如惡意軟件刪除了所有的硬盤數據。在恢復的過程中,要確定誰負責恢復任務,估計人工,花費的時間,以及恢復數據的優先順序。
決定什么時候移除臨時抑制措施很難,譬如中斷的服務(電子郵件)或連接(網絡訪問,VPN等)。譬如說,為了防止惡意軟件的傳播,電子郵件服務被中斷,與此同時,漏洞系統和感染的系統正在經歷惡意軟件抑制,清除和恢復措施。然而,后者需要花費數星期的時間完全完成,但是電子郵件服務卻不能中斷如此之久。如果郵件服務恢復了,幾乎可以肯定的是感染系統就開始傳播惡意軟件了。但是,如果所有的系統都下載了補丁,惡意軟件感染的壓力就是最小的。技術人員要保證抑制措施直至感染系統造成的威脅微乎其微。盡管如此,事件響應人員還是要評估重啟服務的危險,根據技術人員的建議和管理層對于商業壓力的理解,管理層要為最終的決定負責。
4.6 經驗教訓
當發生惡意軟件事件之后,技術人員要連續多天的努力工作。隨著惡意軟件處理的結束,關鍵技術人員估計也是身心俱疲。由于這些原因,本該是很重要的經驗教訓總結被忽略了。所以企業要高度重視這種 “重處理,輕總結”的情況。以下就是從一些事件中學到的經驗教訓:
■ 安全政策的改變 調整安全政策,防范類似的風險。
■ 員工安全意識教育的變化 提高員工在事件處理中參與的主動程度
■ 軟件重新配置 操作系統或是應用程序隨著安全政策的變化而變化
■ 惡意軟件探測軟件的部署 如果系統的感染是由于未受保護的傳輸機制造成的,最好是部署額外的軟件
■ 惡意軟件探測軟件重新配置 探測軟件需要在多個方面重新配置,如下,
○增加軟件和病毒庫升級的頻率
○提高探測的準確性
○擴大監視范圍
○提高病毒庫升級分布的時效性
4.7 總結
總之,企業需要有豐富的響應機制應對日益瘋狂的惡意軟件事件。筆者上訴的一些建議是根據目前的惡意軟件情形提出的一些建議。惡意軟件未來的發展會提出越來越多的挑戰。我們始終相信,只要我們付出持續不斷努力,惡意軟件事件是可以抑制的。