首頁>資訊 >
惡意軟件實(shí)現(xiàn)“三殺”:Windows、macOS 和 Linux 無一幸免 2022-01-18 22:42:49  來源:36氪

游戲中,“Triple Kill”通常意為“三殺”,即玩家在較短時(shí)間內(nèi)連續(xù)消滅 3 個(gè)敵人的一種游戲表現(xiàn)。

而近來,網(wǎng)絡(luò)安全公司 Intezer 發(fā)現(xiàn)的一款后門惡意軟件也實(shí)現(xiàn)了“Triple Kill”:同時(shí)攻擊 Windows、macOS 和 Linux 三大操作系統(tǒng),且?guī)缀跛袗阂廛浖呙枰娑紵o法檢測到它。

安然無恙地“藏”了半年

Intezer 將這個(gè)后門惡意軟件命名為 SysJoker,由 C++ 編寫,于 2021 年 12 月在一家教育機(jī)構(gòu)基于 Linux 的 Web 服務(wù)器上主動(dòng)攻擊時(shí)才被首次發(fā)現(xiàn)——根據(jù)在線查毒網(wǎng)站 VirusTotal 發(fā)現(xiàn)的 C2(即 Command and Control,命令及控制)域名注冊和樣本,Intezer 推測早在 2021 年下半年 SysJoker 就已發(fā)起攻擊,只是一直“藏”得很好。

不僅 Linux,Intezer 發(fā)現(xiàn) SysJoker 還有 Mach-O 和 Windows PE 版本,甚至每個(gè)版本都針對特定操作系統(tǒng)進(jìn)行了“量身定制”,在 VirusTotal 上經(jīng) 57 個(gè)不同反病毒掃描引擎檢測都沒有發(fā)現(xiàn)它的存在。

對此,Intezer 將 SysJoker 定義為“針對 Windows、macOS 和 Linux 的新多平臺后門”。

隱秘的入侵過程

據(jù)分析,SysJoker 入侵三大系統(tǒng)用的都是一個(gè)套路,為方便詳細(xì)講解該惡意軟件的入侵過程,Intezer 以 Windows 為例。

首先,為獲取用戶信任,SysJoker 會(huì)偽裝成系統(tǒng)更新的一部分。一旦 SysJoker 程序被執(zhí)行,它會(huì)隨機(jī)休眠 90-120 秒,然后創(chuàng)建 C:\ProgramData\SystemData\ 目錄,隨后將自身復(fù)制至該目錄并偽裝成 igfxCUIService.exe,即英特爾圖形通用用戶界面服務(wù)。

然后,SysJoker 就會(huì)通過離地攻擊(Living off the Land,即LOtL)來收集 MAC 地址、用戶名、物理序列號和 IP 地址等設(shè)備信息,并使用不同的臨時(shí)文本文件來記錄命令結(jié)果。完成使命后,這些文本文件會(huì)立即刪除,存儲在 JSON 對象中,編碼并寫入名為 microsoft_windows.dll 的文件中。

SysJoker 在內(nèi)存中構(gòu)建的 JSON 對象

為確保惡意行為持續(xù)不斷,SysJoker 還會(huì)向注冊表添加鍵值 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run。不僅如此,SysJoker 的“反偵察”意識也很強(qiáng)——上述所有步驟之間,SysJoker 都會(huì)隨機(jī)休眠一段時(shí)間以防被發(fā)現(xiàn)。

在以上工作完成后,SysJoker 便會(huì)開始建立 C2 通信,通過解碼從托管在 Google Drive 上的文本文件中檢索到的字符串來生成其 C2。Google Drive 鏈接托管一個(gè)名為 domain.txt 的文本文件,該文件包含一個(gè)編碼的 C2,SysJoker 將使用 CyberChef 解碼 C2,并將收集到的用戶信息發(fā)送到 C2 的 /api/attach 目錄作為第一次握手。

(更多細(xì)節(jié)可參見:https://www.intezer.com/blog/malware-analysis/new-backdoor-sysjoker/)

據(jù) Intezer 研究人員發(fā)現(xiàn),C2 更改了 3 次,這意味著攻擊者處于活動(dòng)狀態(tài)并正在監(jiān)視受感染的設(shè)備。

入侵完成后,SysJoker 可以從 C2 中接收包括 exe、cmd、 remove_reg 和 exit 在內(nèi)的可執(zhí)行文件(Intezer 補(bǔ)充道,當(dāng)前版本中沒能實(shí)現(xiàn) remove_reg 和 exit。根據(jù)指令名稱,Intezer 推測 remove_reg 和 exit 應(yīng)該負(fù)責(zé)的是惡意軟件的自我刪除)。

SysJoker 與 C2 之間的通信流程

最后,通過對 SysJoker 的種種細(xì)節(jié)分析,Intezer 發(fā)現(xiàn)該惡意軟件很不尋常:

代碼是從頭開始編寫的,這在其他攻擊中從未見過。最重要的是,通常在實(shí)時(shí)攻擊中,很少有以前不曾發(fā)現(xiàn)的 Linux 惡意軟件。

攻擊者注冊了至少 4 個(gè)不同的域,并為三種不同的操作系統(tǒng)從頭開始編寫惡意軟件。

整個(gè)分析過程中,沒有發(fā)現(xiàn)攻擊者發(fā)送的第二階段命令,這表明攻擊是特定的。

由此,Intezer 推斷 SysJoker 的背后應(yīng)是高級攻擊者,且根據(jù)其功能,未來很可能用于間諜活動(dòng)、橫向移動(dòng)或勒索軟件攻擊。

如何檢測并解決?

雖然該惡意軟件的檢測目前還比較艱難,但 Intezer 還是給出了一些有效的檢測方法:用內(nèi)存掃描器檢測內(nèi)存中的 SysJoker 有效載荷,或利用檢測內(nèi)容在 EDR 或 SIEM 中進(jìn)行搜索。

如果發(fā)現(xiàn)系統(tǒng)已被入侵,可執(zhí)行以下步驟:

1、殺死與 SysJoker 相關(guān)的進(jìn)程,刪除相關(guān)的持久化機(jī)制,以及所有與 SysJoker 相關(guān)的文件;

2、運(yùn)行內(nèi)存掃描程序,確保被入侵的設(shè)備已安全;

3、調(diào)查惡意軟件的初始入口點(diǎn)。

參考鏈接:

https://www.intezer.com/blog/malware-analysis/new-backdoor-sysjoker/

本文來自微信公眾號“CSDN”(ID:CSDNnews),整理:鄭麗媛 ,36氪經(jīng)授權(quán)發(fā)布。

關(guān)鍵詞: 惡意 軟件 Linux

相關(guān)閱讀:
熱點(diǎn)
圖片 圖片