本文介紹病毒木馬的隱藏部署常見方法,面向很多個人計算機安全過多依賴殺毒軟件和自己朋友的入門網(wǎng)友,讓大家先了解一下常見的病毒木馬感染途徑及病毒立即部署方法,如何達到欺騙用戶、奪取權(quán)限及操控客戶端,再到再次感染。當然本文介紹的一些隱藏技術,很多都是老技術了,每種木馬病毒使用的技術原理也不盡不相同,而且新的加載和隱藏方法也是層出不窮,但終究萬變不離其宗,千萬過程一個結(jié)果,萬物本是如此。
不過,本文不會具體介紹告訴大家如何創(chuàng)建一個線程、如何LOAD一個DLL、如何使用API注冊服務、如何捆綁到PE上去等等這些知識,提到的部署方法幾乎都是常見方法,沒有太高深技術,GG一下全部可以解決,對于愛研究學習的網(wǎng)友,似乎去尋找一個漏洞的過程更為精彩。
1、隱藏文件
該項技術本來面向是方便用戶操作的,為保護系統(tǒng)或重要文件不被用戶誤操作刪除,一直到現(xiàn)在重要的系統(tǒng)文件也在使用,但似乎總是沒病毒木馬程序“發(fā)揮”的更好,目前病毒大都是把隱藏作為第一步基礎技術并結(jié)合最新技術使用,當然明目張膽不隱藏狂揮大刀的也大有毒在,因為病毒執(zhí)行過程時間非常短暫,只需要讓殺毒軟件和防火墻先休克一下,事情做完后可以再次放開,木馬已經(jīng)布局完畢,掛下DLL或DRV,原木馬布局程序也就不再需要了。
2、隱藏窗口
隱藏窗口本身也是很普通的常用技術,很多交互式的后臺程序都是沒有窗口或需要暫時隱藏窗口的,所以病毒木馬肯定會借鑒這個技術,畢竟搞這個東西不是什么光明正大的事情,當然惡作劇性的也可以跟用戶露個面大聲招呼也是大有毒在。
不過現(xiàn)在的病毒也不會只隱藏窗口的,隱藏窗口早以失去早期盛行時候的夸張作用,很多人都會習慣先到任務管理器里看看。
3、隱藏進程
對于本機病毒或木馬本身,隱藏進程應該是病毒木馬的終極表現(xiàn)形式了,所以無論病毒部署的過程有多復雜,最終無非兩種:
A、非獨立進程下的DLL、DRV.....掛載
B、感染系統(tǒng)文件之后自我毀滅掉,病毒與正常文件合二為一。
從整體發(fā)展來看 ,從最初最簡單的一般屬性隱藏,到現(xiàn)在的DLL進程隱藏和驅(qū)動級DRV,從OSI結(jié)構(gòu)來看,DRV就快到底了,下一步應該是所有知識的綜合運用了。從技術角度,系統(tǒng)永遠都有漏洞,所以殺毒軟件永遠都有事做。
1、病毒感染到達用戶計算機
要開始激活病毒部署,第一步就是如何把病毒先傳輸?shù)接脩粲嬎銠C上,一般有瀏覽器漏洞(溢出、圖片、加載......)、遠程端口攻擊、各種網(wǎng)絡類漏洞(比如溢出、注入、跨站、共享、缺陷等等)、存儲設備(autorun、autoexec.bat及感染病毒的文件等)、下載。目前來說大部分病毒都是通過以上方式感染到用戶的計算機上。
一般來講,任何一款新的病毒或木馬在出來之前,病毒作者都會針對當前主流的殺毒軟件進行測試查殺優(yōu)化的,比如特征碼打亂、加密、加殼等等方式避開殺毒軟件的掃描,所以一旦放出來,幾乎所有的主流殺毒軟件都難幸免,所以有時使用名牌殺毒軟件反而比非主流殺軟更快的倒掉就是這個原因,并不代表該殺毒軟件不好,而是因為太出名了。
另一方面,目前的殺毒軟件仍然都是事后諸葛亮,雖然云技術已經(jīng)投入使用,至少目前來講效果并不明顯。病毒或木馬到達用戶計算上之后,可以立即部署也可以設定觸發(fā)條件部署。下面是一些常用的部署方法,當然這些技術很多現(xiàn)在照樣繼續(xù)使用,前提是只要把殺毒軟件先搞定就可以了,因為很多漏洞或敏感技術都是殺毒軟件的第一防范,要想部署成功,一般都需要把殺毒軟件殺死、關閉或臨時關閉掉(比如想注入進程、修改IE首頁、設為啟動項等等都是最為敏感的)。
關于殺毒軟件和防火墻選擇建議可參考:
2、常用的病毒部署方法:
A、把自身注冊為服務進程,使用該方法的進程在Windows 9x的任務管理器不顯示出來,但是2K以上無效。
B、利用主程序線程注入系統(tǒng)程序,然后加載DLL后,主程序退出,達到隱藏自身進程目的,DLL注入有個缺點就是原進程多了一個加載模塊,使用工具還是能夠發(fā)現(xiàn),所以該DLL一般還會起一個比較好聽的系統(tǒng)鏈接庫名字以便晃悠用戶。
C、利用鉤子HOOK捕獲攔截消息觸發(fā)加載病毒DLL,可以針對某個進程也可以針對所有進程。
D、寫注冊表(NT平臺及以上),HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs,啟動掛載病毒木馬的DLL,該方法使用很容易把用戶計算機拖死掉。
E、開啟守護進程,交叉檢查。
F、使用線程注入或BHO方式插入瀏覽器進程,很多網(wǎng)絡病毒喜歡使用。一旦插入瀏覽器的進程,防火墻無法屏蔽掉,除非是不想上網(wǎng)了,大家經(jīng)常遇到的機子用著用著就彈出個廣告來,也沒看到可疑的進程,那么就要懷疑瀏覽器被劫持了。
G、通過遠程線程注入直接修改對方內(nèi)存執(zhí)行代碼,隱蔽性非常好,但是設計不好就會把系統(tǒng)搞崩潰了。
H、直接修改系統(tǒng)進程的可執(zhí)行程序(比如修改PE文件的輸入地址等方式進行直接感染)或使用修改的山寨DLL替換系統(tǒng)真實的DLL,如果目標程序文件為重要文件,還可能會涉及到版本或函數(shù)地址偏移問題,不小心也會把系統(tǒng)替崩潰掉。
I、目前的大部分病毒或木馬還會對進一步的感染做準備,比如使用驅(qū)動器autorun加載病毒文件仍然是非常方便傳播方式。
.......
所以,綜上所述,病毒木馬在機子上的表現(xiàn)形式無非有是有文件和沒文件的區(qū)別,沒文件實際上還是有文件的,不過是標準的系統(tǒng)文件被替換成帶毒的文件。解決方法就是修復或替換該帶毒文件。對于隱藏進程的DLL病毒或驅(qū)動級病毒,如何找到隱藏進程背后的DLL或DRV。
之前天緣發(fā)了《隱藏病毒木馬的感染部署與常用處理方法(一)》一文,今天我們來看一下隱藏病毒木馬的常用處理方法,所謂知己知彼,方能應對自如,實際上現(xiàn)在的真正的有點水準的病毒和木馬程序都是相當難寫的,因為自從VISTA開始內(nèi)核管理策略做了很大調(diào)整,WINDOWS 7上更是如此,審查和分級會越來越嚴格,現(xiàn)在廣泛流行的ROOTKIT、HOOK內(nèi)核等技術,要在VISTA和WINDOWS 7上運用自如已經(jīng)不是一件簡單的事情。
當然了,道告一尺魔高一丈,辦法總是有的,但對病毒作者的編程水平要求也越來越高,半道出家的病毒“名人”也將會越來越少,除非是發(fā)現(xiàn)了系統(tǒng)的重大漏洞,至少他應該熟悉匯編、C、內(nèi)核管理、內(nèi)存管理等方面的知識,同時為了支撐病毒或木馬的傳播,還需要具備網(wǎng)絡基礎、網(wǎng)絡語言等知識,更多請閱讀:
編寫一個病毒木馬程序不是那么容易的事情,但是要想殺掉一個病毒木馬要要簡單的多,很多人感到困難是因為沒有能力判斷出正確的病毒文件。
1、商業(yè)利益企圖
該類病毒或木馬只要上身后,都會有明顯的一些特征,比如莫名彈窗、修改首頁、莫名訪問(肉雞)、瀏覽器插件等等,大部分特征我們都可以從WINDOWS 窗口和防火墻、瀏覽器上體現(xiàn)出來,如果是被裝上灰鴿子或后臺竊號木馬,如果殺毒軟件沒有提示可能根本“看不出來”,只能通過系統(tǒng)使用感覺、防火墻規(guī)則以及可疑模塊等方式判斷。
還有以攻擊或協(xié)助攻擊為主要目標的木馬程序,這類程序不是一般病毒木馬程序,單純是為了竊取用戶資料或協(xié)助攻擊,一般事情做完之后會自動卸掉所有可能的蛛絲馬跡,普通用戶一般沒這個運氣碰上。
2、損人不利己和惡作劇
這類程序現(xiàn)在已經(jīng)很少了,90年代的時候最多,后來這些作者都鉆到錢眼里頭去了,現(xiàn)在少有閑人在做。
下面看一下常用的處理方法,天緣只根據(jù)經(jīng)驗盡可能的多列一些,實際使用都需要綜合運用。
1、安全模式下啟動殺毒軟件掃描,一般發(fā)現(xiàn)或提示病毒,請記住該病毒的文件名(如果可以的話),如果重啟機子后沒有清理掉,可以查看該文件是否仍然存在,如果還存在就使用下面方式針對性的刪除。
2、使用流氓軟件清理軟件,網(wǎng)上很多大師、助手之類的都可以使用,這個根據(jù)個人習慣選用,下載時候注意來源最好官方,如果可以升級病毒庫,最好先升級后再查殺。
4、如果上面的兩個方法還是不行,一般來講,你想更換殺毒軟件是很難的,病毒大都會檢測防病毒程序的安裝啟動情況,可以直接KILL掉,即使你GHOST還原系統(tǒng)分區(qū)也未必就可以清理掉,所以天緣也只能說聲抱歉,最好還是找找身邊懂電腦的朋友,實在找不到就再試一下:
1、首先定位病毒文件,把驅(qū)動器根目錄下的文件包括隱藏文件檢查一下,回想一下剛剛防病毒程序的提示,根據(jù)中毒前操作情況檢查IE TEMP目錄、WINDOWS TEMP目錄下的臨時可執(zhí)行程序,把能看到的可以程序都放回收站去,然后開始干干凈凈檢查任務管理器是否存在可疑進程或使用tasklist和taskkill,盡量在機子未重啟時候清理,有些非即插即用驅(qū)動類病毒不啟動機子也沒辦法生效的。如果有可疑進程,應先終止進程刪除文件,下面方法可以綜合運用,目的就是干掉進程文件。
2、如果任務管理器沒有發(fā)現(xiàn)可疑進程,就使用隱藏進程查看器(很多軟件都帶,網(wǎng)上也有專門的),查看可疑的DLL或DRV驅(qū)動。常用軟件ICESWORD、UNLOCKER、Wsyscheck......,在VISTA和WINDOWS 7上,目前也有病毒或木馬照樣過冰忍的,所以一種軟件沒查出來可以考慮更換另一種,下載請參考:
兩款免費的強制刪除卸載工具——Unlocker和IceSword冰刃
3、運行msconfig查看啟動項,注冊表HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun和 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersionRun查看啟動項。
4、控制面板——管理工具里或注冊表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services查看可疑服務。
5、如果是GHOST還原系統(tǒng),還原后第一次最好直接進安全模式或PE系統(tǒng)下,檢查其它驅(qū)動器下是否存在AUTORUN,從我的電腦到驅(qū)動器操作,慎用鼠標雙擊,而改用鼠標右鍵打開。
6、有些驅(qū)動病毒程序加載之后(安全模式照樣可以加載),無法KILL掉(系統(tǒng)再保護這些內(nèi)核級驅(qū)動)。是因為系統(tǒng)服務在保護著病毒文件不被刪除,該病毒啟動程序有可能還會檢測后臺服務的啟動狀態(tài)。驅(qū)動病毒一般系統(tǒng)驅(qū)動WINDOWS\system32\drivers下的SYS文件,嘗試先在控制面板——管理工具——設備管理器,右鍵查看顯示隱藏設備中,查找并停用掉可疑的非即插即用驅(qū)動程序,然后檢查注冊表中的對應的加載項并刪除之,回頭再來卸載掉設備。驅(qū)動類病毒還有drv或vxd等格式,drv一般是運行在ring3級的比較好搞定。vxd雖然是ring0級,但是面向Win9x之前使用的驅(qū)動程序,現(xiàn)在少用了。.sys則是NT內(nèi)核驅(qū)動(NT/2K+),運行在ring0級,也是最高級,想刪除是要費點功夫。
7、在刪除驅(qū)動級病毒文件時可能會出現(xiàn)權(quán)限不足問題,尤其是再VISTA和WINDOWS 7上尤其明顯(NTFS),這時候就需要進行提權(quán)操作后刪除,提權(quán)方法請參考:
8、如果病毒DLL或驅(qū)動SYS被強制刪除后,最好檢查一下注冊表項里時候還有加載設置,否則再次啟動系統(tǒng)可能會因為找不到該病毒程序而出現(xiàn)加載錯誤。
9、還有一個辦法就是通過檢查系統(tǒng)目錄下文件的修改時間來定位病毒文件,刪除還可以通過雙系統(tǒng)交叉定位刪除等方式。