萬盛學電腦網

 萬盛學電腦網 >> 健康知識 >> 脫去誘惑的外衣 露出木馬的本來面目

脫去誘惑的外衣 露出木馬的本來面目

  木馬與殺毒軟件之間的戰斗從來就沒有停止過,通過對已知的木馬進行加殼可以再次躲避殺毒軟件的查殺。加了殼的木馬可以防止被殺毒軟件跟蹤查殺和被跟蹤調試,同時也可以防止木馬本身的算法程序被別人靜態分析。加殼軟件通常可以分為壓縮保護和加密保護兩種。

  壓縮保護

  壓縮保護就是利用特定的壓縮算法把程序壓縮打包,運行的時候在內存中執行解壓過程並運行主程序。常見的壓縮類加殼軟件有:UPX、ASpack、Petite、PE-PACK、WWPack32、Shrinker等。以UPX為例,它的主要功能就是壓縮,由於木馬要在內存中釋放後才能運行,所以對付這類加殼木馬,凡是有內存殺毒功能的殺毒軟件都能獲得很好的查殺效果。

  加密保護

  這類軟件側重的是加密和保護軟件,在反編譯和反調試功能方面比較完善,某些加密軟件甚至可以做到鎖定自身在內存中的進程而不讓別的進程插進來。此類加殼軟件由於具備反編譯和反調試功能,5自學網,殺毒軟件很難查殺到殼裡的木馬。常見的加密類加殼軟件有ASProtect、tElock、Armadillo、SVK Protector、Xtreme-Protector、Obsidium、PElock等。

  給木馬脫殼

  要給木馬脫殼,需要先知道加了什麼殼。PEid一款專用的查殼工具,可以方便的檢測出軟件到底是使用什麼東西加的殼,給脫殼帶來了極大的便利!木馬Cmdshell.exe是個只有7KB的小木馬,通過開放本機的54088端口,實現遠程命令行控制。下面就詳細介紹一下給木馬Cmdshell.exe脫殼的過程。運行軟件後,點擊“File(文件)”右邊的浏覽按鈕,打開Cmdshell.exe文件,5自學網,這時在主界面中就可以看到該文件的加殼情況:Cmdshell.exe使用的是UPX加殼(如圖1)。

圖1 給Cmdshell脫殼

  通常UPX加殼和脫殼工具是通用的,所以筆者選用了使用起來比較容易的UPX Shell對加殼文件進行脫殼。運行UPX Shell程序,點擊“OPen(打開)”按鈕,選定被加殼的程序。切換到“Compress(壓縮)”標簽,選擇“Decompress(解壓縮)”,再點擊“GO(運行)”按鈕,即可完成脫殼。脫殼後程序由原來的7K變成了20K,文件脫殼成功(如圖2)。

圖2 UPX脫殼

  PE-Scan也是一款專用的查殼脫殼工具,能識別出當今流行的絕大多數殼的類型,而且功能更強。PE-Scan可以檢測出一些殼的入口點(OEP),方便手動脫殼。運行Pe-scan,打開加了殼的木馬,即可看到木馬加殼的類型(如圖3)。這裡筆者使用了一個用Asprotect加殼的木馬來做測試,由於目前的PE-Scan並不支持脫Asprotect殼,所以“脫殼”按鈕無法使用。

·手動查殺病毒和木馬的通用方法·新手也能對付病毒:巧設密碼氣死木馬·高手詳解:木馬和病毒清除的通用解法·教你手動查殺病毒和木馬的通用方法·用病毒木馬進程速查表檢查系統·清除病毒木馬從它的寄生場所開始·“灰鴿子”木馬背後龐大的黑色產業鏈條·巧妙從進程中判斷出病毒和木馬·菜鳥安全防患之餓死木馬·關於反木馬,“上帝們”必須知道的真相

圖3 PE-Scan脫殼

  為了脫去Asprotect殼,還需要使用另外一款脫殼軟件stripperX來幫忙,它可以方便快捷地脫掉ASpack和ASProtect加的殼。運行stripperX,點擊“open(打開)”按鈕,選擇要脫殼的文件,再點擊“unpack(脫殼)”按鈕即可生成目標文件,完成脫殼任務。需要注意的是由於ASProtect在不斷升級,低版本的stripperX往往不能脫最新版本的ASProtect殼,目前stripperX 2.07版本支持脫ASpack 2.xx 和 ASProtect 1.2x版本的殼,stripperX 2.11版本支持脫ASProtect 1.3~2.0版本的殼(如圖4)。

圖4 stripperX脫殼

  總的來說,脫殼要對症下藥,先用PEid或PE-Scan查清楚殼的類型,然後找脫這種殼的工具,才能達到脫殼的目的。脫了殼的木馬,就失去了保護,幾乎所有的殺毒軟件或木馬查殺工具都能查殺它。當從網絡上下載了某些懷疑有木馬的程序,可以先用本文介紹的方法來檢查一下,看看它是否被加了殼,如果是就要提高警惕了,建議不要使用。

copyright © 萬盛學電腦網 all rights reserved