◆周敏
(江蘇省靖江中等專業學校 江蘇 214500)
本次受到攻擊的服務器是一臺2014 年采購的某品牌機架式服務器,板載SAS RAID 卡,服務器上一共掛載了5 塊硬盤,其中第1、2 兩塊硬盤做RAID 1 磁盤鏡像,分有三個分區,盤符依次為C、D、E,其中C 盤安裝了Windows 2008 R2 操作系統;其余三塊硬盤為數據盤,未做RAID 冗余,每塊硬盤有一個分區,分配的盤符依次為F、G 和H。
日常巡檢時發現服務器對遠程訪問無響應,現場操作鼠標、鍵盤無反應,斷電重啟后操作系統無法自舉,顯示器上顯示一個QQ 號。
通過與該QQ 號交流得出,入侵者對原所有盤符進行了加密鎖定,需要支付一定的解密費用,支付方式為支付寶或某虛擬貨幣。
筆者在發現異常后第一時間切斷網絡和電源,并啟動了應急預案,準備U 盤啟動盤和移動硬盤,開始著手故障分析和修復。
使用U 盤WinPE 啟動后,依次掛載不同數據盤,均能正常訪問數據,但在掛載系統盤時發現提示沒有分區信息,該硬盤的分區信息被惡意刪除了,之后通過分區修復工具順利還原了分區信息,并在進行數據備份時發現回收站內有一個名為disklock 的文件夾,另外還發現了IIS 漏洞掃描工具IISPutScanner、IP 掃描工具IpTestTool、超級弱口令檢查工具SNETCracker 和遠程控制軟件向日葵TeamViewer,于是便對這些異常出現的工具也進行了備份。
激活主引導分區后,將硬盤用安全模式啟動,“我的電腦”里只有C 盤,看不到同一塊硬盤中的D 和E 兩個分區。啟動操作系統的“磁盤管理”工具,試圖從該工具中打開D 盤,但卻彈出“本次操作由于這臺計算機的限制而被取消,請與你的系統管理員聯系。”的限制提示,不過,可以通過cmd 窗口內執行DOS 命令的路徑訪問D 盤。從提示內容看,是當前用戶對D 盤無訪問權限。
筆者通過執行gpedit.msc 打開“本地組策略編輯器”,在“用戶配置/管理模板/Windows 組件/Windows 文件資源管理器”節中找到“防止從‘我的電腦’訪問驅動器”和“隱藏‘我的電腦’中的這些指定的驅動器”,雙擊彈出設置界面均顯示狀態為“未設置”,以為組策略并未配置任何限制,重置狀態后也未能解決問題。筆者發現將D 分區盤符更改為原有盤符之外的任意一個盤符(如X 盤)能正常訪問,至此,筆者懷疑是disklock 軟件對D-H 盤符進行了鎖定。
分析disklock 文件夾中的文件,只有一個可執行文件屬于綠色版軟件,經過病毒掃描未發現有病毒,雙擊運行該可執行文件,但因需要輸入登錄密碼而無法進入程序主界面。互聯網上沒有找到有關該軟件的相關資料,筆者將該可執行文件拷貝到另一臺電腦,嘗試使用調試工具進行調試,發現在新的系統環境下運行該程序并不需要輸入密碼,該可執行文件啟動后,標題欄名稱應該為“Disk Drive Security”,軟件版權歸“Ixis Research,Ltd.”所有,主頁為“http://www.getfreefile.com/disksecurity.html”(該主頁無法訪問)。很多軟件下載網站均能下載到該軟件,但沒有關于該軟件登錄密碼研究的相關資料。
該軟件的主要功能是對指定盤符進行隱藏、鎖定和禁止自動運行操作,對外部設備實現寫保護操作,設置可以禁止自動運行的驅動器類型。
因為在新環境下不需要輸入密碼,筆者猜測該軟件將密碼保存在系統中某個位置,通常是Windows 系統目錄中的某個文件或者注冊表里。
通過使用增強型任務管理器Process Explorer 對disklock 訪問的磁盤文件進行監控,沒有發現明顯的線索。使用系統進程監視器Process Monitor 對disklock 訪問的注冊表項進行監控,發現該應用程序實現主要功能時共訪問了注冊表中的六個表項,具體見表1。

