駭客任務實戰--防護篇
產品編號:F8436
定價:420元
程秉輝 著
|
|
本期書摘--木馬程式的防護、搜索與摧毀(3)
如何判斷與找出隱藏在登錄(Registry)資料中設定執行的
木馬程式?
一般而言, 只要是多種功能的任何一種木馬程式(特別是
所謂的木馬 Server 程式), 一定都具備一個共通的特點
:都會設定一進入 Windows 之後安安靜靜, 無聲無息的
自動執行, 所以若能對一進入 Windows 就自動執行的幾
個項目進行徹底完整的檢查, 絕對可以將 98% 秘密隱藏
在您電腦中的各類木馬程式一網打盡. 想要一進入
Windows 就自動執行必須在啟動資料夾( 含 startUp 資
料夾), Win.ini, System.ini, 登錄資料機碼(Registry)
...四個地方進行設定, 這就是讓木馬程式無所遁形的主
要原因.
隱藏處【啟動資料夾】(或【StarUp 資料夾】)
這是沿自於 Windows 3.1 時代就有的傳統做法, 但也是
最笨拙的方式, 因為非常容易就被發現了, 雖然許多木
馬程式並不會藏匿在這裡, 不過市面上有些教導駭客的
書卻告訴駭客們將木馬程式設定在這裡自動執行, 如何
將這類笨拙三角貓設定的木馬程式找出來並刪除掉 ?
請從【開始】/程式集/StarUp , 如果【StarUp 資料夾】
是空的就不用再看下去了, 如果有的話則請再三檢查該
程式是否為您安裝過某個程式或工具, 而且需要一進入
Windows 中就自動執行, 若不是就可按下滑鼠右鍵選擇
刪除,如果不確定可以先將該項目複製到其他資料夾中,
然後將它先刪除, 再重開機進入 Windows 使用, 如果有
問題或某工具程式無法使用, 那就再將它複製回來, 否
則就繼續這樣使用吧!
隱藏處 Win.ini
這也是沿自於 Windows 3.1 時代的舊方法, 也是為了維
持與某些 Windows 3.x 版的程式而保留的, 不過對於駭
客而言卻比前一個啟動資料夾有用的多, 因為目前幾乎
所有的 Windows 都不會用到它, 而大多數的 Windows
子民也不會去注意它, 因此當然就變成許多駭客植入木
馬程式後設定讓 Windows 自動執行的最愛, 所以請您使
用任何一個文書編輯程式將 Win.ini 讀進來後, 查看
【Windows】區間中的 Load 與 Run 參數是否有設定,
查看所設定的是否是您安裝要使用的程式, 如果不是那
可能就是木馬程式的重要嫌疑犯了.
[windows]
load=wpsload.exe c:\widows\lmouse\lbuttons.exe
NullPort=None
run=
SwapMouseButtons=No
device=HP LaserJet 4P(T),dlhp4s.LPT1;
load 參數執行兩個程式, 一個是 wpsload.exe,
一個是lbuttons.exe, 中間以一個空白隔開
run 參數沒有執行任何程式
一般而言目前大多數的情況下都並不會有 Run 或 Load
參數設定或是後面是空的, 因此若有指定某個程式則
80% 肯定是木馬程式或病毒程式.
隱藏處 System.ini
可能許多熟悉 Windows 3.1 的讀者會覺得奇怪: 在
System.ini 中可以設定自動執行某個程式嗎? 基本
上來說的確是不行的, 但是透過 shell 這個參數就
可以化不可能為事實, 也就是在[boot]區間 進行如
下的設定:
[boot]
shell=Explorer.exe c:\windows\server.exe
這樣當一進入 Windows 時就會自動執行檔案總管,
檔案總管也會自動去執行 server.exe 這個程式, 如
此就可以達到載入木馬程式的目的, 所以我們就必須
要檢查一下您 Windows 目錄下的 System.ini 中是
否有這樣的設定, 如果有的話則是 99.99% 是木馬程
式, 因為幾乎沒有任何的程式或應用軟體會做這樣的
設定, 所以若有這項設定就殺掉它!
隱藏處 登錄資料中的機碼(Registry)
這是許多木馬程式最常慣用的方式, 而對於許多一般
電腦使用者而言也是最不容易找到的地方, 所以藏在
這裡非常恰當, 而在登錄資料(Registry) 中可設定
自動執行的機碼可分為三種.
一進入 Windows 就自動執行
這是一般最常見的機碼,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
(Win9x 與 WinMe 才有)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce
(Win9x 與 WinMe 才有)
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Runonce
建議您使用 StartupCPL 這個免費的小工具來幫您
檢查, 而不要使用登錄編輯程式(Registry.exe).
目前一般屬於 Windows 系統執行的程式多半位於
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
這個機碼中, 通常般含下列這幾個程式:
internat.exe scanregw.exe SysTray.exe
taskmon.exe Sage.exe Rundll32.exe mstask.exe
自動載入執行的 DLL 檔案
有些木馬程式可能會設計成 .DLL 或 .VXD 的形式,
然後利用一進入 Windows 時系統自動載入驅動程式
的方式來執行, 雖然目前這類的木馬程式很少見,
但在理論上是可行的, 為了要能有效的搜尋與摧毀
可能存在的木馬程式, 還是要徹底檢查一下 Windows
載入各類驅動程式的設定機碼
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services
由於這些機碼中許多設定都與系統或週邊裝置有關,
再加上並不是那麼容易看出來是否為木馬程式, 所以
除非確定它真是重要的嫌犯, 否則不要輕易刪除.
執行其他檔案實附帶執行
HKEY_CLASSES_ROOT\exefile\shell\open\command
@="\"%1\"%*"
這是一個非常特別的機碼, 主要是藉由每次執行任何
一個執行檔時變趁機執行一次木馬程式, 如此就可以
保持木馬程式一直在 Windows 中執行, 而且這個機
碼很難被注意或發現.
@="\"%1\"%*" 是一般正常的值, 但如果有一個執行
檔, 例如: @="windows.exe \"%1\"%*" 有一個
windows.exe , 就 99.99% 肯定中毒.
-- 待續
|