基本介紹
- 外文名:CodeRed.F
- 發現:2003 年 3 月 11 日
- 類型:Trojan Horse, Worm
- 受感染的系統: Microsoft IIS
基本資料,防護,威脅評估,廣度,損壞,分發,感染,檢查,注意,建議,手動防毒,刪除蠕蟲檔案,編輯註冊表,
基本資料
更新: 2007 年 2 月 13 日 11:44:38 AM
別名: CodeRed.v3, CodeRed.C, CodeRed III, W32.Bady.C, W32/CodeRed.f.worm [McAfee], Win32.CodeRed.F [CA]
CVE 參考: CVE-2001-0500 CVE-2001-0506
CodeRed.F 與原來的 CodeRed II 只有兩個位元組之差。CodeRed II 會在年份大於 2001 時重啟系統,但該變種沒有這種情況。
如果 CodeRed.F 被保存到檔案,Symantec 防病毒產品會將其檢測為 CodeRed Worm。該蠕蟲還會放置會被檢測為 Trojan.VirtualRoot 的特洛伊木馬程式。現有的 CodeRed 防毒工具將會正確地檢測和殺除該新變種。
有關如何充分利用 Symantec 技術抗擊 CodeRed 威脅的信息,請單擊此處。
CodeRed.F 掃描可攻擊的 Microsoft IIS 4.0 和 5.0 Web 伺服器的 IP 地址,並利用緩衝區溢出漏洞感染遠程計算機。該蠕蟲會將自己直接注入記憶體,而不是作為檔案複製到系統上。此外,CodeRed.F 會創建被檢測為 Trojan.VirtualRoot 的檔案。Trojan.VirtualRoot 會給予黑客對 Web 伺服器的完全遠程訪問許可權。
如果運行的是 Microsoft IIS 伺服器,建議您套用最新的 Microsoft 修補程式來預防該蠕蟲的感染。
IIS 的累積修補程式,其中包括先後發布的四個修補程式。
此外,Trojan.VirtualRoot 會利用 Windows 2000 的漏洞。下載和安裝以下 Microsoft 安全修補程式以解決該問題並組織該特洛伊木馬再次感染計算機。
計算機一旦遭到 CodeRed.F 攻擊,就很難確定該計算機是否也暴露在其他威脅之下。
除非您十分確定該計算機上未執行惡意活動,否則請完全重新安裝作業系統。
防護
* 病毒定義(每周 LiveUpdate™) 2001 年 8 月 5 日
* 病毒定義(智慧型更新程式) 2001 年 8 月 5 日
威脅評估
廣度
* 廣度級別: Low
* 感染數量: 0 - 49
* 站點數量: 0 - 2
* 地理位置分布: Medium
* 威脅抑制: Moderate
* 清除: Moderate
損壞
* 損壞級別: Medium
* 有效負載: Installs a backdoor Trojan on the Web server allowing remote execution/access
* 危及安全設定: Creates backdoor in Web server
分發
* 分發級別: High
* 連線埠: 80
* 感染目標: Microsoft IIS Web Server
CodeRed.F 利用 Idq.dll 檔案中已知的緩衝區溢出漏洞,將自己安裝在隨機的 Web 伺服器上,從而進行傳播。只有尚未使用最新的 Microsoft IIS 服務包修補的系統才可能受到感染。
Microsoft 已發布了有關該漏洞的信息,提供了 IIS 的累積修補程式,其中包括先後發布的四個修補程式。建議系統管理員套用 Microsoft 修補程式以防止被該蠕蟲感染並阻止其他非授權訪問。
感染
當 Web 伺服器受到感染時,該蠕蟲會:
1. 調用其初始化例程,確定 IIS Server 服務的進程地址空間中 Kernel32.dll 的基本地址。
2. 查找 GetProcAddress 的地址。
3. 開始調用 GetProcAddress 來獲取對一組 API 地址的訪問許可權,例如:
LoadLibraryA
CreateThread
..
..
GetSystemTime
然後,該蠕蟲會載入 WS2_32.dll 以訪問 socket、closesocket 和 WSAGetLastError 等函式。該蠕蟲會從 User32.dll 獲得 ExitWindowsEx,用於重新啟動系統。
檢查
主執行緒檢查兩個不同的標記符:
1. 第一個標記符是“29A”,它控制 Trojan.VirtualRoot 的安裝。
2. 另一個標記符是名為“CodeRedII”的信號。如果存在該信號,此蠕蟲會進入無限睡眠狀態。
接著,主執行緒將檢查默認語言。如果默認語言是中文(無論繁體還是簡體),它將創建 600 個新執行緒,否則,只創建 300 個。這些執行緒將產生一些隨機的 IP 地址,用於搜尋要感染的新 Web 伺服器。這些執行緒運行時,主執行緒會將 Cmd.exe 檔案從 Windows NT \System 資料夾複製到下列資料夾(如果存在):
* C:\Inetpub\Scripts\Root.exe
* D:\Inetpub\Scripts\Root.exe
* C:\Progra~1\Common~1\System\MSADC\Root.exe
* D:\Progra~1\Common~1\System\MSADC\Root.exe
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots
(通過添加幾個新鍵並將用戶組設定為 217),黑客就能夠傳送 HTTP GET 請求以在受感染的 Web 伺服器上運行 scripts/root.exe ,從而完全控制該 Web 伺服器。
主執行緒在中文系統中睡眠 48 小時,在其他系統中睡眠 24 小時。這 300 或 600 個執行緒將繼續運行並試圖感染其他系統。主執行緒從睡眠中喚醒後將導致計算機重新啟動。另外,所有執行緒都會檢查當前月份是否是 10 月或超過 10 月,或當前年份是否大於 34951 年,如果是,將重新啟動計算機。
此蠕蟲將命令解釋程式 (cmd.exe) 複製到 IIS Web 伺服器的默認可執行目錄下,從而實現遠程控制。它還將一個屬性設定為隱藏、系統和唯讀的檔案以 C:\Explorer.exe 或/和 D:\Explorer.exe 形式放入根驅動器上。Norton AntiVirus 認為這些特洛伊木馬檔案就是 Trojan.VirtualRoot。該蠕蟲會以打包的形式攜帶此檔案並在放入此檔案時解包。
感染持續 24 或 48 小時,然後重新啟動計算機。不過,如果沒有安裝 Microsoft 最新的修補程式,同一台計算機可能被再次感染。如果月份是 10 月或超過 10 月,或年份大於 34951 年,也將重新啟動計算機。當計算機重新啟動時,Trojan.VirtualRoot 在系統試圖執行 Explorer.exe 時執行(根據 Windows NT 執行程式時解析或搜尋程式路徑的方式)。該特洛伊木馬 (C:\Explorer.exe) 將睡眠幾分鐘,然後重新設定註冊表鍵以確保其已被更改。
注意:重啟後,記憶體駐留的蠕蟲將處於不活動狀態;即在已重啟的受感染系統上,該蠕蟲將不嘗試將其自身傳播到其他計算機,除非碰巧該計算機受到再次感染。
該特洛伊木馬還會修改註冊表鍵:
HKEY_LOCAL_MACHINE\Software\Microsoft\
Windows NT\CurrentVersion\Winlogon
將值 SFCDisable
設定為 0xFFFFFF9D
這會禁用系統檔案檢查程式 (SFC)。
注意
* 如果運行 Microsoft FrontPage 或此類用於設計網頁的程式,計算機上可能會安裝 IIS。
Symantec Manhunt 2.2 使用其 Anomaly Engine 將 CodeRed.F 檢測為“HTTP Malformed URL”,如果套用了最新的特徵更新,在混合模式下會將其檢測為“HTTP_IIS_ISAPI_Extension”。
建議
賽門鐵克安全回響中心建議所有用戶和管理員遵循以下基本安全“最佳實踐”:
* 禁用並刪除不需要的服務。 默認情況下,許多作業系統會安裝不必要的輔助服務,如 FTP 伺服器、telnet 和 Web 伺服器。這些服務可能會成為攻擊所利用的途徑。 如果將這些服務刪除,混合型威脅的攻擊途徑會大為減少,同時您的維護工作也會減少,只通過補丁程式更新即可完成。
* 如果混合型威脅攻擊了一個或多個網路服務,則在套用補丁程式之前,請禁用或禁止訪問這些服務。
* 始終安裝最新的補丁程式,尤其是那些提供公共服務而且可以通過防火牆訪問的計算機,如 HTTP、FTP、郵件和 DNS 服務(例如,所有基於 Windows 的計算機上都應該安裝最新的 Service Pack)。. 另外,對於本文中、可靠的安全公告或供應商網站上公布的安全更新,也要及時套用。
* 強制執行密碼策略。 複雜的密碼使得受感染計算機上的密碼檔案難以破解。這樣會在計算機被感染時防止或減輕造成的損害。
* 配置電子郵件伺服器以禁止或刪除帶有 vbs、.bat、.exe、.pif 和 .scr 等附屬檔案的郵件,這些檔案常用於傳播病毒。
* 迅速隔離受感染的計算機,防止其對企業造成進一步危害。 執行取證分析並使用可靠的介質恢復計算機。
* 教育員工不要打開意外收到的附屬檔案。 並且只在進行病毒掃描後才執行從網際網路下載的軟體。如果未對某些瀏覽器漏洞套用補丁程式,那么訪問受感染的網站也會造成病毒感染。
Symantec 安全回響中心已經創建了一套工具以對計算機進行防漏洞性評估,該工具還可以殺除 CodeRed 蠕蟲和 CodeRed II。要想獲得該 CodeRed 防毒工具,請單擊此處。如果因為某種原因而無法獲得或使用 CodeRed 防毒工具,就必須手動殺除該蠕蟲。
手動防毒
刪除蠕蟲檔案
1. 終止與所放置的特洛伊木馬(NAV 將其檢測為 Trojan.VirtualRoot)相關的當前進程:
1. 按 Ctrl+Alt+Delete,並單擊“任務管理器”。
2. 單擊“進程”選項卡。
3. 單擊“映像名稱”列標題,按字母順序對進程排序。您會發現有兩個名為 Explorer.exe 的進程,一個是正常的進程,另一個就是特洛伊木馬。
4. 要確保終止正確的進程,請單擊“查看”,然後單擊“選擇列…”。
5. 選中“執行緒計數”框,然後單擊“確定”。
6. 此時,任務管理器中就會出現一個新列,列出與每個進程相關的當前執行緒數量。(可能需要滾動到右側才能看見。)
7. 在兩個 Explorer.exe 進程中,單擊只有一個執行緒的進程。
8. 選中後,單擊“結束進程”。(出現警告訊息。)
9. 單擊“是”終止該進程。
10. 單擊“檔案”,然後單擊“退出任務管理器”。
2. 然後,刪除在受感染系統上創建的 Explorer.exe 檔案。這些檔案具有隱藏、系統和唯讀屬性。
1. 單擊“開始”,然後單擊“運行”。
2. 鍵入 cmd,然後按 Enter 鍵。
3. 鍵入下列命令:
cd c:\
attrib -h -s -r explorer.exe
del explorer.exe
鍵入每個命令後按 Enter 鍵。
Type d:
5. 然後按 Enter 鍵。
這將更改到驅動器 D(如果存在)。(如果沒有驅動器 D,則跳到步驟 f。)
鍵入下列命令:
cd d:\
attrib -h -s -r explorer.exe
del explorer.exe
鍵入每個命令後按 Enter 鍵。
6. 鍵入 exit,然後按 Enter 鍵。
3. 使用 Windows 資源管理器刪除以下四個檔案(如果存在),它們是 %Windir%\root.exe 檔案的副本:
* C:\Inetpub\Scripts\Root.exe
* D:\Inetpub\Scripts\Root.exe
* C:\Progra~1\Common~1\System\MSADC\Root.exe
* D:\Progra~1\Common~1\System\MSADC\Root.exe
(出現“計算機管理”視窗。)
5. 在左窗格中,導航到 \計算機管理(本地)\服務和應用程式\默認 Web 站點。
7. 請繼續下一部分。
編輯註冊表
警告:強烈建議您在對系統註冊表進行任何更改之前先將其備份。錯誤地更改註冊表可能會導致數據永久丟失或檔案損壞。應只修改指定的鍵。繼續操作之前,請參閱文檔“如何備份 Windows 註冊表”。
1. 單擊“開始”,然後單擊“運行”。(將出現“運行”對話框。)
2. 鍵入 regedit,然後單擊“確定”。(將打開註冊表編輯器。)
3. 導航至以下鍵:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters\Virtual Roots
在右窗格中,會看見幾個值,其中兩個是 CodeRed II 所創建的,可以進行刪除。更改其他值。
4. 選擇值:/C
按 Delete 鍵,然後單擊“是”確認。
5. 選擇值:/D
6. 按 Delete 鍵,然後單擊“是”確認。
7. 雙擊值:/MSADC
8. 從當前值數據中僅刪除數字“217”並替換為數字“201”,然後單擊“確定”。
9. 雙擊值:/Scripts
10. 從當前值數據中僅刪除數字“217”並替換為數字“201”,然後單擊“確定”。
注意:CodeRed 防毒工具會從註冊表完全刪除 /MSADC 和 /Scripts 項。使用該工具後,會在重新啟動 IIS 時使用正確的值重新創建這些項。
11. 執行下列操作之一:
* 如果不是 Windows 2000 系統,則跳到步驟 16。
* 如果是 Windows 2000 系統,則跳到步驟 13。
12. 導航至以下鍵:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\WinLogon
13. 在右窗格中,雙擊值:SFCDisable
14. 刪除當前的值數據,然後鍵入 0(這是數字零,不是字母“O”)。單擊“確定”。
15. 退出註冊表編輯器。
16. 重新啟動系統以確保 CodeRed II 已被正確殺除。