ASP 木馬常濫用三大 COM 元件與 Cmd.exe 實現檔案操作、指令執行、目錄遍歷。透過登錄修改、權限鎖定、元件註銷等手段,可大幅提高攻擊門檻。操作後需重新啟動 IIS (iisreset) 生效。
HKEY_CLASSES_ROOT\Scripting.FileSystemObject → 改名 FileSystemObject_ChangeNameCLSID 子鍵值。RegSvr32 /u C:\WINNT\SYSTEM\scrrun.dllcacls C:\WINNT\system32\scrrun.dll /e /d guestsHKEY_CLASSES_ROOT\WScript.Shell → WScript.Shell_ChangeNameHKEY_CLASSES_ROOT\WScript.Shell.1 → WScript.Shell.1_ChangeNameCLSID 值。HKEY_CLASSES_ROOT\Shell.Application → Shell.Application_ChangeNameHKEY_CLASSES_ROOT\Shell.Application.1 → Shell.Application.1_ChangeNameCLSID。cacls C:\WINNT\system32\shell32.dll /e /d guestscacls C:\WINNT\system32\Cmd.exe /e /d guests
| 手段 | 對象 | 指令/路徑 | 影響面 |
|---|---|---|---|
| 登錄改名 | FileSystemObject, WScript.Shell, Shell.Application | HKCR\... 改名 + CLSID 同步 | 木馬失效,自有程式需改呼叫新名稱 |
| 註銷元件 | scrrun.dll (FSO) | RegSvr32 /u | 所有 FSO 功能失效 |
| NTFS 拒絕 Guests | scrrun.dll, shell32.dll, Cmd.exe | cacls ... /e /d guests | 匿名/低權限脈絡無法載入,管理員不影響 |
核心原則: 最有效的防護仍是「纏深防禦」:作業系統修補、最小權限原則、應用程式輸入驗證、WAF/防火牆、定期掃描與審計。上述手段屬於「提高攻擊成本」的補充措施,不可作為單一依賴。