《Python爬蟲開發與項目實戰》基礎篇 試讀章節連結:
http://pan.baidu.com/s/1hrWEOYg
這本書包括基礎篇,中級篇和深入篇三個部分,不僅適合零基礎的朋友入門,也適合有一定基礎的爬蟲愛好者進階,如果你不會分布式爬蟲,不會千萬級數據的去重,不會怎麼突破反爬蟲,不會分析js的加密,這本書會給你驚喜。
熊貓燒香病毒在當年可是火的一塌糊塗,感染非常迅速,算是病毒史上比較經典的案例。不過已經比較老了,基本上沒啥危害,其中的技術也都過時了。作為練手項目,開始對熊貓燒香病毒進行分析。首先準備好病毒樣本(看雪論壇有),VM虛擬機和Xp Sp3系統。樣本參數如下:
今天說的主要是行為分析,所以還需要兩個軟體 ,一個是Process Monitor v3.10,一個是PCHunter。Process Monitor v3.10是微軟提供的,可以監視一個進程對文件,註冊表,網絡和線程進程操作的工具。
PCHunter則是一個強大的ARK工具,專門對付Rootkit,我主要是想用來掛進病毒進程,發現一些隱藏的文件,和一些啟動項。
首先我們在XP Sp3虛擬機中打開Process Monitor ,然後運行panda.exe病毒,這時候就開始監聽熊貓燒香的一舉一動。
大約運行兩分鐘後,我們使用PCHunter將病毒進程掛起,停止他的工作。此時你會發現進程名稱不是panda.exe,而是spcolsv.exe,右鍵將他掛起再說。
掛起之後,將Process Monitor中的監聽數據進行保存,然後我們就可以進行離線分析了。Process Monitor的強大之處在於過濾器,因為Process Monitor監聽的是所有的進程,數據量太大。下面我們從進程線程,文件,註冊表和網絡四個方面來分析一下病毒的行為。
1.進程線程由於我們發現進程名改變了,所以先看一下Process Monitor中的進程樹,了解一下進程和線程的變化。
在上圖的紅框中,我們發現panda.exe啟動了spcolsv.exe進程,然後spcolsv.exe有啟動了三個cmd,執行的命令為:cmd.exe /c net share C$ /del /y ,cmd.exe /c net share A$ /del /y,cmd.exe /c net share admin$ /del /y ,這些cmd的命令主要是用來刪除默認共享。下面我們看一下線程的情況,spcolsv.exe啟動了很多的線程,來執行一些操作。
2.文件首先看一下spcolsv.exe進程從哪來的,過濾一下panda.exe的文件操作。
可以看到panda.exe從自身分離出spcolsv.exe,然後將文件寫到C:\WINDOWS\system\driver 文件夾下。然後panda.exe將spcolsv.exe啟動起來。
spcolsv.exe啟動起來開始進行真正的感染工作,在每個盤的根目錄下複製出自身,命名為setup.exe,並生成autorun.inf文件。autorun.inf的作用是當用戶打開盤符的時候,會自動運行setup.exe,實現持久性運行。同時在整個盤的每個文件夾下創建Desktop_.ini文件。
運行一會後開始感染exe文件,從下圖可以看到對我電腦中的Ollydbg.exe進行了寫入操作。
感染的結果變成了下圖的樣子。
3.註冊表
病毒對註冊表的操作主要幹了兩件事情,第一件事是加入自啟動,在 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run鍵項中添加svcshare。同時通過設置HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL 中的CheckedValue的鍵值設置為0,進行文件隱藏,防止用戶查看釋放的病毒。這個過程是隔一段時間就會進行一次。
第二件事是刪除殺軟的自啟動項,其中包括卡巴斯基,邁克菲McAfee等殺軟。
4.網絡
從目前的分析來看,病毒將不斷掃描區域網默認共享。用來在區域網 中傳播。
5.編寫簡單的專殺工具無論是手動殺毒還是自動殺毒,通過病毒的行為,我們主要從以下方面來殺死病毒:
結束 spcolsv.exe和setup.exe進程
刪除spcolsv.exe,setup.exe,autorun.inf和Desktop_.ini文件
刪除HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run鍵項中的svcshare,將HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL中的CheckedValue設置為1
最後使用MFC編寫了一個熊貓專殺工具(Desktop_.ini暫時沒刪除),部分代碼參考 姜曄的技術專欄。
6.總結通過行為監控的方式完成了對熊貓燒香病毒的查殺,不過還不夠徹底。那些被感染的exe文件,我們還沒有恢復,如果想要進一步的研究,下一節我們對病毒進行逆向,看它是如何感染的。