查詞語
僵尸網(wǎng)絡(luò)是指采用一種或多種傳播手段,將大量主機感染bot程序(僵尸程序),從而在控制者和被感染主機之間所形成的一個可一對多控制的網(wǎng)絡(luò)。在Botnet的概念中有這樣幾個關(guān)鍵詞?!癰ot程序”是robot的縮寫,是指實現(xiàn)惡意控制功能的程序代碼;“僵尸計算機”就是被植入bot的計算機;“控制服務(wù)器(Control Server)”是指控制和通信的中心服務(wù)器,在基于IRC(因特網(wǎng)中繼聊天)協(xié)議進行控制的Botnet中,就是指提供IRC聊天服務(wù)的服務(wù)器。
僵尸網(wǎng)絡(luò)-基本特點
僵尸網(wǎng)絡(luò)分析檢測
首先是一個可控制的網(wǎng)絡(luò),這個網(wǎng)絡(luò)并不是指物理意義上具有拓撲結(jié)構(gòu)的網(wǎng)絡(luò),它具有一定的分布性,隨著bot程序的不斷傳播而不斷有新位置的僵尸計算機添加到這個網(wǎng)絡(luò)中來。
其次,這個網(wǎng)絡(luò)是采用了一定的惡意傳播手段形成的,例如主動漏洞攻擊,郵件病毒等各種病毒與蠕蟲的傳播手段,都可以用來進行Botnet的傳播,從這個意義上講,惡意程序bot也是一種病毒或蠕蟲。
最后一點,也是Botnet的最主要的特點,就是可以一對多地執(zhí)行相同的惡意行為,比如可以同時對某目標網(wǎng)站進行分布式拒絕服務(wù)(DDos)攻擊,同時發(fā)送大量的垃圾郵件等,而正是這種一對多的控制關(guān)系,使得攻擊者能夠以極低的代價高效地控制大量的資源為其服務(wù),這也是Botnet攻擊模式近年來受到黑客青睞的根本原因。在執(zhí)行惡意行為的時候,Botnet充當了一個攻擊平臺的角色,這也就使得Botnet不同于簡單的病毒和蠕蟲,也與通常意義的木馬有所不同。
僵尸網(wǎng)絡(luò)-僵尸風云
僵尸網(wǎng)絡(luò)
僵尸網(wǎng)絡(luò)是互聯(lián)網(wǎng)上受到黑客集中控制的一群計算機,往往被黑客用來發(fā)起大規(guī)模的網(wǎng)絡(luò)攻擊,如分布式拒絕服務(wù)攻擊(DDoS)、海量垃圾郵件等,同時黑客控制的這些計算機所保存的信息,譬如銀行帳戶的密碼與社會安全號碼等也都可被黑客隨意“取用”。因此,不論是對網(wǎng)絡(luò)安全運行還是用戶數(shù)據(jù)安全的保護來說,僵尸網(wǎng)絡(luò)都是極具威脅的隱患。僵尸網(wǎng)絡(luò)的威脅也因此成為目前一個國際上十分關(guān)注的問題。然而,發(fā)現(xiàn)一個僵尸網(wǎng)絡(luò)是非常困難的,因為黑客通常遠程、隱蔽地控制分散在網(wǎng)絡(luò)上的“僵尸主機”,這些主機的用戶往往并不知情。因此,僵尸網(wǎng)絡(luò)是目前互聯(lián)網(wǎng)上黑客最青睞的作案工具。
對網(wǎng)友而言,感染上“僵尸病毒”卻十分容易。網(wǎng)絡(luò)上搔首弄姿的美女、各種各樣有趣的小游戲,都在吸引著網(wǎng)友輕輕一點鼠標。但事實上,點擊之后毫無動靜,原來一切只是騙局,意在誘惑網(wǎng)友下載有問題的軟件。一旦這種有毒的軟件進入到網(wǎng)友電腦,遠端主機就可以發(fā)號施令,對電腦進行操控。
專家表示,每周平均新增數(shù)十萬臺任人遙控的僵尸電腦,任憑遠端主機指揮,進行各種不法活動。多數(shù)時候,僵尸電腦的根本不曉得自己已被選中,任人擺布。
僵尸網(wǎng)絡(luò)之所以出現(xiàn),在家高速上網(wǎng)越來越普遍也是原因。高速上網(wǎng)可以處理(或制造)更多的流量,但高速上網(wǎng)家庭習慣將電腦長時間開機,唯有電腦開機,遠端主機才可以對僵尸電腦發(fā)號施令。
網(wǎng)絡(luò)專家稱:“重要的硬件設(shè)施雖然非常重視殺毒、防黑客,但網(wǎng)絡(luò)真正的安全漏洞來自于住家用戶,這些個體戶欠缺自我保護的知識,讓網(wǎng)絡(luò)充滿地雷,進而對其他用戶構(gòu)成威脅。”
僵尸網(wǎng)絡(luò)-發(fā)展過程
僵尸網(wǎng)絡(luò)測試
Botnet是隨著自動智能程序的應(yīng)用而逐漸發(fā)展起來的。在早期的IRC聊天網(wǎng)絡(luò)中,有一些服務(wù)是重復出現(xiàn)的,如防止頻道被濫用、管理權(quán)限、記錄頻道事件等一系列功能都可以由管理者編寫的智能程序所完成。于是在1993 年,在IRC 聊天網(wǎng)絡(luò)中出現(xiàn)了Bot 工具——Eggdrop,這是第一個bot程序,能夠幫助用戶方便地使用IRC 聊天網(wǎng)絡(luò)。這種bot的功能是良性的,是出于服務(wù)的目的,然而這個設(shè)計思路卻為黑客所利用,他們編寫出了帶有惡意的Bot 工具,開始對大量的受害主機進行控制,利用他們的資源以達到惡意目標。
20世紀90年代末,隨著分布式拒絕服務(wù)攻擊概念的成熟,出現(xiàn)了大量分布式拒絕服務(wù)攻擊工具如TFN、TFN2K和Trinoo,攻擊者利用這些工具控制大量的被感染主機,發(fā)動分布式拒絕服務(wù)攻擊。而這些被控主機從一定意義上來說已經(jīng)具有了Botnet的雛形。
僵尸網(wǎng)絡(luò)研究
1999 年,在第八屆DEFCON 年會上發(fā)布的SubSeven 2.1 版開始使用IRC 協(xié)議構(gòu)建攻擊者對僵尸主機的控制信道,也成為第一個真正意義上的bot程序。隨后基于IRC協(xié)議的bot程序的大量出現(xiàn),如GTBot、Sdbot 等,使得基于IRC協(xié)議的Botnet成為主流。
2003 年之后,隨著蠕蟲技術(shù)的不斷成熟,bot的傳播開始使用蠕蟲的主動傳播技術(shù),從而能夠快速構(gòu)建大規(guī)模的Botnet。著名的有2004年爆發(fā)的Agobot/Gaobot 和rBot/Spybot。同年出現(xiàn)的Phatbot 則在Agobot 的基礎(chǔ)上,開始獨立使用P2P 結(jié)構(gòu)構(gòu)建控制信道。
從良性bot的出現(xiàn)到惡意bot的實現(xiàn),從被動傳播到利用蠕蟲技術(shù)主動傳播,從使用簡單的IRC協(xié)議構(gòu)成控制信道到構(gòu)建復雜多變P2P結(jié)構(gòu)的控制模式,Botnet逐漸發(fā)展成規(guī)模龐大、功能多樣、不易檢測的惡意網(wǎng)絡(luò),給當前的網(wǎng)絡(luò)安全帶來了不容忽視的威脅。
僵尸網(wǎng)絡(luò)-工作過程
Botnet的工作過程包括傳播、加入和控制三個階段。
僵尸網(wǎng)絡(luò)解決方案
一個Botnet首先需要的是具有一定規(guī)模的被控計算機,而這個規(guī)模是逐漸地隨著采用某種或某幾種傳播手段的bot程序的擴散而形成的,在這個傳播過程中有如下幾種手段:(1)主動攻擊漏洞。其原理是通過攻擊系統(tǒng)所存在的漏洞獲得訪問權(quán),并在Shellcode 執(zhí)行bot程序注入代碼,將被攻擊系統(tǒng)感染成為僵尸主機。屬于此類的最基本的感染途徑是攻擊者手動地利用一系列黑客工具和腳本進行攻擊,獲得權(quán)限后下載bot程序執(zhí)行。攻擊者還會將僵尸程序和蠕蟲技術(shù)進行結(jié)合,從而使bot程序能夠進行自動傳播,著名的bot樣本AgoBot,就是實現(xiàn)了將bot程序的自動傳播。(2)郵件病毒。bot程序還會通過發(fā)送大量的郵件病毒傳播自身,通常表現(xiàn)為在郵件附件中攜帶僵尸程序以及在郵件內(nèi)容中包含下載執(zhí)行bot程序的鏈接,并通過一系列社會工程學的技巧誘使接收者執(zhí)行附件或點擊鏈接,或是通過利用郵件客戶端的漏洞自動執(zhí)行,從而使得接收者主機被感染成為僵尸主機。(3)即時通信軟件。利用即時通信軟件向好友列表發(fā)送執(zhí)行僵尸程序的鏈接,并通過社會工程學技巧誘騙其點擊,從而進行感染,如2005年年初爆發(fā)的MSN性感雞(Worm.MSNLoveme)采用的就是這種方式。(4)惡意網(wǎng)站腳本。攻擊者在提供Web服務(wù)的網(wǎng)站中在HTML頁面上綁定惡意的腳本,當訪問者訪問這些網(wǎng)站時就會執(zhí)行惡意腳本,使得bot程序下載到主機上,并被自動執(zhí)行。(5)特洛伊木馬。偽裝成有用的軟件,在網(wǎng)站、FTP 服務(wù)器、P2P 網(wǎng)絡(luò)中提供,誘騙用戶下載并執(zhí)行。通過以上幾種傳播手段可以看出,在Botnet的形成中傳播方式與蠕蟲和病毒以及功能復雜的間諜軟件很相近。
在加入階段,每一個被感染主機都會隨著隱藏在自身上的bot程序的發(fā)作而加入到Botnet中去,加入的方式根據(jù)控制方式和通信協(xié)議的不同而有所不同。在基于IRC協(xié)議的Botnet中,感染bot程序的主機會登錄到指定的服務(wù)器和頻道中去,在登錄成功后,在頻道中等待控制者發(fā)來的惡意指令。圖2為在實際的Botnet中看到的不斷有新的bot加入到Botnet中的行為。
在控制階段,攻擊者通過中心服務(wù)器發(fā)送預(yù)先定義好的控制指令,讓被感染主機執(zhí)行惡意行為,如發(fā)起DDos攻擊、竊取主機敏感信息、更新升級惡意程序等。圖3為觀測到的在控制階段向內(nèi)網(wǎng)傳播惡意程序的Botnet行為。
僵尸網(wǎng)絡(luò)-種類分類
僵尸網(wǎng)絡(luò)危害網(wǎng)絡(luò)安全
(1)Agobot/Phatbot/Forbot/XtremBot。這可能是最出名的僵尸工具。防病毒廠商Spphos 列出了超過500種已知的不同版本的Agobot(Sophos 病毒分析),這個數(shù)目也在穩(wěn)步增長。僵尸工具本身使用跨平臺的C++寫成。Agobot 最新可獲得的版本代碼清晰并且有很好的抽象設(shè)計,以模塊化的方式組合,添加命令或者其他漏洞的掃描器及攻擊功能非常簡單,并提供像文件和進程隱藏的Rootkit 能力在攻陷主機中隱藏自己。在獲取該樣本后對它進行逆向工程是比較困難的,因為它包含了監(jiān)測調(diào)試器(Softice 和O11Dbg)和虛擬機(VMware 和Virtual PC)的功能。
(2)SDBot/RBot/UrBot/SpyBot/。這個家族的惡意軟件目前是最活躍的bot程序軟件,SDBot 由C語言寫成。它提供了和Agobot 一樣的功能特征,但是命令集沒那么大,實現(xiàn)也沒那么復雜。它是基于IRC協(xié)議的一類bot程序。
(3)GT-Bots。GT-Bots是基于當前比較流行的IRC客戶端程序mIRC編寫的,GT是(Global Threat)的縮寫。這類僵尸工具用腳本和其他二進制文件開啟一個mIRC聊天客戶端。 但會隱藏原mIRC窗口。通過執(zhí)行mIRC 腳本連接到指定的服務(wù)器頻道上,等待惡意命令。這類bot程序由于捆綁了mIRC程序,所以體積會比較大,往往會大于1MB。
僵尸網(wǎng)絡(luò)-控制分類
僵尸網(wǎng)絡(luò)虛擬模型
(1)IRC Botnet。是指控制和通信方式為利用IRC協(xié)議的Botnet,形成這類Botnet的主要bot程序有spybot、GTbot和SDbot,目前絕大多數(shù)Botnet屬于這一類別。
(2)AOL Botnet。與IRC Bot類似,AOL為美國在線提供的一種即時通信服務(wù),這類Botnet是依托這種即時通信服務(wù)形成的網(wǎng)絡(luò)而建立的,被感染主機登錄到固定的服務(wù)器上接收控制命令。AIM-Canbot和Fizzer就采用了AOL Instant Messager實現(xiàn)對Bot的控制。
(3)P2P Botnet。這類Botnet中使用的bot程序本身包含了P2P的客戶端,可以連入采用了Gnutella技術(shù)(一種開放源碼的文件共享技術(shù))的服務(wù)器,利用WASTE文件共享協(xié)議進行相互通信。由于這種協(xié)議分布式地進行連接,就使得每一個僵尸主機可以很方便地找到其他的僵尸主機并進行通信,而當有一些bot被查殺時,并不會影響到Botnet的生存,所以這類的Botnet具有不存在單點失效但實現(xiàn)相對復雜的特點。Agobot和Phatbot采用了P2P的方式。
僵尸網(wǎng)絡(luò)-危害特點
Botnet構(gòu)成了一個攻擊平臺,利用這個平臺可以有效地發(fā)起各種各樣的攻擊行為,可以導致整個基礎(chǔ)信息網(wǎng)絡(luò)或者重要應(yīng)用系統(tǒng)癱瘓,也可以導致大量機密或個人隱私泄漏,還可以用來從事網(wǎng)絡(luò)欺詐等其他違法犯罪活動。下面是已經(jīng)發(fā)現(xiàn)的利用Botnet發(fā)動的攻擊行為。隨著將來出現(xiàn)各種新的攻擊類型,Botnet還可能被用來發(fā)起新的未知攻擊。
恐怖僵尸網(wǎng)絡(luò)
(1)拒絕服務(wù)攻擊。使用Botnet發(fā)動DDos攻擊是當前最主要的威脅之一,攻擊者可以向自己控制的所有bots發(fā)送指令,讓它們在特定的時間同時開始連續(xù)訪問特定的網(wǎng)絡(luò)目標,從而達到DDos的目的。由于Botnet可以形成龐大規(guī)模,而且利用其進行DDos攻擊可以做到更好地同步,所以在發(fā)布控制指令時,能夠使得DDos的危害更大,防范更難。
(2)發(fā)送垃圾郵件。一些bots會設(shè)立sockv4、v5 代理,這樣就可以利用Botnet發(fā)送大量的垃圾郵件,而且發(fā)送者可以很好地隱藏自身的IP信息。
(3)竊取秘密。Botnet的控制者可以從僵尸主機中竊取用戶的各種敏感信息和其他秘密,例如個人帳號、機密數(shù)據(jù)等。同時bot程序能夠使用sniffer觀測感興趣的網(wǎng)絡(luò)數(shù)據(jù),從而獲得網(wǎng)絡(luò)流量中的秘密。
(4)濫用資源。攻擊者利用Botnet從事各種需要耗費網(wǎng)絡(luò)資源的活動,從而使用戶的網(wǎng)絡(luò)性能受到影響,甚至帶來經(jīng)濟損失。例如:種植廣告軟件,點擊指定的網(wǎng)站;利用僵尸主機的資源存儲大型數(shù)據(jù)和違法數(shù)據(jù)等,利用僵尸主機搭建假冒的銀行網(wǎng)站從事網(wǎng)絡(luò)釣魚的非法活動。
可以看出,Botnet無論是對整個網(wǎng)絡(luò)還是對用戶自身,都造成了比較嚴重的危害,我們要采取有效的方法減少Botnet的危害。
僵尸網(wǎng)絡(luò)-研究現(xiàn)狀
痛批僵尸網(wǎng)絡(luò)
對于Botnet的研究是最近幾年才逐漸開始的,從反病毒公司到學術(shù)研究機構(gòu)都做了相關(guān)的研究工作。最先研究和應(yīng)對Botnet的是反病毒廠商。它們從bot程序的惡意性出發(fā),將其視為一種由后門工具、蠕蟲、Spyware 等技術(shù)結(jié)合的惡意軟件而歸入了病毒的查殺范圍。著名的各大反病毒廠商都將幾個重要的bot程序特征碼寫入到病毒庫中。賽門鐵克從2004 年開始,在其每半年發(fā)布一次的安全趨勢分析報告中,以單獨的章節(jié)給出對Botnet活動的觀測結(jié)果??ò退够苍趷阂廛浖厔莘治鰣蟾嬷兄赋觯┦绦虻氖⑿惺?004年病毒領(lǐng)域最重大的變化。
學術(shù)界在2003年開始關(guān)注Botnet的發(fā)展。國際上的一些蜜網(wǎng)項目組和蜜網(wǎng)研究聯(lián)盟的一些成員使用蜜網(wǎng)分析技術(shù)對Botnet的活動進行深入跟蹤和分析,如Azusa Pacific大學的Bill McCarty、法國蜜網(wǎng)項目組的Richard Clarke、華盛頓大學Dave Dittrich和德國蜜網(wǎng)項目組。特別是德國蜜網(wǎng)項目組在2004年11月到2005 年1月通過部署Win32蜜罐機發(fā)現(xiàn)并對近100個Botnet進行了跟蹤,并發(fā)布了Botnet跟蹤的技術(shù)報告。
Botnet的一個主要威脅是作為攻擊平臺對指定的目標發(fā)起DDos(分布式拒絕服務(wù)攻擊)攻擊,所以DDos的研究人員同樣也做了對Botnet的研究工作。由國外DDosVax組織的“Detecting Bots in Internet Relay Chat Systems”項目中,分析了基于IRC協(xié)議的bot程序的行為特征,在網(wǎng)絡(luò)流量中擇選出對應(yīng)關(guān)系,從而檢測出Botnet的存在。該組織的這個研究方法通過在plantlab中搭建一個Botnet的實驗環(huán)境來進行測試,通過對得到的數(shù)據(jù)進行統(tǒng)計分析,可以有效驗證關(guān)于Botnet特征流量的分析結(jié)果,但存在著一定的誤報率。
國內(nèi)在2005年時開始對Botnet有初步的研究工作。北京大學計算機科學技術(shù)研究所在2005年1月開始實施用蜜網(wǎng)跟蹤Botnet的項目,對收集到的惡意軟件樣本,采用了沙箱、蜜網(wǎng)這兩種各有優(yōu)勢的技術(shù)對其進行分析,確認其是否為僵尸程序,并對僵尸程序所要連接的Botnet控制信道的信息進行提取,最終獲得了60,000 多個僵尸程序樣本分析報告,并對其中500多個仍然活躍的Botnet進行跟蹤,統(tǒng)計出所屬國分布、規(guī)模分布等信息。
國家應(yīng)急響應(yīng)中心通過863-917網(wǎng)絡(luò)安全監(jiān)測平臺,在2005年共監(jiān)測到的節(jié)點大于1000個的Botnet規(guī)模與數(shù)量統(tǒng)計。這些數(shù)據(jù)和活動情況都說明,中國國內(nèi)網(wǎng)上的Botnet的威脅比較嚴重,需要引起網(wǎng)絡(luò)用戶的高度重視。
CCERT惡意代碼研究項目組在2005年7月開始對Botnet的研究工作,通過對大量已經(jīng)掌握的Botnet的實際跟蹤與深入分析,對基于IRC協(xié)議的Botnet的服務(wù)器端的特征進行了分類提取,形成對于Botnet 服務(wù)器端的判斷規(guī)則,從而可以對網(wǎng)絡(luò)中的IRC Server進行性質(zhì)辨別。設(shè)計并初步實現(xiàn)了Botnet自動識別系統(tǒng),應(yīng)用于中國教育和科研計算機網(wǎng)絡(luò)環(huán)境中。
可以看出,從國內(nèi)到國外,自2004年以來對Botnet的研究越來越多地受到網(wǎng)絡(luò)安全研究人員的重視,研究工作已經(jīng)大大加強。但是這些工作還遠遠不夠,在檢測和處置Botnet方面還有許多工作要做。
僵尸網(wǎng)絡(luò)-研究方法
對于目前比較流行的基于IRC協(xié)議的Botnet的研究方法,主要使用蜜網(wǎng)技術(shù)、網(wǎng)絡(luò)流量研究以及IRC Server識別技術(shù)。
圍剿僵尸網(wǎng)絡(luò)
(1)使用蜜網(wǎng)技術(shù)。蜜網(wǎng)技術(shù)是從bot程序出發(fā)的,可以深入跟蹤和分析Botnet的性質(zhì)和特征。主要的研究過程是,首先通過密罐等手段盡可能多地獲得各種流傳在網(wǎng)上的bot程序樣本;當獲得bot程序樣本后,采用逆向工程等惡意代碼分析手段,獲得隱藏在代碼中的登錄Botnet所需要的屬性,如Botnet服務(wù)器地址、服務(wù)端口、指定的惡意頻道名稱及登錄密碼,以及登錄所使用到的用戶名稱,這些信息都為今后有效地跟蹤Botnet和深入分析Botnet的特征提供了條件。在具備了這些條件之后,使用偽裝的客戶端登錄到Botnet中去,當確認其確實為Botnet后,可以對該Botnet采取相應(yīng)的措施。
(2)網(wǎng)絡(luò)流量研究。網(wǎng)絡(luò)流量的研究思路是通過分析基于IRC協(xié)議的Botnet中僵尸主機的行為特征,將僵尸主機分為兩類:長時間發(fā)呆型和快速加入型。具體來說就是僵尸主機在Botnet中存在著三個比較明顯的行為特征,一是通過蠕蟲傳播的僵尸程序,大量的被其感染計算機會在很短的時間內(nèi)加入到同一個IRC Server中;二是僵尸計算機一般會長時間在線;三是僵尸計算機作為一個IRC聊天的用戶,在聊天頻道內(nèi)長時間不發(fā)言,保持空閑。將第一種行為特征歸納為快速加入型,將第二、三種行為特征歸納為長期發(fā)呆型。研究對應(yīng)這兩類僵尸計算機行為的網(wǎng)絡(luò)流量變化,使用離線和在線的兩種分析方法,就可以實現(xiàn)對Botnet的判斷。
(3)IRC Server識別技術(shù)的研究。通過登錄大量實際的基于IRC協(xié)議的Botnet的服務(wù)器端,可以看到,由于攻擊者為了隱藏自身而在服務(wù)器端刻意隱藏了IRC服務(wù)器的部分屬性。同時,通過對bot源代碼的分析看到,當被感染主機加入到控制服務(wù)器時,在服務(wù)器端能夠表現(xiàn)出許多具有規(guī)律性的特征。通過對這些特征的歸納總結(jié),就形成了可以用來判斷基于IRC協(xié)議的Botnet的服務(wù)器端的規(guī)則,這樣就可以直接確定出Botnet的位置及其規(guī)模、分布等性質(zhì),為下一步采取應(yīng)對措施提供有力的定位支持。
以上三種研究方法都是針對基于IRC協(xié)議的Botnet。對于P2P結(jié)構(gòu)的Botnet的研究較少,原因是由于其實現(xiàn)比較復雜,在網(wǎng)絡(luò)中并不占有太大比例,同時也因為其在控制方式上的分布性使得對它的研究比較困難。但隨著Botnet的發(fā)展,對于P2P結(jié)構(gòu)的Botnet的研究也將進一步深入。