“紅色代碼”病毒是2001年7月15日發(fā)現(xiàn)的一種網(wǎng)絡(luò)蠕蟲病毒,感染運(yùn)行Microsoft IIS Web服務(wù)器的計(jì)算機(jī)。其傳播所使用的技術(shù)可以充分體現(xiàn)網(wǎng)絡(luò)時(shí)代網(wǎng)絡(luò)安全與病毒的巧妙結(jié)合,將網(wǎng)絡(luò)蠕蟲、計(jì)算機(jī)病毒、木馬程序合為一體,開創(chuàng)了網(wǎng)絡(luò)病毒傳播的新路,可稱之為劃時(shí)代的病毒。如果稍加改造,將是非常致命的病毒,可以完全取得所攻破計(jì)算機(jī)的所有權(quán)限并為所欲為,可以盜走機(jī)密數(shù)據(jù),嚴(yán)重威脅網(wǎng)絡(luò)安全。
紅色病毒首先被eEye Digital Security公司的雇員Marc Maiffret和Ryan Permeh發(fā)現(xiàn)并研究。他們將其命名為“Code Red”,因?yàn)樗麄儺?dāng)時(shí)在喝Code Red Mountain Dew。
“紅色代碼”蠕蟲采用了一種叫做"緩存區(qū)溢出"的黑客技術(shù),利用微軟IIS的漏洞進(jìn)行病毒的感染和傳播。該病毒利用HTTP協(xié)議,向IIS服務(wù)器的端口80發(fā)送一條含有大量亂碼的GET請求,目的是造成該系統(tǒng)緩存區(qū)溢出,獲得超級(jí)用戶權(quán)限,然后繼續(xù)使用HTTP向該系統(tǒng)送出ROOT.EXE木馬程序,并在該系統(tǒng)運(yùn)行,使病毒可以在該系統(tǒng)內(nèi)存駐留,并繼續(xù)感染其他IIS系統(tǒng)。Code Red在向侵害對(duì)象發(fā)送GET亂碼時(shí),總是在亂碼前加上一個(gè)后綴為.ida的文件名,表示它正在請求該文件,這是紅色代碼的重要特征。
設(shè)置運(yùn)行環(huán)境。首先修改堆棧指針,設(shè)置堆大小為0218H字節(jié)。接著使用RVA(相對(duì)虛擬地址)查找Get Proc Address的函數(shù)地址,再調(diào)用此函數(shù)獲得其他函數(shù)的地址,如socket,connect,send,recv,close socket等。
如果C: ot worm文件存在,則不進(jìn)一步傳染其他主機(jī)。
傳染其他主機(jī)。創(chuàng)建100個(gè)線程,其中99個(gè)線程用于感染其他的Web服務(wù)器。通過一個(gè)算法來計(jì)算出一系列的IP地址作為傳染目標(biāo)。按照IP地址的生成算法,能夠產(chǎn)生重復(fù)傳染的情況,從而在這些服務(wù)器之間傳輸大量的數(shù)據(jù)而消耗其網(wǎng)絡(luò)帶寬,達(dá)到拒絕服務(wù)攻擊的效果。
篡改主頁。如果系統(tǒng)的默認(rèn)語言不為美國英語(代碼頁不等于0x409),第100個(gè)線程和前99個(gè)線程一樣去感染其他系統(tǒng)。否則會(huì)篡改系統(tǒng)的網(wǎng)頁,被感染的Web服務(wù)器的網(wǎng)頁將被篡改成某條消息。這個(gè)消息持續(xù)10h后會(huì)消失。與其他通過網(wǎng)絡(luò)攻擊篡改網(wǎng)頁的方法不同,該病毒并不修改磁盤上的主頁文件,而是修改w3svc.dll的TcpSockSend入口指向病毒代碼,當(dāng)瀏覽器訪問這個(gè)被感染的Web服務(wù)器時(shí),TcpSockSend返回前述的篡改消息。
產(chǎn)生對(duì)電腦的白宮的拒絕服務(wù)攻擊。每一蠕蟲線程都會(huì)檢查C: ot worm文件。如果文件存在,則轉(zhuǎn)為休眠,否則檢查當(dāng)前時(shí)間,如果時(shí)間在20:00UTC和23:59UTC之間,將對(duì)白宮進(jìn)行攻擊。創(chuàng)建一個(gè)socket并與白宮網(wǎng)站的80端口建立連接,并發(fā)送18000H(98K字節(jié))的數(shù)據(jù)。在休眠大約415h后,再次重復(fù)發(fā)送數(shù)據(jù)。由于在全世界范圍內(nèi)有大量Web服務(wù)器被感染,其結(jié)果就可能會(huì)產(chǎn)生對(duì)白宮網(wǎng)站的拒絕服務(wù)攻擊。
篡改被感染的網(wǎng)站,使其顯示上節(jié)中提到的消息。
蠕蟲病毒的活動(dòng)一般與時(shí)間相關(guān),根據(jù)系統(tǒng)時(shí)間不同會(huì)采取不同的活動(dòng):
1-19天
通過查找網(wǎng)絡(luò)上更多地IIS服務(wù)器嘗試自我傳播。
20-27天
對(duì)幾個(gè)固定的IP地址發(fā)動(dòng)拒絕服務(wù)攻擊,包括白宮的IP地址。
28天到月末
休眠,沒有攻擊活動(dòng)。
檢查服務(wù)器日志
檢查web服務(wù)器的日志文件,如果出現(xiàn)下面的字符串,則表示可能遭到紅色代碼病毒的攻擊:
GET/default.ida?NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u6858%ucbd3%u7801%u9090%u9090%u8190%u00c3%u0003%u8b00%u531b%u53ff%u0078%u0000%u00=aHTTP/1.0
如果在1025以上端口出現(xiàn)很多SYN SENT連接請求,或者1025號(hào)以上的大量端口處于listening狀態(tài),那么你的機(jī)子也是已經(jīng)遭受紅色代碼病毒的感染。
如果在以下目錄中存在Root.exe文件,則說明已經(jīng)感染紅色代碼病毒:
C:/inetpub/scripts/Root.exe
D:/inetpub/scripts/Root.exe
C:/program Files/common file/system/MSADC/Root.exe
D:/program Files/common file/system/MSADC/Root.exe
C:/explorer.exe
D:/explorer.exe
(1)結(jié)束進(jìn)程explorer.exe
有兩個(gè)explorer進(jìn)程。關(guān)閉其中線程計(jì)數(shù)為1的進(jìn)程。
(2)刪除上節(jié)“檢查文件”中列出的文件
(3)打開“計(jì)算機(jī)管理”、"服務(wù)和應(yīng)用程序"、"默認(rèn)應(yīng)用程序",默認(rèn)web站點(diǎn),刪除其中的C和D的共享。
(4)修改如下注冊表鍵值
HKEY-LOCAL-MACHINE/SYSTEM/Currentcontrolset/Services/w3svc/parameters/virtua/roots
刪除其中的/C,/D,并將其中/MSADC和scripts的值217
刪除HKEY-LOCAL-MACHINE/Software/Microsoft/windowsNT/currentversion/winlogon
將其中的CFSDisable的值還原為0。
(5)更新最新的操作系統(tǒng)補(bǔ)丁。重啟計(jì)算機(jī)即可。
紅色代碼II病毒不同于以往的文件型病毒和引導(dǎo)型病毒,它只存在于內(nèi)存中,傳染時(shí)不通過文件這一常規(guī)載體,可以直接從一臺(tái)電腦內(nèi)存感染到另外一臺(tái)電腦的內(nèi)存,并且它采用隨機(jī)產(chǎn)生IP地址的方式,搜索未被感染的計(jì)算機(jī),每個(gè)病毒每天能夠掃描40萬個(gè)IP地址,因而其傳染性特別強(qiáng)。一旦病毒感染了計(jì)算機(jī)后,會(huì)釋放出一個(gè)特洛伊木馬程序,為入侵者大開方便之門,黑客可以對(duì)被感染的計(jì)算機(jī)進(jìn)行全程遙控。且紅色代碼II病毒不僅能感染英文Windows2000和NT,同時(shí)也可以感染中文操作系統(tǒng)。
“紅色代碼II”蠕蟲代碼首先會(huì)判斷內(nèi)存中是否以注冊了一個(gè)名為CodeRedII的Atom(系統(tǒng)用于對(duì)象識(shí)別),如果已存在此對(duì)象,表示此機(jī)器已被感染,蠕蟲進(jìn)入無限休眠狀態(tài),未感染則注冊Atom并創(chuàng)建300個(gè)惡意線程,當(dāng)判斷到系統(tǒng)默認(rèn)的語言ID是中華人民共和國或中國臺(tái)灣時(shí),線程數(shù)猛增到600個(gè),創(chuàng)建完畢后初始化蠕蟲體內(nèi)的一個(gè)隨機(jī)數(shù)生成器(Rundom Number Generator),此生成器隨機(jī)產(chǎn)生IP地址讓被蠕蟲去發(fā)現(xiàn)這些IP地址對(duì)應(yīng)的機(jī)器的漏洞并感染之。每個(gè)蠕蟲線程每100毫秒就會(huì)向一隨機(jī)地址的80端口發(fā)送一長度為3818字節(jié)的病毒傳染數(shù)據(jù)包。巨大的蠕蟲數(shù)據(jù)包使網(wǎng)絡(luò)陷于癱瘓。
紅色代碼三代病毒允許黑客擁有遠(yuǎn)程訪問web服務(wù)器的完全權(quán)限。紅色代碼三代發(fā)現(xiàn)于2001年8月4日,因?yàn)樗瑯永镁彺嬉绯鰧?duì)其他網(wǎng)絡(luò)服務(wù)進(jìn)行傳播,所以被稱為原紅色代碼病毒的變種。紅色代碼三代具有很高的危險(xiǎn)性,紅色代碼蠕蟲病毒會(huì)感染運(yùn)行微軟index server 2.0或windows 2000索引服務(wù)的系統(tǒng),它只會(huì)威脅到在windos NT和windows 2000操作系統(tǒng)上運(yùn)行IIS 4.0和IIS 5.0的計(jì)算機(jī)。紅色代碼三代能夠建立超過300個(gè)進(jìn)程來尋找其他容易被攻擊的服務(wù)器以進(jìn)行傳播。紅色代碼三代能探測更多的IP地址,這引起Internet訪問量的增加和網(wǎng)絡(luò)速度的下降。