如何測試和選擇一款適合的殺毒軟件
“ 上次去一個客戶那里交流,聊起殺毒軟件,
客戶:‘我選擇殺毒軟件的標準就是看誰的界面好看,我就用誰的’。
我:‘難道不應(yīng)該看哪個殺毒軟件能防住病毒和攻擊就選哪個嗎?’,
客戶:‘殺毒軟件都是一樣的,沒什么區(qū)別’。
我:你聽誰說的殺毒軟件都是一樣的?
客戶:‘XXX公司的人來的說的,他們說殺毒軟件都是一樣的,都是靠病毒庫,無非就是誰的多的誰的少點,區(qū)別不大。既然這樣我就選一個我看著順眼的又便宜的就好了。
我:......
”
這是一個真實的對話。
上次參加一個安全會議,一個專家說:甲方也要懂安全知識,不然就會被乙方強奸,他們說什么就是什么。仔細想想,確實如此。
整理了一個測試方案。分享給大家。
本文分為以下幾個部分:
1、測試目的
2、了解病毒傳播途徑
3、了解黑客攻擊途徑
4、測試方法
5、測試流程
01.測試目的
這兩年,關(guān)于病毒的新聞層出不窮,尤其是勒索病毒,給企業(yè)造成了很大的損失。勒索病毒,是一種流行的病毒,通過騷擾、恐嚇甚至采用綁架用戶文件等方式,使用戶數(shù)據(jù)資產(chǎn)或計算資源無法正常使用,并以此為條件向用戶勒索錢財。主要以漏洞利用、RDP弱口令暴力破解、釣魚郵件、網(wǎng)頁掛馬等形式進行傳播。這種病毒利用各種加密算法對文件進行加密后,向文件所有者索要贖金。如果感染者拒付贖金,就無法獲得加密的私鑰,無法恢復文件。關(guān)于勒索病毒的更多知識,請參考我之前的文章,或者在本公眾號勒索病毒專題中查看。
本測試方案的目的在于測試不同的殺毒軟件在防范病毒攻擊時的反應(yīng),從而找出最適合本單位使用的殺毒軟件產(chǎn)品。
我們以最近最具代表性的勒索病毒為例,來介紹一下如何測試殺毒軟件。
強調(diào)一下啊,這個是針對甲方用戶和普通愛好者使用的,并非針對專業(yè)人士,如果您認為我寫的不對,歡迎探討。
02.了解病毒傳播途徑
要知道如何選擇適合的殺毒軟件,我們要先了解病毒的工作流程,也就是說病毒到底是怎么攻進我們的電腦的。
先說常規(guī)的病毒傳播途徑:
1、通過移動介質(zhì)傳播。比如光盤、U盤、移動移盤等,最常見的是U盤。
2、通過文件和程序傳播。
3、通過互聯(lián)網(wǎng)傳播。比如網(wǎng)頁、郵件等。
4、通過局域網(wǎng)傳播。比如漏洞、共享等。
最基本的,防病毒軟件應(yīng)該具備對常規(guī)的傳播途徑進行防范的能力,比如對U盤、網(wǎng)頁、郵件、共享等的方式的病毒來源進行攔截。除了以上的常規(guī)傳播途徑之外,還有一種高級一點的,就是通過黑客攻擊的方式進行主動傳播。 根據(jù)我們大量的取證分析得出來的結(jié)論是:目前,勒索病毒的感染方式,除了少量的郵件釣魚和網(wǎng)站掛馬之外,絕大部分都是來源于黑客攻擊。因為攻擊的背后是人,所以也是最難防范的一種。
黑客攻擊的流程一般是這樣的:
①、通過社工等多種方式獲得目標客戶的IP地址(如果不是專門的APT攻擊,黑客一般會直接進行第二步)
②、通過端口掃描,找到計算機開放的端口,尤其是高風險端口,比如3389和445.
③、獲得權(quán)限。找到特定端口的開放信息之后,采用口令爆破或者該端口存在的漏洞進行攻擊,進而獲得管理員權(quán)限。
④、內(nèi)網(wǎng)搜索。也就是橫向滲透,獲得局域網(wǎng)內(nèi)一臺電腦的權(quán)限后,黑客會對內(nèi)網(wǎng)機器進行同樣的端口掃描和口令爆破,獲得內(nèi)網(wǎng)計算機的用戶名和口令。
⑤、登錄服務(wù)器,關(guān)閉殺毒軟件。種植后門和勒索木馬,對特定計算機進行加密勒索。
⑥、清除痕跡。黑客完成勒索操作后,一般會新建管理員權(quán)限的用戶或者種下木馬,之后嘗試清除自己留下的痕跡。
當然黑客也可以通過近場攻擊,比如BAD USB的方式進行攻擊。“BadUSB”的設(shè)備,類似U盤,但不是U盤(系統(tǒng)識別出來是鍵盤,所以終端管理程序?qū)λ鼰o效)。它模擬鍵盤操作,一旦插入計算機,就會自動執(zhí)行預設(shè)的指令進行攻擊,只要利用社工的方式,讓用戶把它插入計算機就會自動執(zhí)行黑客事先準備好的惡意代碼,不需要人為參與就能完成。
看一下整個的攻擊流程,是不是感覺似乎你想像中的殺毒軟件只能在第五步植入病毒的時候才會起作用?因為殺毒軟件一般情況下只會對文件中的惡意代碼進行查殺,所以如果沒有形成文件(比如最近很流行的無文件攻擊),那么傳統(tǒng)的殺毒軟件其實是很難防的。
回到上面提到的問題,如果你想問,我想買殺毒產(chǎn)品,哪個廠商的好?某某產(chǎn)品據(jù)說排名第一,是不是最好的?這類問題其實很難回答。產(chǎn)品性能當然是有差別的,有的差別還比較大,到底什么樣的產(chǎn)品才是適合自己的?為什么有的很貴,有的卻很便宜?到底有什么區(qū)別?很多用戶在疑惑這個問題。
產(chǎn)品只是一個工具,用來解決你某些問題的工具,所以你最重要的是要了解自己的需求,梳理自己的業(yè)務(wù),知道自己想要的是什么,根據(jù)自己的需要再去按圖索驥,就會簡單的多。如果我們要對勒索病毒進行防范,現(xiàn)在我們知道了黑客的攻擊流程,那么只要針對每一步的攻擊都能做到有效防范,就可以最大限度的做到對勒索病毒的防范。
我們在選擇產(chǎn)品的時候,只要驗證是否能針對這些攻擊流程做到有效防范,就知道這款產(chǎn)品是否是我們需要的產(chǎn)品,下面我們來看一下針對黑客的攻擊,反病毒產(chǎn)品哪些功能可以做到有效防范:
03.了解攻擊手法
在測試之前,我們先把黑客的攻擊流程進行一下分解梳理一下(除了APT攻擊,黑客會針對特定的IP進行攻擊外。一般情況下,黑客都是無差別攻擊,所以我們從第二步的端口掃描開始):
2.1.端口掃描
觀察這幾年勒索病毒的爆發(fā)情況,其實是有一些規(guī)則的,一般都是在爆出重大漏洞之后,會迎來勒索病毒的大爆發(fā)。比如勒索病毒最開始大面積爆發(fā)始于著名的“永恒之藍”漏洞,除系統(tǒng)漏洞,還有第三方程序的漏洞,比如著名的JBoss Web服務(wù)器、WebLogic Web中間件、Adobe Flash等,最近也是頻發(fā)漏洞。
一旦爆發(fā)漏洞,黑客就可以依據(jù)這些應(yīng)用所使用的端口進行掃描,一旦掃描到開放這些端口的IP,黑客就可以進行下一步的動作。在這一步,能有效防范的方法有:打補丁、主機IPS(HIPS),另外就是利用防火墻規(guī)則設(shè)置ACL。比如WebLogic,它只是一個web中間件,不需要對外提供任何服務(wù),只需要為Web服務(wù)器和數(shù)據(jù)庫服務(wù)器提供服務(wù)就行了,所以只需要在防火墻上設(shè)定規(guī)則,只允許它跟web服務(wù)器和數(shù)據(jù)庫器進行通信,即使它有漏洞,如果不暴露在外面,那么它遭受攻擊的可能性就會大大減小。這里的防火墻是指主機防火墻( HFW)。
在這一步,其實被利用最多的是微軟遠程桌面的3389端口,很多人為了圖方便會開放遠程桌面服務(wù),同樣的也為黑客打開了方便之門,黑客最喜歡掃的就是3389端口,遠程桌面確實方便,如果你非要開,建議在防火墻上添加規(guī)則:只允許指定的IP可以訪問這個端口。
所以你選擇的產(chǎn)品起碼應(yīng)該帶有主機防火墻和主機入侵檢測的功能,如果第一步就能監(jiān)測到攻擊并把黑客攔截在外,那么安全性將會大大提高。你可以利用系統(tǒng)自帶的防火墻來實現(xiàn),也可以使用殺毒軟件帶的防火墻,只是操作系統(tǒng)自帶的防火墻在非域環(huán)境下不能做統(tǒng)一的設(shè)置和管理。
2.2.獲得權(quán)限:
如果很不幸,第一步被黑客突破了,黑客通過端口掃描到了你的IP,那么他下一步要做的就是利用這個端口,最有效的辦法就是漏洞利用攻擊。黑客利用已知的漏洞和新的(零日漏洞或之前從未發(fā)現(xiàn)的)漏洞,比如Adobe Flash,Adobe Reader,Java運行環(huán)境,網(wǎng)絡(luò)瀏覽器和Windows組件中,這些程序被植入惡意代碼并執(zhí)行。惡意程序大量的使用了漏洞攻擊,但也有(被某些組織或個人等)針對性地漏洞攻擊,很難使用傳統(tǒng)的檢測方式發(fā)現(xiàn)和阻止。正常情況下,我們要求所有服務(wù)器應(yīng)該第一時間打補丁,能及時將最新的漏洞補丁打上,可以很好的防范類似攻擊,但問題是針對很多的0day漏洞攻擊(0day漏洞是指尚未發(fā)布補丁的漏洞),我們根本沒有補丁可打,而且即使不是0day,很多單位的服務(wù)器也很少能做到及時打補丁,有的是因為盜版,有的是擔心打補丁造成系統(tǒng)重啟甚至無法系統(tǒng),有的是擔心打過補丁會影響業(yè)務(wù)系統(tǒng)的運行等等。就在上周,一個醫(yī)院的客戶報告說單位很多電腦藍屏,我們?nèi)ヒ粰z查,發(fā)現(xiàn)經(jīng)過這么多年的轟炸,他們依然沒有打永恒之藍的補丁。
所以如果你選擇的產(chǎn)品也帶有針對漏洞攻擊的防護功能,可以使黑客的漏洞攻擊無效,黑客要想成功入侵,無疑將會大大增加攻擊成本。
2.3.橫向滲透:
如果最終黑客還是攻入了您的某一臺計算機,可能被攻擊的是一臺無關(guān)緊要的計算機,那么下一步黑客要做的就是進一步擴大戰(zhàn)果——進行橫向滲透。其實橫向滲透和從外網(wǎng)攻擊內(nèi)網(wǎng)一樣,也要從掃描開始,進行口令爆破,進而找到并鎖定要攻擊的服務(wù)器。
內(nèi)網(wǎng)環(huán)境下黑客可用的攻擊方式就更多了:絕大部分服務(wù)器是不連接互聯(lián)網(wǎng)的,那么黑客要想入侵這些服務(wù)器,就要出同時連接內(nèi)網(wǎng)和互聯(lián)網(wǎng)的計算機,一般信息科的計算機都是這樣,還有些比較隱秘的,比如利用USB無線網(wǎng)卡,偷偷連接WIFI的計算機,這些計算機是最有可能遭到攻擊的,以這些計算機為跳板,進入內(nèi)網(wǎng)環(huán)境。
在這里要想防范,就要防止計算機同時連接內(nèi)網(wǎng)和外網(wǎng),對于那些私插USB網(wǎng)卡的,需要利用設(shè)備控制的功能進行阻止。如果不入侵服務(wù)器是否也能讓服務(wù)器中招呢?有的,遇到的還不少。比如有些服務(wù)器開放了文件共享功能,并且圖方便可以寫入。那么黑客只需要在能夠訪問到共享的服務(wù)器上引爆勒索病毒,同樣可以對共享文件夾內(nèi)的文件加密。這種情況下,由于病毒程序并沒有在服務(wù)器上運行,服務(wù)器并不能檢測到病毒,所以服務(wù)器最能對這種情況進行防范。如果前面的手段都失效了,最終黑客還是進入了服務(wù)器(比如服務(wù)器存在弱口令,黑客通過遠程桌面的合法手段進來了),這種情況下,有沒有辦法阻止勒索病毒呢?根據(jù)我們對感染過勒索的服務(wù)器的大量分析,了解到:黑客在這一步,就是進入服務(wù)器執(zhí)行病毒程序,加密文件的過程。如果勒索病毒程序沒有被反病毒程序查殺,那最好,直接運行病毒,有的還會擦除痕跡。有時候病毒直接被反病毒程序殺掉了,那么黑客就要想辦法關(guān)閉或直接卸載反病毒程序。在這里考驗的就是反病毒程序?qū)Σ《镜姆婪赌芰?,以及自身的健壯性了。比如查殺率、對未知病毒的防范、自身的安全保護措施等等。如果能夠把勒索病毒殺掉,或者殺不掉,但是能夠讓它運行不起來,對服務(wù)器來說都是安全的。所以,在這個環(huán)節(jié),殺毒軟件最好具有以下的功能:主動防御或行為檢測技術(shù),能夠?qū)ξ粗《具M行防范。殺毒軟件要有防止關(guān)閉和卸載的功能。要有能對進程進行權(quán)限設(shè)置的功能,對于未授權(quán)的程序和進程禁止運行。對共享文件夾的保護等。
說了這么多,對于病毒和黑客攻擊的防范,總結(jié)起來就是:
l 常規(guī)傳播:對郵件、網(wǎng)頁、共享、U盤等
l 掃描階段:IPS防護、防火墻;
l 入侵階段:漏洞防護、共享文件夾的防護
l 內(nèi)網(wǎng)滲透:IPS防護、防火墻、外設(shè)管控、BadUSB
l 攻入服務(wù)器:病毒查殺、阻止程序運行、對未知病毒的防范、更新速度
驗證一款軟件是否能防得住勒索病毒的有效手段就是針對黑客入侵流程的每一步進行測試驗證。
04.測試方法
測試方法包括靜態(tài)測試和動態(tài)測試
所謂靜態(tài)測試,就是下載病毒樣本包,測試殺毒軟件對病毒樣本的識別率、管理功能等。
目前很多的測評都是一些靜態(tài)測試,用病毒樣本包來測試產(chǎn)品是否能夠識別,對于不能識別的病毒發(fā)送給廠商看多久可以更新病毒庫,測試廠商對于新病毒的反應(yīng)速度,同時直接執(zhí)行不能識別的病毒,看殺毒軟件對于未知病毒的主動防御能力。設(shè)置應(yīng)用程序權(quán)限,看未設(shè)置權(quán)限的程序如病毒能否運行等。這種方法主要用于測試防病毒軟件的基本功能,包括報告、集中管理等功能。但難以準確反應(yīng)產(chǎn)品在真實攻擊的實戰(zhàn)能力。
第二種方法是動態(tài)測試,即模擬攻擊,測試防病毒軟件在面對攻擊時的反應(yīng),常見的方法是使用KALI LINUX進行模擬攻擊。測試防病毒軟件在漏洞利用、網(wǎng)絡(luò)攻擊、端口防范等方面如何有效攔截。
本文轉(zhuǎn)載自微信公眾號「大兵說安全」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系大兵說安全公眾號。