一:目錄
1.樣本資訊
2.行為分析
3.樣本分析
4.詳細分析
5.部落格資料:https://pan.baidu.com/s/1EUIguu7YV3pS7F7ej7aDNg
二:樣本資訊
1.樣本名稱:樣本.exe(脫殼後為樣本dump.exe)
2.md5:5b8bc92296c2fa60fecc6316ad73f1e2
3.是否加殼:加殼UPX
4.編譯語言:visual C++
三:行為分析
1)通過登錄檔判斷系統是否被感染
2)獲取windows目錄,利用計時器實現隨機命名,把病毒copy到windows目錄實現隱藏
3)刪除樣本檔案
4)建立服務,實現自啟
5)連結指定url,執行後門行為。
四:詳細分析
1.PEID查殼,發現是UPX加殼,ESP定律法脫去
2.病毒先將currentcontrol\services\和15654656連結起來,並且利用RegOpenKey來開啟這個登錄檔。目的是:判斷這個服務是否被建立,換句話說看病毒是否在系統記憶體在
3.如果這個服務不存在,病毒執行405A25,開啟服務管理器。然後獲取windows目錄,比較c://windows,接著通過GetTick來獲取計數器,複製那個exe檔案到windows目錄。目的是實現自身的隱藏,接著呼叫CreateService來建立病毒服務。判斷服務是否開啟,然後開啟服務,最後,先獲取獲取目錄資訊,接著獲取當前程式資訊,目的是獲取樣本檔案的資訊,以便為刪除做準備**然後呼叫shellEx利用cmd執行/c del >nul刪除樣本檔案,設定程式的優先順序。以便後續為破壞做準備
4。如果這個服務存在的話,執行後續操作。
5.通過呼叫StartServiceCtrlDispatcher函式,執行執行緒
6.分析該服務執行緒
1)先獲取例如closesocket和SDetServiceStatus等函式的地址
2)建立一個互斥體,**目的是使系統中只有一個病毒例項在執行**
3)建立一個執行緒,然後列舉資源列表,更新檔案。
a)先和"2"一樣,開啟15654656登錄檔,判斷病毒是否執行成功。
b)獲取檔案屬性,並建立一個檔案,讀取檔案,替換檔案資源
c)載入剛剛替換的資原始檔hra%u.dll
4)分析第一個執行緒:
a)獲取網路主機名和地址
b) 比較使用者名稱和密碼:
c) 獲取當前檔案路徑,並把檔案分別複製到C,D,E盤中(E:\g1fd.exe)【呼叫copyfile函式執行】
d) 如果在C,D,E中則會獲取當前時間,然後執行程式,否則把檔案複製到F盤,然後休眠500ms後建立下個執行緒.
5)分析第二個執行緒:
a)初始化網路配置,休眠100ms,獲取本地時間,轉化為int型別,和20030221比較,如果小於的話,則一直執行,然後建立CreateStartFun執行緒(本質是呼叫StartAddress函式)。
b)在StartAddress內部先訪問一個短地址aa.re67das.com,然後獲取IP地址利用socket連結。
c) 獲取機器的基本配置,然後load hra%u.dll’
d) 利用send()傳送剛剛獲取的機器資訊。
e) 利用SelectAndRev3這個函式去不斷的從伺服器端接收控制資訊,
f)輸入16號控制碼:
g)輸入18號控制碼(行為見腦圖):
‘’
6)分析第三個執行緒
a)獲取本地時間,如果小於2013.02.21則執行緒不斷執行
b)否則執行執行緒如c:
c)如上,分析執行緒2所示一致。只是比2多了一個檔案寫入的函式
7)分析第四個執行緒:
a) MainFun4只是比MainFun3多了一個連線特定url的函式,但是這個解密過程沒分析出來,但是你可以通過apadns來獲取相關資訊。
本文由看雪論壇findreamwang原創轉載請註明來自看雪社群