2013/11/15

案例: Keyspy Keylogger

我今天在系館的電腦教室用電腦的時候,本來想說拿投影片出來複習下午報告要講的東西,結果隨身碟一插我馬上就察覺異狀。

這間電腦教室的電腦有兩種,一種是連到機房由中央控管的、另一種是有獨立主機的,其中只有獨立主機的電腦可以插隨身碟和影印東西。

發生什麼異狀? 我的隨身碟裡多了一個東西: "System Volume Information"。其實在正常狀況下,這個擁有系統 (S)、隱藏 (H) 屬性的資料夾是由 Windows 的系統還原自動產生,但是現在產生在我隨身碟裡的這個東西可不是資料夾......,而是一個執行檔,而且將它刪除後,過幾秒就會自動重生,當下我就可以確定那台電腦中標了。

因為那台電腦的帳號權限不是系統管理員,很多可以產生紀錄檔用來分析的解毒工具 (ComboFix、DDS、HijackThis......) 都不能用,所以當時只好先試試 Sysinternals 的 Process Explorer 進行檢查,沒想到這麼容易就發現問題所在。注意下圖中的紅色框部分,那是一個假冒的 svchost.exe,這應該非常容易判斷。


我前往那個檔案的位置,發現這是一支 Keylogger (鍵盤側錄程式)。下圖中我開了一個記事本,在裡面打了一些字之後存檔,這些動作全部都被這支 Keylogger 記錄下來。我只能說,受到影響的人非常多,因為這支 Keylogger 側錄到的東西全部都會以純文字檔儲存在旁邊的資料夾裡,而我看到最早的時間點可以回溯到 2012 年 6 月 (!)。


我已經將病毒刪除了,所以目前那台電腦是安全的,但是電腦教室裡的其他電腦是不是有類似狀況就不得而知,我哪來這麼閒只是想用個電腦還要幫系統管理員免費解毒喔。因為我有備份這支病毒的主程式,以下是我無聊用自己的電腦測試它的行為 (括弧中是行為解釋)。

"svchost.exe 正在嘗試修改受保護的檔案或資料夾"
(這支病毒嘗試將自己複製到 C:\Users\...\Documents\Important\svchost.exe)


"svchost.exe 正在嘗試修改受保護的檔案或資料夾"
(這支病毒嘗試將 C:\Users\...\Documents\Important 這個資料夾設為隱藏屬性)


"svchost.exe 正在嘗試執行 svchost.exe"
(這支病毒嘗試執行它剛剛複製好的分身)


"svchost.exe 正在嘗試修改受保護的註冊值"
(這支病毒嘗試在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 中加入註冊值,使其能夠自動啟動)


"svchost.exe 正在嘗試安裝 Global Hook"
(這支病毒嘗試為自己安裝 Global Hook,使其能夠攔截視窗訊息、滑鼠、鍵盤等動作)


"svchost.exe 正在嘗試修改受保護的檔案或資料夾"
(這支病毒嘗試將側錄到的資訊儲存到純文字檔 C:\Users\...\Documents\Important\log.txt)


相較於很多其他精密、行為複雜、甚至會利用零時差漏洞的病毒而言,這支病毒的行為非常簡單。目前我沒有測出這支病毒有連網行為,它純粹只會把側錄結果儲存起來而已,若有隨身碟插入則它會嘗試感染。我用 WinHex 打開這支病毒,可以發現有 "Keyspy" 這個字串,因此這支病毒很有可能是商用的鍵盤側錄程式產生的 (沒錯,的確有開發者會賣這種東西,Blackhole 都能夠賣了這根本小咖)。最後,這支病毒其實已經很舊了,Virus Total 顯示幾乎每家防毒公司都偵測得到,偏偏系館的電腦每台都是裸奔,呵呵。

重點是,這是某個不知情的同學不小心把病毒傳到系館的電腦,還是有人刻意種的?

No comments: