過去的兩個月中,研究人員發現了竊密惡意軟件 Poulight Stealer 的技術進化與傳播擴散,經過研究發現其可能源於俄羅斯。

介紹

如今,信息竊取是常見的威脅之一,例如 Azorult、Agent Tesla 和 Hawkeye。信息竊取是網絡犯罪中最賺錢的領域之一,從失陷主機收集的信息會被轉手到地下網絡犯罪市場,或者用於憑據填充攻擊。

Poulight 最早在 3 月中旬被 MalwareBytes 的研究人員發現,並且相關 IOC 指標已經在安全社區之間共享。惡意代碼具有先進的信息竊取能力,而且還在不斷進化中。

技術分析

屬性
哈希 8ef7b98e2fc129f59dd8f23d324df1f92277fcc16da362918655a1115c74ab95
威脅 Poulight Stealer
簡要描述 Poulight Stealer
ssdeep 1536:GJv5McKmdnrc4TXNGx1vZD8qlCGrUZ5Bx5M9D7wOHUN4ZKNJH:GJeunoMXNQC+E5B/MuO0Ogt

像其他惡意軟件一樣,也提供給網絡犯罪分子可訂閱的惡意軟件構建工具。結果爲 .NET 可執行文件。

該樣本的好處是它沒有經過混淆,所以分析起來非常容易,可以很好地描述惡意軟件的功能。當惡意軟件啓動後,也會執行經典的檢測逃避技術:

其中,通過執行Select * from Win32_ComputerSystem命令使用 WMI 來進行檢測逃避。這個方法對虛擬化相關的檢測進行了一些檢查,如:

vmware
VIRTUAL
VirtualBox
sbiedll.dll (Sandboxie)
snxhk.dll (Avast sandbox)
SxIn.dll (Avast sandbox)
Sf2.dll (Avast Sandbox)

這些檢查也在 Al-Khaser 或 Pefish 工具中被列出來,這些工具旨在檢測用於惡意軟件分析的環境、測試沙盒的健壯性。執行相關的檢測逃避技術後,惡意軟件就開始進行感染,從而啓動一個被稱爲Starter的新威脅。

Starter類包含用於加載惡意軟件模塊的代碼。在此之前,有一些目錄和文件用於存儲失陷主機的相關信息。該操作由第一條指令global::Buffer.Start()執行。方法也非常簡單,通過以下方式在 Windows 特殊文件夾(AppData、Local AppData、Personal、Desktop)中創建許多文件夾:

然後,惡意軟件從名爲String0的資源中提取配置信息與其他參數。數據是經過 base64 編碼的字符串,然後通過以下方法進行解碼:

配置文件的內容如下所示:

<settings>PHByb2cucGFyYW1zPllXUnRhVzQ9fE1RPT18TUE9PTwvcHJvZy5wYXJhbXM+PHRpdGxlPlVHOTFiR2xuYUhRPTwvdGl0bGU+PGNwZGF0YT5NSHd3ZkRFeVEwNTFTMnRMU3pGNFRFWnZUVGxRTlRoNlYxaHJSVXhOZURGNU5URjZObGw4TVRKRFRuVkxhMHRMTVhoTVJtOU5PVkExT0hwWFdHdEZURTE0TVhrMU1YbzJXWHd3PC9jcGRhdGE+PHVsZmlsZT5hSFIwY0RvdkwzSjFMWFZwWkMwMU1EY3pOVEk1TWpBdWNIQXVjblV2WlhoaGJYQnNaUzVsZUdVPTwvdWxmaWxlPjxtdXRleD5QTDJkNHZGRWdWYlFkZGRka21zMFpoUWlJMEk8L211dGV4Pg==</settings>

解碼對應的 base64 字符串,就可以獲得構建的參數列表。如下所示:

