沖擊波病毒是利用在2003年7月21日公布的RPC漏洞進行傳播的,該病毒于當年8月爆發(fā)。病毒運行時會不停地利用IP掃描技術尋找網(wǎng)絡上系統(tǒng)為Win2000或XP的計算機,找到后就利用DCOM/RPC緩沖區(qū)漏洞攻擊該系統(tǒng),一旦攻擊成功,病毒體將會被傳送到對方計算機中進行感染,使系統(tǒng)操作異常、不停重啟、甚至導致系統(tǒng)奔潰。另外,該病毒還會對系統(tǒng)升級網(wǎng)站進行拒絕服務攻擊,導致該網(wǎng)站堵塞,使用戶無法通過該網(wǎng)站升級系統(tǒng)。只要是計算機上有RPC服務并且沒有打安全補丁的計算機都存在有RPC漏洞,具體涉及的操作系統(tǒng)是:Windows 2000XPServer 2003NT4.0。
2003年7月16日,發(fā)布了“RPC接口中的緩沖區(qū)溢出”的漏洞補丁。該漏洞存在于RPC中處理通過TCP/IP的消息交換的部分,攻擊者通過TCP135端口,向遠程計算機發(fā)送特殊形式的請求,允許攻擊者在目標機器上獲得完全的權限并以執(zhí)行任意代碼。
該病毒充分利用了RPC/DCOM漏洞,首先使受攻擊的計算機遠程執(zhí)行了病毒代碼;其次使RPCSS服務停止響應,PRC意外中止,從而產(chǎn)生由于PRC中止導致的一系列連鎖反應。針對RPC/DCOM漏洞所編寫的病毒代碼構成了整個病毒代碼中產(chǎn)生破壞作用的最重要的部分。
1.計算機系統(tǒng)被病毒感染后,病毒會自動建立一個名為“BILLY”的互斥線程,當病毒檢測到系統(tǒng)中有該線程的話則將不會重復駐入內(nèi)存,否則病毒會在內(nèi)存中建立一個名為“msblast”的進程。
2.病毒運行時會將自身復制為:%systemdir%msblast.exe,%systemdir%指的是操作系統(tǒng)安裝目錄中的系統(tǒng)目錄,默認為C:Winntsystem32;緊接著病毒在注冊表HKEY-LOCAL-MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun下添加名為“windows auto update”的啟動項目,值為“msblast.exe”,使得每次啟動計算機時自動加載病毒。
3.病毒隱藏后,感染病毒的計算機嘗試連接20個隨機的IP地址,并且對存在RPC/DCOM漏洞的計算機進行攻擊,完成后該病毒會休息1.8秒,然后繼續(xù)掃描下20個隨機的IP地址,并進行攻擊。
4.具體的攻擊過程為:在感染病毒的計算機通過TCP135端口向那些被攻擊計算機發(fā)送攻擊代碼,被攻擊的計算機將在TCP4444端口開啟一個CommandShell。同時監(jiān)聽UDP69端口,當接收到受攻擊的機器發(fā)來的允許使用DCOM RPC運行遠程指令的消息后,將發(fā)送Msblast.exe文件,并讓受攻擊的計算機執(zhí)行它,至此受攻擊的計算機也感染了此病毒。
5.如果當前日期是8月或者當月日期是15日以后,病毒還會發(fā)起對windowsupdate.com的拒絕服務攻擊(DdoS)。
沖擊波病毒長6176bytes,是后門和蠕蟲功能混合型的病毒,包括三個組件:蠕蟲載體、TFTP服務器文件、攻擊模塊,病毒會下載并運行病毒文件msblast.exe。在這種混合型病毒中還隱藏地存在一段文本信息:
I just want to say LOVE YOU SAN !!
Bill gates why do you make this possible ?
Stop making money and fix your soft ware !!
通過對沖擊波病毒的整個工作流程進行分析,可以歸納得到病毒的行為特征:
1.主動攻擊:蠕蟲在本質上已經(jīng)演變?yōu)楹诳腿肭值淖詣踊ぞ撸斎湎x被釋放(release)后,從搜索漏洞,到利用搜索結果攻擊系統(tǒng),到復制副本,整個流程全由蠕蟲自身主動完成。
2.利用系統(tǒng)、網(wǎng)絡應用服務漏洞:計算機系統(tǒng)存在漏洞是蠕蟲傳播的前提,利用這些漏洞,蠕蟲獲得被攻擊的計算機系統(tǒng)的相應權限,完成后繼的復制和傳播過程。正是由于漏洞產(chǎn)生原因的復雜性,導致面對蠕蟲的攻擊防不勝防。
3.造成網(wǎng)絡擁塞:蠕蟲進行傳播的第一步就是找到網(wǎng)絡上其它存在漏洞的計算機系統(tǒng),這需要通過大面積的搜索來完成,搜索動作包括:判斷其它計算機是否存在;判斷特定應用服務是否存在;判斷漏洞是否存在。這不可避免的會產(chǎn)生附加的網(wǎng)絡數(shù)據(jù)流量。即使是不包含破壞系統(tǒng)正常工作的惡意代碼的蠕蟲,也會因為病毒產(chǎn)生了巨量的網(wǎng)絡流量,導致整個網(wǎng)絡癱瘓,造成經(jīng)濟損失。
4.反復性:即使清除了蠕蟲在文件系統(tǒng)中留下的任何痕跡,如果沒有修補計算機系統(tǒng)漏洞,重新接入到網(wǎng)絡中的計算機還是會被重新感染。
5.破壞性:從蠕蟲的歷史發(fā)展過程可以看到,越來越多的蠕蟲開始包含惡意代碼,破壞被攻擊的計算機系統(tǒng),而且造成的經(jīng)濟損失數(shù)目越來越大。
沖擊波的傳播模式為:掃描-攻擊-復制。
掃描模塊采用的掃描策略是:隨機選取某一段IP地址,然后對這一地址段上的主機掃描。病毒作者會對掃描策略進行一些改進,比如在IP地址段的選擇上,可以主要針對當前主機所在的網(wǎng)段掃描,對外網(wǎng)段則隨機選擇幾個小的IP地址段進行掃描。對掃描次數(shù)進行限制,只進行幾次掃描。把掃描分散在不同的時間段進行。
掃描策略設計的原則有三點:盡量減少重復的掃描,使掃描發(fā)送的數(shù)據(jù)包總量減少到最小;保證掃描覆蓋到盡量大的范圍;處理好掃描的時間分布,使得掃描不要集中在某一時間內(nèi)發(fā)生。
一旦確認漏洞存在后就可以進行相應的攻擊步驟,這一部關鍵的問題是對漏洞的理解和利用。攻擊成功后,是獲得一個遠程主機的shell,例如對win2k系統(tǒng)來說就是cmd.exe,得到這個shell后就擁有了對整個系統(tǒng)的控制權。
復制過程有很多種方法,可以利用系統(tǒng)本身的程序實現(xiàn),也可以用病毒自代的程序實現(xiàn)。復制過程實際上就是一個文件傳輸?shù)倪^程,實現(xiàn)網(wǎng)絡文件傳輸很簡單。
由于RPC/DCOM漏洞,RPCSS服務停止響應,操作系統(tǒng)不斷報告“PRC意外中止,系統(tǒng)重新啟動”,客戶機頻繁重啟,同時所有網(wǎng)絡服務均出現(xiàn)故障,如IE瀏覽器打不開,OUTLOOK無法使用等。
由于RPC服務終止還可能造成其他的一些問題(因為許多功能都依賴于RPC服務),如:無法進行復制、粘貼,無法查看網(wǎng)絡屬性,某些文件夾顯示不正常,計算機“服務”管理不正常,無法使用IE“在新窗口中打開”,無法添加刪除程序等等不正?,F(xiàn)象。
2003年8月29日晚9時,全球反病毒監(jiān)測網(wǎng)率先截獲了沖擊波病毒的最新變種,并命名為:沖擊波V(Worm.Blaster.E)。據(jù)反病毒工程師分析,該病毒變種和前三個變種病毒一樣,沒有在原始病毒上做大的改動,傳染和破壞能力與“沖擊波”其它變種相同,這個變種病毒只是重新改變了病毒文件名稱和注冊表鍵值,企圖躲避殺毒軟件的查殺。據(jù)分析,新的變種病毒做了如下四處改動:
將病毒體內(nèi)的字符串改為:I dedicate this particular strain to me ANG3L - hope yer enjoying yerself and dont forget the promise for me B/DAY而在病毒ochWorm.Blaster中為:I just want to say LOVE YOU SAN !! billy gates why do you make this possible ? Stop making money and fix your software !!
將原來的互拆量ochBILLY改為ochSILLY;
將對ochwindowsupdate.com進行拒絕服務攻擊改為對ochkimble.org進行拒絕服務攻擊;
將注冊表中添加的鍵值改為HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunWindowsAutomation=mslaugh.exe原為:HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunWindowsautoupdate=msblast.exe
反病毒工程師判斷,這種改動的目的仍然是為了躲避殺毒軟件的追殺。該病毒編寫者是為了延長病毒的生命力,從而給自己爭取到推出病毒新版本的時間。沖擊波”病毒共產(chǎn)生了五個病毒體,分別為:Worm.Blaster,Worm.Blaster.B,Worm.Blaster.C,Worm.Blaster.D,Worm.Blaster.E。
該病毒感染系統(tǒng)后,會使計算機產(chǎn)生下列現(xiàn)象:系統(tǒng)資源被大量占用,有時會彈出RPC服務終止的對話框,并且系統(tǒng)反復重啟,不能收發(fā)郵件、不能正常復制文件、無法正常瀏覽網(wǎng)頁,復制粘貼等操作受到嚴重影響,DNS和IIS服務遭到非法拒絕等。如果在自己的計算機中發(fā)現(xiàn)以上全部或部分現(xiàn)象,則很有可能中了沖擊波病毒。此時,計算機用戶應該采取以下方式檢測:
1)檢查系統(tǒng)的system32Wins目錄下是否存在DLLHOST.EXE文件(大小為20K)和SVCHOST.EXE文件,(注意:系統(tǒng)目錄里也有一個DLLHOST.EXE文件,但此為正常文件,大小只有8KB左右)如果存在這兩個文件說明計算機已經(jīng)感染了“沖擊波殺手”病毒;
2)在任務管理器中查看是否有三個或三個以上DLLHOST.EXE的進程,如果有此進程說明計算機已經(jīng)感染了此病毒。
1.病毒通過最新RPC漏洞進行傳播,因此用戶應先給系統(tǒng)打上RPC補丁。
2.病毒運行時會建立一個名為:“BILLY”的互斥量,使病毒自身不重復進入內(nèi)存,并且病毒在內(nèi)存中建立一個名為:“msblast”的進程,用戶可以用任務管理器將該病毒進程終止。
3.用戶可以手動刪除該病毒文件。注意:%Windir%是一個變量,指的是操作系統(tǒng)安裝目錄,默認是:“C:Windows”或:“c:Winnt”,也可以是用戶在安裝操作系統(tǒng)時指定的其它目錄。%systemdir%是一個變量,指的是操作系統(tǒng)安裝目錄中的系統(tǒng)目錄,默認是:“C:Windowssystem”或:“c:Winntsystem32”。
4.病毒會修改注冊表的HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun項,在其中加入:“windowsautoupdate”=“msblast.exe”,進行自啟動,用戶可以手工清除該鍵值。
5.病毒會用到135、4444、69等端口,用戶可以使用防火墻將這些端口禁止或者使用“TCP/IP篩選”功能,禁止這些端口。
6.進入“管理工具”文件夾(在開始菜單或控制面板),運行組件服務,在左邊側欄點擊“服務(本地)”,找到RemoteProcedureCall(RPC),其描述為“提供終結點映射程序(endpointmapper)以及其它RPC服務”。雙擊進入恢復標簽頁,把第一二三次操作都設為“不操作”。
1.建立良好的安全習慣。對一些來歷不明的郵件及附件不要打開,不要執(zhí)行下載后未殺毒處理的軟件等。
2.經(jīng)常升級安全補丁。據(jù)統(tǒng)計,大部分網(wǎng)絡病毒是通過系統(tǒng)安全漏洞進行傳播的,定期下載最新的安全補丁,以防范未然。
3.使用復雜的密碼。有許多網(wǎng)絡病毒就是通過猜測簡單密碼的方式攻擊系統(tǒng)的,因此使用復雜的密碼,將會大大提高計算機的安全系數(shù)。
4.迅速隔離受感染的計算機。當發(fā)現(xiàn)計算機感染病毒或異常時應立刻斷網(wǎng),以防止計算機受到更多的感染,或者成為傳播源,再次感染其它計算機。
5.安裝專業(yè)的防毒軟件進行全面監(jiān)控。在病毒日益增多的今天,使用殺毒軟件進行防毒,是越來越經(jīng)濟的選擇,用戶在安裝了反病毒軟件之后,應經(jīng)常進行升級、將一些主要監(jiān)控經(jīng)常打開(如郵件監(jiān)控),這樣才能真正保障計算機的安全。