over 1 year ago

最近 Eyny 論壇爆發勒索軟體中毒潮,官方稱系統遭到攻擊置入惡意代碼,我也拿到了傳說中的 Flash Player 安裝程式,於是來一探究竟。

先講結論,這次真的不是你更不更新系統就不會中毒,要更新的可能是你的腦袋。

這次感染勒索軟體的途徑不是神奇的開了網頁就中毒,而是百分之百使用者自己下載自己安裝的。因為黑客在論壇植入了假的 Flash Player 更新通知,利用大家對 Flash Player 更新的信任,於是自己把惡意程式帶回家中,還讓他在家裡跑。加上整個安裝程序根本就是原版的,只是被重新包裝塞入惡意代碼,所以根本不知道自己已經中標。

在執行這個安裝程式後,會自動建立一個排程,並且於每次登入時執行。

另外也會新增一個登錄值,是一個 base64 編碼的字串,前後填充空白以讓編輯器顯示空白。

很快的就能發現他利用 PowerShell 來執 payload,有一大串 base64 編碼的參數被傳給 PowerShell。經過解碼與重新命名,可以發現 ThunderCrypt 的代碼都是在記憶體中執行的,整個過程除了 PowerShell 外,不會另外產生 ThunderCrypt 的檔案。登錄檔中的資料是編碼過的 payload,內含 32 位元以及 64 位元的 native payload,經由 PowerShell 代碼解碼後寫入記憶體中執行。

下圖顯示判別位元數並解碼對應的 payload,其中 $MyRegPath = "HKLM:\Software\Microsoft\Windows\CurrentVersion\Shell"; $MyUUID = "{A48209E7-FBD5-56B9-B26561F44C9DF968}";

其他的 PowerShell 代碼在做的就是將 payload 寫入記憶體、建立一個 Delegate 以執行非託管代碼,並執行它。把 payload dump 下來後就能再繼續做靜態分析,我想後續還是交給專業的安全人員來做就好了。

啊我的分析只到這邊,加上平常我也沒在關注病毒,只是剛好從朋友那拿到傳說中的安裝程式而已,所以本文並不是一個完整正確的分析,歡迎各路大神入鞭!

以下白話文

如何預防?

  1. 檢查有效的數位簽章。在下載任何程式後,如果你要安裝的東西是大廠發佈的,那請務必檢查是否有有效的簽章,這次的 Flash Player 就沒有 Adobe 的簽章,顯然是被動過手腳。而平時下載的小程式,很可能作者跟我一樣窮,沒買簽章,這時候就只能靠你自己判別了。
  2. 防毒軟體不是萬能。這次的中毒途徑就很難被防毒軟體偵測,你可能會需要具有啟發式偵測能力的安全軟體,但是安全跟便利是無法兼備的,你勢必會需要做許多的允許、封鎖程式行為的操作。
  3. 要有危機意識。當你知道你已經禁用了 Flash Player,這時候網頁又叫你更新,就是一件很可疑的事情。危機意識是靠平時的培養,可以多多爬文看各路大神的建議。
← Windows 無法安裝至此磁碟 在 macOS 上安裝 MySQL 5.7 →
 
comments powered by Disqus