1. 程式人生 > >曲速未來 :解析Kodi安裝的外掛遭惡意程式挖礦活動

曲速未來 :解析Kodi安裝的外掛遭惡意程式挖礦活動

 

 

概述

 

Kodi是一個免費的開放原始碼媒體播放器軟體應用程式。由於其開源和跨平臺特性,且以C ++編寫的核心程式碼而被廣泛應用。該軟體最近因侵權問題關閉了第三方附加元件XvBMC,而在這個元件被關閉之後,有研究人員發現這個第三方擴充套件庫中包含了惡意程式碼,這其中所關聯的惡意行為可以追溯到2017年12月。這是第二個公開的通過Kodi附加元件大規模分發病毒的情況,也是第一個公開的通過Kodi平臺發起的經過加密的惡意活動。攻擊者將Linux或Windows特定的二進位制檔案推送到Kodi粉絲的作業系統上。

媒體播放器軟體Kodi本身並不提供任何內容,但是使用者可以通過安裝在官方Kodi庫和眾多第三方庫中找到各種附件來擴充套件軟體功能,因此使用者很可能下載到惡意軟體。但到目前為止,根據分析,這些侵犯版權的元件除去添加了DDoS模組之外,似乎沒有證據表明還包含其他的惡意軟體。

攻擊調查

 

區塊鏈安全公司 曲速未來 表示:研究人員發現,在2017年12月和2018年1月分別有惡意軟體被新增到了第三方庫Bubbles和Gaia(Bubbles的一個分支)中。由於沒有安全防範意識,該惡意軟體被迅速傳播到了kodi的系統中。

 

該惡意軟體使用了攻擊鍊形式,使人們很難根據其最終被投遞的有效載荷(cryptominer)而追蹤到對應元件。cryptominer執行在Windows和Linux系統上,目的是挖掘加密貨幣Monero(XMR),暫未發現針對Android或macOS裝置的在野版本。觸發惡意軟體的方式為:

1.使用者將惡意儲存庫的URL新增到他們的Kodi安裝列表中,以便下載一些附加元件。只要他們更新了Kodi附加元件,就會安裝惡意載入項。

2.使用者安裝了現成的Kodi版本,該版本本身包含惡意儲存庫的URL。只要他們更新了Kodi附加元件,就會安裝惡意載入項。

3.使用者安裝了一個現成的Kodi版本,該版本包含一個惡意外掛,但沒有連結到儲存庫以進行更新。但是如果安裝了cryptominer,它將駐留在裝置中並接收更新。

目前,受影響最大的五個國家是美國,以色列,希臘,英國和荷蘭,這是XvBM儲存庫開發者所在的國家。

傳播惡意軟體的庫有的已經消失(如Bubbles),有的已經不再含有惡意程式碼(如Gaia)。但是已經安裝過cryptominer的受害者仍會受到影響。該活動的時間順序表為:

 

感染分階段傳播

 

據分析顯示,犯罪分子修改了原始附加元件的元資料,以命令2.16.0版本或更高版本的Kodi下載名為“script.module.python.requests”的附加元件。

新下載的附加元件包含一個Python惡意程式碼,匯入並執行密碼器。成功安裝惡意軟體後,其中的Python字串就會被刪除。

研究人員指出,“編寫程式碼的人顯然很熟悉Kodi及其附加體系結構。這個指令碼會檢測其執行的作業系統(只限於Windows和Linux系統,Android和MacOS系統則不支援),再連線控制&命令伺服器,下載執行與作業系統相匹配的二進位制檔案下載模組。”

Python程式碼

 

混淆的惡意程式碼位於檔案script.module.python.requestslibrequestspackagesurllib3connectionpool.py的第846-862行。

我們對這部分程式碼進行了反混淆和註釋,使其具有更高的可讀性,如下圖所示。

非常明顯,該程式碼的編寫者對 Kodi 播放器及其附加元件的結構具有深入的瞭解。這段指令碼會檢測作業系統(僅支援 Windows 和 Linux,忽略 Android 和 macOS),連線到其 C&C 伺服器,並下載和執行適配於被感染作業系統的二進位制下載器模組。

針對Windows,二進位制檔案會寫入 C:Users[ username ]AppDataRoamingMicrosoftWindowsStart MenuProgramsStartupTrustedInstaller.exe,而針對 Linux,二進位制檔案會寫入/tmp/systems/systemd。

在檢索並執行二進位制下載器模組後,Python指令碼(在我們的樣本中為 connectionpool.py)會執行自毀例程,刪除其自身。在上文程式碼截圖中,我們可以看到惡意程式碼被使用特殊標記 #-+- 和 #-_-# 括了起來。在成功執行下載器後,該惡意元件會開啟這一Python檔案,找到這些特殊標記並刪除中間的所有內容,然後儲存修改後的Python檔案。正因如此,研究人員才難以從挖礦惡意軟體追溯到這一Kodi附加元件。

 

Cryptominer可執行檔案

 

由Python程式碼檢索到的下載程式包含了第二階段載荷的加密配置和下載連結。二進位制下載程式會在受密碼保護的ZIP檔案中獲取匹配受害者作業系統的第二階段載荷(用於不同GPU的加密器和啟動/更新模組)。這些二進位制檔案是針對64位Windows和64位Linux編譯的,並且基於開源加密軟體XMRStak。密碼系統的配置如下:

 

總結

 

雖然傳播這些惡意軟體的第三方庫已經被關停,但是已經中毒的裝置仍深受其害,由下圖可知,許多裝置仍在挖掘Monero。

根據Nanopool提供的惡意軟體作者的Monero錢包入賬情況顯示,至少有4774名受害者受到惡意軟體的影響,並且已生成62,57 XMR(約5700歐元或6700美元)的利益。

因此在第三方庫中下載過外掛的kodi使用者應及時查殺此病毒。

 

除了通過流行的媒體播放器Kodi實現分發,這個惡意軟體還採用了一種有趣的技術。通過利用Kodi附加元件的複雜指令碼功能,這些惡意元件可以在Kodi支援的作業系統(Android、Linux、macOS 和 Windows)上執行,儘管此次攻擊者只選擇了其中的兩個作業系統。

 

區塊鏈安全公司 曲速未來 提醒:攻擊者可能已經將目標瞄準更多的作業系統。通過為這些系統量身定做挖礦程式(例如,使這些裝置再感染病毒後仍能保持較低的功耗),從而試圖感染Kodi支援的更多型別的作業系統。隨著大家對系統安全重視程度的加大,應用程式附加元件和指令碼功能可能成為網路犯罪分子青睞的目標。在過去,攻擊者使用Microsoft Office中的Visual Basic巨集感染使用者,而我們今天所分析的Kodi可能就是下一個VBA。

 

本文內容由 曲速未來 (WarpFuture.com) 安全諮詢公司整理編譯,轉載請註明。 曲速未來提供包括主鏈安全、交易所安全、交易所錢包安全、DAPP開發安全、智慧合約開發安全等相關區塊鏈安全諮詢服務。