沖擊波病毒是利用在2003年7月21日公布的RPC漏洞進行傳播的,該病毒于當年8月爆發(fā),。病毒運行時會不停地利用IP掃描技術(shù)尋找網(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ā)送特殊形式的請求,,允許攻擊者在目標機器上獲得完全的權(quán)限并以執(zhí)行任意代碼,。
該病毒充分利用了RPC/DCOM漏洞,首先使受攻擊的計算機遠程執(zhí)行了病毒代碼,;其次使RPCSS服務停止響應,,PRC意外中止,從而產(chǎn)生由于PRC中止導致的一系列連鎖反應。針對RPC/DCOM漏洞所編寫的病毒代碼構(gòu)成了整個病毒代碼中產(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.主動攻擊:蠕蟲在本質(zhì)上已經(jīng)演變?yōu)楹诳腿肭值淖詣踊ぞ?,當蠕蟲被釋放(release)后,從搜索漏洞,,到利用搜索結(jié)果攻擊系統(tǒng),,到復制副本,整個流程全由蠕蟲自身主動完成。
2.利用系統(tǒng),、網(wǎng)絡應用服務漏洞:計算機系統(tǒng)存在漏洞是蠕蟲傳播的前提,,利用這些漏洞,蠕蟲獲得被攻擊的計算機系統(tǒng)的相應權(quán)限,,完成后繼的復制和傳播過程,。正是由于漏洞產(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ā)生。
一旦確認漏洞存在后就可以進行相應的攻擊步驟,,這一部關(guān)鍵的問題是對漏洞的理解和利用,。攻擊成功后,是獲得一個遠程主機的shell,,例如對win2k系統(tǒng)來說就是cmd.exe,,得到這個shell后就擁有了對整個系統(tǒng)的控制權(quán)。
復制過程有很多種方法,,可以利用系統(tǒng)本身的程序?qū)崿F(xiàn),也可以用病毒自代的程序?qū)崿F(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.進入“管理工具”文件夾(在開始菜單或控制面板),,運行組件服務,在左邊側(cè)欄點擊“服務(本地)”,,找到RemoteProcedureCall(RPC),,其描述為“提供終結(jié)點映射程序(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)控),,這樣才能真正保障計算機的安全,。