Jump to content
  • Entries

    16114
  • Comments

    7952
  • Views

    86387977

Contributors to this blog

  • HireHackking 16114

About this blog

Hacking techniques include penetration testing, network security, reverse cracking, malware analysis, vulnerability exploitation, encryption cracking, social engineering, etc., used to identify and fix security flaws in systems.

受影響平台:Windows

受影響方:任何組織

影響:控制受害者的設備,收集敏感信息

嚴重性級別:緊急

FortiGuard實驗室最近檢測到一種用Rust編寫的新註入器,它可以注入shellcode並將XWorm引入受害者的環境。雖然Rust在惡意軟件開發中相對不常見,但自2019年以來,已經有幾個活動採用了這種語言,包括Buer loader、Hive和RansomExx。 FortiGuard實驗室的分析還顯示,2023年5月期間注入器活動顯著增加,其中shellcode可以使用Base64編碼,並可以從AES、RC4或LZMA等加密算法中進行選擇,以逃避防病毒檢測。

通過檢查編碼算法和API名稱,研究人員在攻擊者工具“Freeze.rs”中確定了這種新型注射器的來源,該工具旨在創建能夠繞過EDR安全控制的有效負載。此外,在分析過程中,研究人員發現SYK Crypter通常用於通過社區聊天Discord傳播惡意軟件家族的工具,該工具涉及加載Remcos,這是一種複雜的遠程訪問木馬(RAT),可用於控制和監控運行Windows的設備。 SYK Crypter出現於2022年,已被各種惡意軟件家族使用,包括AsyncRAT、jnrat、QuasarRAT、WarzoneRAT和NanoCore RAT。

FortiGuard實驗室在7月13日觀察到網絡釣魚電子郵件活動,該活動使用惡意PDF文件啟動了攻擊鏈。此文件重定向到HTML文件,並利用“search-ms”協議訪問遠程服務器上的LNK文件。點擊LNK文件後,PowerShell腳本執行Freeze.rs和SYK Crypter準備進一步進攻。最後,加載XWorm和Remcos,並與C2服務器建立通信。

在本文中,我們將深入研究用於傳播Rust-lang注入器SYK Crypter的初始攻擊方法,並進一步探討攻擊的後續階段。

1.png

初始訪問

如下圖所示,釣魚電子郵件偽裝成發送給多家公司的緊急訂單補充請求,以欺騙收件人。它還在PDF文件中使用模糊圖像來引誘受害者點擊隱藏的按鈕。所附的PDF文件如下圖所示。

2.png

網絡釣魚郵件

3.png

PDF文件

惡意URL隱藏在流對象(/ObjStm)中,使其難以被檢測到。然而,通過pdf解析器提取URL顯示它位於流對象1中的對象14中,如下圖所示。

4.png

流對像中的URL

點擊該文件後,受害者連接到URL https://www[.]cttuae[.]com/ems/page[.]html,這是一個偽裝成提供旅遊服務的網站。攻擊者在7月12日上傳了一個惡意HTML文件到“ems”路徑,源代碼如下圖所示。

5.png

HTML頁面“page. HTML”

攻擊者不是直接下載惡意軟件,而是採用更複雜的方法,利用“search-ms”協議觸發搜索結果。具體來說,他們在由DriveHQ提供的遠程雲存儲服務器上搜索“ORDER_SPEC0723”。值得注意的是,文件“ORDER_PSEC0723”偽裝成PDF文件圖標,但仔細檢查後發現,它是在同一文件夾中執行PowerShell腳本的LNK文件,如下圖所示。這種策略允許攻擊者謹慎地啟動他們的惡意活動。

6.png

搜索結果和LNK文件“ORDER_PSEC01723”

然後執行PowerShell腳本“pf.ps1”,首先使用“regsvr32”啟動用Rust編寫的注入器“doc.dll”。它打開誘餌PDF文件“T.PDF”並執行“AA.exe”。最後,使用“Stop-Process”關閉所有文件資源管理器窗口。下圖中的PDF文件“T.PDF”看起來很乾淨,包含清晰的文本,旨在分散受害者對其他惡意行為的注意力。以下部分將詳細介紹“doc.dll”和“AA.exe”。

7.png

PowerShell腳本“pf.ps1”

8.png

誘餌文件“T.pdf”

Rust注入器:doc.dll下圖顯示了基於字符串部分分析,注入器是用Rust編程語言編寫的。

9.png

字符串部分

注入過程首先使用CreateProcessA創建一個“notepad.exe”進程。 shellcode隨後通過Base64解碼和LZMA解壓縮獲得。然後,注入器直接使用NTAPI庫的函數注入shellcode。以上便是“Freeze.rs”的整個攻擊過程。該網站於今年5月發布,顯示出人們非常喜歡這一新工具,源代碼和注入器的彙編代碼如下圖所示。

10.png

Shellcode注入