表1 軟件訪問注冊表明細
各表項的具體功能為:LoginPrompt 項記錄了軟件的登錄密碼;NoDrives 項可設置隱藏磁盤信息;NoViewOnDrive 項設置禁止使用的驅動器;NoDriveAutoRun 項設置禁止自動運行的驅動器;NoDriveTypeAutoRun 項設置禁止自動運行的驅動器類型;WriteProtect 項設置對外部設備是否進行寫保護。
通過取消密碼和設置不同密碼等操作,發現當軟件取消密碼時會刪除注冊表中的LoginPrompt 項,當設置了密碼時,LoginPrompt 項保存了經過加密的密碼信息,經分析,密碼的密文由密碼明文按字節異或0xED 產生。所以:
1)如果需要取消密碼,只要刪除LoginPrompt 項即可;
2)如果需要得到密碼,只要將密文再次異或0xED 即可。
在受到攻擊的服務器上打開注冊表,找到并刪除LoginPrompt項,運行軟件發現D-H 盤符確實被鎖定,解除鎖定并重啟服務器后所有故障消失,至此,服務器得到修復。
鑒于服務器上多了兩個綠色版的軟件,筆者猜測服務器受到了IPC 入侵攻擊,IPC 服務通常部署在137、138、139 和445 端口上,本次受到攻擊的服務器開通了445 端口。
來自445 端口的IPC 一次成功的攻擊過程大概為,首先通過445端口建立IPC 空會話,然后獲取全部登錄賬號,在使用掃描軟件尋找到弱口令賬戶后,登錄并向共享文件夾復制惡意程序,最后通過執行惡意程序達成攻擊者目的。
考慮到服務器的445 端口并沒有開放到互聯網,所以懷疑是受到了來自局域網內某臺計算機的入侵攻擊。眾所周知,Windows 2008 R2每次IPC 連接成功后會形成一條ID 為4624 的安全事件日志,而連接失敗后則形成以一條ID 為4625 的安全事件日志,掃描軟件在測試弱口令賬戶時一定會產生失敗的IPC 連接日志記錄,記錄里包含攻擊主機的主機名、IP 地址和端口號,借助這些信息可以逆向追查到攻擊主機。
因為在服務器上發現了多款掃描軟件,所以對可能是入侵途徑的猜測可信度比較高。筆者在查看系統安全日志時發現所有日志均被清空,已經無法進一步確認攻擊源,這一異常現象說明攻擊者清理了部分攻擊痕跡,但可進一步提高對入侵途徑猜測的可信度。
為什么之前通過組策略重置“防止從‘我的電腦’訪問驅動器”(鎖定驅動器功能)和“隱藏‘我的電腦’中的這些指定的驅動器”(隱藏驅動器功能)兩項沒能解決問題呢?
通過對組策略設置所訪問的注冊表項進行監控,發現組策略所有的操作都是針對注冊表中HKCU 節中的NoViewOnDrive 和NoDrives注冊表項進行的,而disklock 軟件則同時對HKCU 和HKLM 兩個節中的對應表項進行了設置,Windows 在設置權限時,HKLM 的優先級比HKCU 高,所以筆者通過修改組策略中的相關設置未能解決問題。
在D-H 盤符被鎖定時,通過組策略管理中的“防止從‘我的電腦’訪問驅動器”項看,仍然顯示為“未設置”狀態,筆者開始誤以為組策略中沒有作任何限制。為什么組策略中相關設置界面顯示錯誤呢?
在組策略管理中的“防止從‘我的電腦’訪問驅動器”項設置界面中,系統默認該項組合中只有“僅限制A 和B”、“僅限制C”、“僅限制D”、“僅限制ABC”、“僅限制ABCD”、“限制所有磁盤”和“不限制”共7 種選項,各選項對應的值為3、4、8、7、15、67108863 和0,并沒有類似“僅限制D-H”的選項,該選項對應的值為0x000000FC(252),所以顯示“防止從‘我的電腦’訪問驅動器”項設置時無法成功匹配選項值,系統默認顯示為“未設置”狀態。
我們可以修改Windows 安裝目錄中的WindowsExplorer.admx 文件,在相關節中添加值為252 的選項,修改WindowsExplorer.adml文件,在相關節中添加值“僅限制D-H”選項,這樣即可真實顯示本次受攻擊結果的磁盤鎖定狀態。
綜合本次受攻擊手段和修復過程,服務器能夠得到完美修復是比較巧合的事情,慶幸的同時也有一些問題值得思考。在網絡已經廣泛普及的當下,我們一定要時刻提高警惕,提高法制常識,提高安全意識,提高防范技能,確保信息安全。在此,對日常運維給出兩點建議:
(1)提高服務器自身的安全性。通過安裝殺毒軟件和安全軟件、關閉不必要的端口、增強賬號口令強度、定期更改口令、定期檢查服務器安全性和及時安裝系統補丁等方法提高服務器安全性,盡量避免成為攻擊者的靶機。
(2)服務器區采用防火墻進行保護。將服務器置于防火墻后,利用防火墻對非信任端口的黑名單策略,從而可以隔離基于端口的攻擊包。