病毒分析教程第七話--進程注入分析(上)

進程注入分析(上)


教程參考自《惡意代碼分析實戰》
程序來自:http://www.nostarch.com/malware.htm


Lab 12-1

本節實驗使用樣本Lab12-01.exe和Lab12-01.dll。

在你運行惡意代碼可執行文件時,會發生什麼?

Lab12-01.exe調用了CreateRemoteThread、WriteProcessMemory等函數,不難想象它進行了進程注入的操作。
1
查看該病毒的主體代碼,果然是執行了進程注入的惡意操作,注入方式是傳統的DLL注入。
2

哪個進程會被注入?

病毒會先遍歷進程列表,篩選出名爲explorer.exe的進程。
3
從此可知惡意代碼被注入到了explorer.exe進程中。
4

你如何能夠讓惡意代碼停止彈出窗口?

被注入後的explorer.exe,每隔一段時間會彈出一個對話框,查看進程所加載的模塊,果然有一個可疑的Lab12-01.dll,這個dll就是注入的惡意代碼。
5
要想停止彈出窗口(移除惡意代碼),僅需在Lab12-01.dll模塊上右鍵Unload,即可達到目的。
6

這個惡意代碼樣本是如何工作的?

這個DLL先創建一個線程,線程函數的地址爲0x10001030。
7
函數0x10001030的功能如下,循環創建子線程。
8
每個子線程的功能爲彈出對話框,也就是我們所看到的。
9

所以,該樣本的總體流程就是,Lab12-01.exe採用DLL注入的方式,將惡意代碼注入到explorer.exe中,使explorer.exe被動加載Lab12-01.dll,最後執行定時彈出對話框的惡意操作。有關DLL注入的原理,見:https://blog.csdn.net/m0_37552052/article/details/79198070。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章