<prog.params>YWRtaW4=|MQ==|MA==</prog.params><title>UG91bGlnaHQ=</title><cpdata>MHwwfDEyQ051S2tLSzF4TEZvTTlQNTh6V1hrRUxNeDF5NTF6Nll8MTJDTnVLa0tLMXhMR**NOVA1OHpXWGtFTE14MXk1MXo2WXww</cpdata><ulfile>aHR0cDovL3J1LXVpZC01MDczNTI5MjAucHAucnUvZXhhbXBsZS5leGU=</ulfile><mutex>PL2d4vFEgVbQddddkms0ZhQiI0I</mutex>

prog.params 可在 HandlerParams.Start() 中進行檢索。在開始新的感染行爲前要檢查是否重複感染,執行 AntiReplaySender.CheckReplayStart() 即可完成該任務:

惡意軟件通過互斥量進行判斷,該互斥量在參數列表中也可以看到。文件在%TEMP%文件夾中,如果該文件存在,惡意軟件不會再次執行,肉則寫入空文件開始執行。接着來看XS類的惡意代碼,如下所示:

首先通過Information.Start()收集有關失陷主機的硬件和軟件信息:

值得注意的是,惡意軟件使用英語和俄語來記錄收集的信息。隨後,枚舉並記錄所有活動進程列表:

緊接着執行第三個參數的檢查。如果等於 1 則執行clipper模塊:

如上所示,使用存儲在cpdata內的 AES 密鑰解密clbase中的模塊。但是,在特定配置中沒有clbase字段,就沒有需要安裝的模塊。最後一條命令是CBoard.start,如下所示:

竊取剪貼板數據後會在失陷主機中收集所有敏感信息:

該惡意軟件竊取大量數據:

桌面快照

敏感文件

攝像頭快照

Filezilla 憑據

Pidgin 憑據

Discord 憑據

Telegram

Skype

Steam

加密貨幣

Chrome

DFiles模塊負責竊取敏感文檔,搜索以下擴展名之一的文件:

在發現文件中,惡意軟件會檢索經典的關鍵字,這些關鍵字顯示文件的內容中存在一些有用的憑據:

隨後,惡意軟件會將所有收集到的信息發送到另一個名爲connect的資源提供的 C&C 服務器:

最後,從下載並執行其他模塊。檢索參數的方式與前述相同,在ulfile中標記了要下載的組件。

結論

Poulight Stealer 具有驚人的潛力,不排除它的異軍突起將來可能會代替其他惡意軟件家族。但該惡意軟件缺乏代碼混淆與數據保護功能,可能仍然處於開發的早期階段,後續攻擊者可能會增強這些功能。

IOC

8ef7b98e2fc129f59dd8f23d324df1f92277fcc16da362918655a1115c74ab95

http//fff[.gearhostpreview[.com/ARMBot

http[://u43692210a[.ha003.t.justns[.ru/

http://poullight[.ru/

Yara

import "pe"

rule Poulight_Stealer_May_2020 {
meta:
      description = "Yara rule for Poulight Stealer"
      hash = "8ef7b98e2fc129f59dd8f23d324df1f92277fcc16da362918655a1115c74ab95"
      author = "Cybaze - Yoroi  ZLab"
      last_updated = "2020-05-07"
      tlp = "white"
      category = "informational"

strings:
    $s1 = "http//fff.gearhostpreview.com/ARMBot" ascii
    $s2 = "WBcG91bGxpZ2h0Lhttp://poullight.ru/keys.txt" ascii 
    $s3 = "Poullight.exe"
    $s4 = "\\wallets\\wallet.dat" wide ascii
    $s5 = "=====================================" wide ascii
    $s6 = {2F 7B 00 30 00 7D 00 3C 00 63 00 6C 00 62 00 61
        00 73 00 65 00 3E 00 7B 00 ?? 00 7D 00 3C 00 2F
        00 63 00 6C 00 62 00 61 00 73 00 65 00 3E 00}
$s7 = "Select * from Win32_ComputerSystem" wide ascii

condition:
    uint16(0) == 0x5A4D and all of them
}

參考來源

Yoroi

*本文作者:Avenger ,轉載請註明來自 FreeBuf.COM

相關文章