在過去的一個月裡,研究人員編譯了一系列不同的Rust注入器,包括帶有lzma壓縮的shellcode的DLL文件,帶有rc4加密的shellcode的DLL文件,以及包含rc4加密的shellcode的EXE文件。這些注入器中的shellcode數據都使用Base64編碼,有趣的是,文件類型和加密算法似乎是程序中可選擇的選項。這個觀察結果與“Freeze.rs”存儲庫中的選項一致,這表明它們之間存在某種關係。選擇加密方法和文件類型的靈活性增加了這些注入器的複雜性,進一步複雜化了安全研究人員的檢測和分析。

11.png

“Freeze.rs”選項

當使用RC4算法變體時,密鑰被擴展到256字節,並用於偽隨機生成算法(PRGA)。該注入器變體的相應源代碼和組件如下圖所示。經過比較,很明顯,此攻擊者使用“Freeze.rs”繞過EDR並利用掛起的進程。解密後的shellcode可以在地址0x650000找到,如下圖所示。

12.png

RC4解密

13.png

解密後的shellcode

解密的shellcode應用AMSI繞過和WDLP繞過技術,隨後執行.NET有效負載。一旦執行,NET程序集就可以從內存地址0x1AAB6E70轉儲,如下圖所示,從而可以作為獨立的.NET可執行文件進行分析。

14.png

解密的.Net有效負載

在此過程中發現的.NET有效負載被稱為XWorm,根據分析,這是一種在地下論壇交易的RAT工具。 XWorm配備了典型的RAT功能,包括收集設備信息、捕捉屏幕截圖、記錄擊鍵以及建立對受攻擊設備的控制。在該示例中,XWorm有效負載版本是v3.1,C2服務器信息仍然隱藏在“pastebin.com”網站上,如下圖所示。

15.png

XWorm V3.1和pastebin.com上的C2服務器IP地址

MSIL下載程序:AA.exe執行文件“AA.exe”作為MSIL下載程序運行,並嵌入了兩個鏈接:

“95[.]214[.]27[.]17/storage/NAR”和“plunder[.]ddnsguru[.]com/storage/NAR”。

16.png

MSIL下載程序的鏈接

下載完成後,“AA.exe”使用文件名“760”作為解碼密鑰,並對下載數據中的每個字節執行減法運算。解碼的數據是一個名為“SYKSBIKO”的資源的SYK Crypter,其中包含加密的有效負載。 DLL文件進行檢查以確保環境未處於調試模式,然後通過使用密鑰“gOhgyzyDebuggerDisplayAttributei”的RC4解密來繼續處理資源數據。它調用一個小的.NET代碼“Zlas1”以進行進一步的壓縮。

17.png

調用.Net代碼進行解壓縮

為了逃避檢測,SYK Crypter對其執行流中使用的字符串進行編碼,解碼函數如下圖所示。此外,它還使用了“GetProcessesByName”“Directory.Exists”和“File.Exists”等函數來評估安全設備在受攻擊環境中是否存在。用於檢查的列表如下圖所示。

18.png

字符串轉換器函數

19.png

安全設備檢查列表

為了持久性攻擊,惡意軟件將“.exe”擴展名附加到文件“AA”,並將MSIL下載程序複製到“Startup”文件夾。它還在“HCKU\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows”中添加了一個註冊表項“Run”,相應的代碼如下圖所示。

20.png

自我複製到“Startup”

21.png

添加註冊表

在對資源數據“SYKSBIKO.Properties.Resources.resources‎‎.a,”進行RC4解密和壓縮之後,將獲得執行文件,如下圖所示。然後,SYK-Crypter加載一個Base64.NET代碼並調用其“GetDelegateForFunctionPointer”函數,在同一方法中從kernel32或ntdll創建對所有API的委託。下圖顯示了一個加載“kernel32!WriteProcessMemory”的片段,隨後解密的有效負載被注入到進程中。

22.png

從SYK Crypter解密資源數據

23.png

調用“GetDelegateForFunctionPointer”來獲取API

注入的有效負載是Remcos RAT,最初是作為遠程計算機控制的合法工具設計的。然而,自2016年發布以來,黑客利用它來控制受害者的設備。該配置可以通過RC4解密“SETTINGS”資源獲得,如下圖所示。有趣的是,C2服務器的IP地址與XWorm有效負載的IP地址保持一致。

24.png

“SETTINGS”中的加密配置

25.png

解密的配置

總結XWorm和Remcos的結合創建了一個具有一系列惡意功能的強大木馬。 C2服務器的流量顯示,歐洲和北美是此惡意活動的主要目標。作為攻擊策略的一部分,網絡釣魚活動利用PDF流對象並利用'search-ms'功能來誘導毫無戒心的受害者。為了進一步逃避檢測,攻擊者熟練地使用Rust注入器'Freeze.rs'和MSIL文件“SYK Crypter”。在本文中,我們深入研究了通過網絡釣魚郵件所採用的攻擊方法,並檢查了欺騙受害者所涉及的各種文件。此外,我們還提供了Freeze功能的全面概述。詳細介紹SYK Crypter的工作原理。