歡迎登入資安人
若您還不是會員,請點選下方加入會員
忘記密碼
加入資安人會員
登入
新聞
觀點
專題
解決方案
活動
訂閱電子報
資安人粉絲團
聯絡我們
關於我們
合作詢問
隱私權政策
香港商法蘭克福展覽有限公司台灣傳媒分公司
110 台北市信義區市民大道六段288號8F
886-2-8729-1099
新聞
觀點
專題
解決方案
活動
訂閱電子報
登入
登入
訂閱電子報
新聞
觀點
專題
解決方案
活動
觀點
您現在位置 : 首頁 >
觀點
木馬程式檢測程序與技巧Step By Step
2005 / 02 / 03
文/路克
木馬程式都有一個伺服端與用戶端,一般而言在受害者機器上的,稱為伺服端(Server);遠端進行操控的稱為用戶端(Client)。木馬程式具有隱蔽、自動啟動、欺騙、自我恢復、破壞、傳輸資料的行為特徵,以下針對木馬程式的各種屬性作探討,以研擬相關對策,收知己知彼之效。
木馬的種類
依照木馬程式目的來分類:其最終的目的就是蒐集情資、等待時機執行破壞任務、當作跳板進行滲透。其手段包含匿蹤、佔領、遠端遙控、截聽封包、記錄鍵盤輸入資料、破壞、傳遞情資、提供封包轉送達到跳板功能…等。絕大部分的木馬程式所具備的功能與目的,不僅具備單一功能、單一目的,而是具備混合功能(hybrid) 與多目標導向。
依照木馬的植入技術來分類:一般常見的有執行檔(Executable File)、透過動態連結檔注射( DLL Injection)、動態網頁伺服程式木馬(ASP、PHP Trojan)、透過瀏覽器漏洞入侵的網頁木馬(一般稱為BMP Trojan或 GIF Trojan)以及透過電子郵件入侵的郵件附件木馬。
木馬的藏身處
木馬程式主要藏身於系統目錄、易忽略之目錄,例如:Windows 的系統目錄 "winnt\system"、"winnt\system32",以及其下的子目錄。木馬的藏身處,主要考慮不容易被發現的隱蔽性,放在不常用的目錄中,以類似於系統程式名稱的方式掩人耳目,像是 regedit 跟 regedlt 或 reged1t,這三個檔案名稱,不仔細看不容易發現有異。目的就是為了達到匿蹤的效果,以延長其任務運作時間。
木馬的啟動方式
在Windows 2000中的註冊表(Registry)中,有幾組機碼可以使木馬程式於開機時啟動,或者經由其他事件的發生,連帶啟動木馬程式,以達到長駐於系統之中的目的。包括:啟動區、連帶啟動區…等,皆為常見啟動木馬的參數存放處,整理於表1。
藏匿於系統啟動選單之中,以Windows 2000 為例:在“C:\Documents and Settings\Administrator\「開始」功能表\程式集\啟動”及“C:\Documents and Settings\All Users\「開始」功能表\程式集\啟動”兩處均可能成為木馬藏匿的地點。藏匿於此,於開機過程中便會自動啟動木馬程式。(使用者名稱為Administrator或其他名稱。)
藏匿於一般程式中,透過用戶自網際網路下載至內部網路執行,該程式遭到置換或感染,當程式一執行便將木馬啟動,而產生兩個不同的程序,一個是原本應用程式的程序,另一個則是木馬程序,例如:網路上常常可見 flash製作的動畫檔案,當編譯為執行檔案時,便可將木馬藏於其中。
木馬檢測程序說明
1. 接獲資訊安全通報,展開清查,並提升監控層級。若發現可疑程式,應仔細確認並通報。
2. 以現有之防毒軟體、木馬偵測程式可偵測出該木馬程式,可使用現成工具軟體隔離並移除,完成之後應向上呈報,反應至CERT等專責單位,以收區域聯防之效。
3. 無法以現有之防毒軟體、木馬偵測程式偵測出該惡意程式,或者是新版的病毒碼未釋出,但是已經在安全通報中詳述該程式之特徵與處置方法。應依既定之處理方式完成隔離、清除、記錄相關作業,並向上呈報。
4. 發現未知之可疑程式,尤其是大規模的感染情況,應先向上呈報。若已經具備木馬檢測經驗與能力,可依處理程序針對本機、網路通訊、稽核檔案(本機、防火牆等),進行檢測與清除。清除步驟與檢核表請參考表2。檢測過程的畫面與相關資料檔案,應蒐整封裝,以利專業單位進行分析;若未具備相關處置能力與經驗,應該立即尋求協助,並監控網路通訊行為與保存現場,待專業人員進行處置。
5. 若該事件擴大為大規模之案件,則應組成專案小組進行調查處置,以避免案件危害持續擴大。
木馬檢測作業步驟與注意事項
1. 一般而言,檢測木馬程式的步驟,包含本機檢測、網路通訊的檢測與記錄以及稽核檔案的過濾分析,綜合以上三大步驟才可以完整地過濾出可疑之程序(Process)和可疑的主機。在《資安人》第8期p.117至p.119的文章中已提及相關步驟與工具,本文在此僅稍作補充。
2. 本機檢測的項目包含:
檢查可疑之程序,比對Windows系統之正常程序,找出產生該程序的檔案所在,檢查檔案名稱、大小及相關屬性。建議使用Process Explorer,它可以檢測出掛載於正常程序下的子程序。
檔案名稱為原作業系統正常之應用程式,無法判定其是否為正常檔案,或是木馬偽裝。可與正常檔案(同一作業系統且相同版本)進行檔案HASH值(MD5)比較。 ?檢查機碼(Registry)之特定欄位,請參考上頁表1(常見遭木馬更動之註冊表清單)。若在上述欄位找到相同之可疑程式,大概有九成的機率確定是異常的程序所為。
將上述可疑之程序另外複製保存,並抓下當時之畫面(Screenshot),並將可疑的Registry輸出,封存以利後續處置。
3. 通訊檢測︰
列出對外開放之服務埠號,找出可疑程式所開放的通訊服務。如:activeport、fport。
使用 netstat –an 10 > comm.log 指令,可將相關通訊連線的過程記錄於 comm.log 檔案中。
運用現成之連線監聽工具,記錄封包與流量,如:windump、ethereal、sniffer。
4. 稽核檔檢測
針對可疑主機之IP位址,調出相關日期的防火牆、入侵偵測系統的稽核檔案(Log),進行過濾與比對。
若本機安全性稽核已經開啟,亦可參考相關之系統、安全事件之稽核檔案。
分析稽核檔案,可以回溯遭植入木馬的日期,以及相關之資料流向,再者,亦可追朔來源主機位址及其他相關的受害主機位址。
5. 封存項目
將上述之檢測資料與結果,利用壓縮的方式,加密封存,一併提交給專業驗測單位進行分析。
封存的項目應包含:可疑程式本身、相關資訊的快照(如:Process 列表、檔案屬性及檔案目錄之畫面)、註冊機碼、通訊檢測記錄檔、相關之稽核檔案。
6. 檢核表
本文針對以上檢測程序,彙整為木馬程式檢測檢核表(checklist)供參考使用。請參考表2。
7. 報告格式
木馬檢測報告的內容,除了作為總結整個木馬檢測任務之外,還包含行政上之程序說明、檢討處置過程與需要加強之處。一般應該具備以下項目:
基本資料:單位、人員、聯絡方式。
案件概述:狀況描述、發現日期、報案日期、結案日期等重要資訊。
受檢測環境資料:作業系統、已安裝之應用程式、該主機提供之服務與用途、存放資料之機密等級、信賴網域及主機等相關資料。
案件及處置概述:處置步驟概述、參與人員,通報經過與通報時間。
可疑程式描述:路徑、檔案名稱、封存檔名稱與內容對照表,可將前述之檢核表作為附件。
損害估計與檢討:本事件所造成網路、檔案、擴散範圍及設備之損害估計,相關檢討與未來需求。
資安是無止境的輪迴
圖2可說明處置木馬程式各階段的任務狀況與目標,以及參與人員之權責。在未發佈安全通報之前,必須做好資安稽核與抽查、對於各設施的異常警示作分析處置,方可主動出擊,防範於未然。發現木馬程式或是接到安全通報時,應在第一時間依程序實施檢測,完成監控與現場保存,以及尋求專業協助。向上呈報是必要的程序,除了讓資安管制單位可以掌握災情,透過通報體系提醒各單位防範,亦可充份得到上級長官的支持,編成專案小組辦理。完成檢測工作之後,最重要的還是進行損害評估、依災難復原計劃逐步恢復運作,並提出專案報告。後續則針對弱點進行補強、更改防火牆及其他設施之組態與規則設定,以有效杜絕類似之資安事件再度重演。
木馬程式的演進,間接促使防毒軟體、掃木馬軟體核心引擎的升級,當新的木馬程式採用更高深的技術,大玩捉迷藏遊戲,相對的,偵測軟體功能和木馬檢測技巧就再度提升。”Security is an ongoing process; it掇 never done.”, 資安是無止境的輪迴,沒有所謂的結束,天天都有新的挑戰。
表1 木馬可能藏匿之註冊表清單
1. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
2.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
3.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
4.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
5.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceSetup
6.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceSetup
7.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices
8.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
9.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
10.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce
11.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
12.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run
13.HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\Userinit
14.HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\WinLogon
15. HKEY_CURRENT_USER\Software\Microsoft\Windows\Current Version\Explorer\Shell Folders
16. HKEY_CLASSES_ROOT\txtfile\shell\open\command
17. HKEY_CLASSES_ROOT\Briefcase\shell\open\command
18. HKEY_LOCAL_MACHINE\Software\Microsoft\Active Setup\Installed Components\
19. HKEY_CLASSES_ROOT\exefile\shell\open\command
20. HKEY_CLASSES_ROOT\???file \shell\open\command (???)表示可能為任何副檔名之名稱
木馬程式
最新活動
2025.06.25
資安人講堂:構築製造業資安核心 – 零信任架構的落地實戰
2025.06.24
漢昕科技X線上資安黑白講【檔案安全新防線,資料外洩零容忍——企業資安全面升級】2025/6/24全面開講!
2025.06.25
拆解 ISO 27001 報價公式:控好預算、加速資安合規
2025.06.27
以資安及風險角度重塑企業韌性
2025.06.27
以資安及風險角度重塑企業韌性
2025.07.09
AI應用下的資安風險
看更多活動
大家都在看
趨勢科技與Palo Alto Networks 發布多項重要安全更新
Microsoft 推出 2025年6月 Patch Tuesday 每月例行更新修補包
Mirai 殭屍網路鎖定 Wazuh 開源資安平台漏洞發動攻擊
大規模暴力破解攻擊鎖定 Apache Tomcat 管理介面
Qilin 勒索軟體集團利用 Fortinet 漏洞發動攻擊 已影響全球 310 家機構
資安人科技網
文章推薦
Jamf發表AI驅動的Apple裝置管理與強化資安功能
EchoLeak 揭示新型態的零點擊AI資安漏洞「LLM範疇突破」
光盾資訊促台日金融資安高層關鍵對話