指令列惡意腳本正持續演進

本文討論指令列腳本 (shell script) 在網路犯罪集團手中如何演進,以及如何搭配惡意程式的發展以從事惡意活動。

Unix 程式設計師經常運用指令列腳本 (shell script) 來讓他們很方便地在一個檔案中指定所要執行的多個 Linux 指令。許多使用者也都會利用這個方式來管理檔案、執行程式或執行列印。

不過由於每台 Unix 電腦都內建了指令列腳本的解譯器,所以這也成為歹徒喜愛的一個泛用工具。我們先前就曾撰文說明駭客如何利用指令列腳本來散布惡意程式,並用來攻擊組態設定不當的 Redis 運算實體暴露在外的 Docker API 或者清除競爭對手的虛擬加密貨幣挖礦程式。本文討論指令列腳本 (shell script) 在網路犯罪集團手中如何不斷演進、如何配合不斷發展的惡意程式來從事惡意活動。

指令與程式設計技巧不斷變化


使用指令列腳本並非什麼最新技巧,網路上早已相當盛行。不過我們確實注意到這類腳本開始出現一些變化,而且能力正大幅攀升。

過去的指令列腳本相對單純許多,只有一些簡單的指令組合,以及一些用來下載惡意檔案的簡單連結。但隨著威脅持續演進,駭客現在會使用更多高階指令與程式設計技巧。

figure 1 linux shell scripts evolve
figure 1 linux shell scripts evolve
圖 1:腳本從原本的純文字 (左) 演變成 Base64 編碼的內容 (右)。

此外,純文字連結也變成了 Base64 編碼文字,某些程式碼片段也需要進一步下載或已經過編碼。這樣的做法應該是為了隱藏惡意檔案的下載連結,除了可避開資安過濾規則的偵測之外,也增加了資安分析的難度。

figure 2 linux shell scripts evolve
figure 2 linux shell scripts evolve
圖 2:程式碼部分換成了 Base64 編碼內容。

這些編碼內容會先經過 Base64 解碼之後再傳入 bash 指令列解譯器來執行腳本。

figure 3 linux shell scripts evolve
figure 3 linux shell scripts evolve
圖 3:Base64 編碼內容解開之後的程式碼。

過去,惡意腳本不會先檢查它所要攻擊的服務是否正在伺服器上執行,但現在它們會檢查服務是否正在執行,然後保留一點 CPU 時間來執行惡意內容,讓惡意內容會與新的腳本一起執行,同樣也採用 Base64 編碼。此外,某些連結也會替換成變數。

figure 4 linux shell scripts evolve
figure 4 linux shell scripts evolve
圖 4:不會先檢查服務是否存在就直接嘗試解除安裝服務。

figure 5 linux shell scripts evolve
figure 5 linux shell scripts evolve
圖 5:如果發現服務正在執行,就將服務解除安裝。

figure 6 linux shell scripts evolve
figure 6 linux shell scripts evolve
圖 6:wget 指令的網址部分改用變數。

此外,我們也注意到另一個發展方向就是使用 Pastebin 來儲存腳本的部分內容,如:網址、完整惡意檔案,或輔助程式 (例如一個 XMrig 虛擬加密貨幣挖礦程式)。

figure 7 linux shell scripts evolve
figure 7 linux shell scripts evolve
圖 7:經過 Base64 編碼的組態設定與 Pastebin 網址。

figure 8 linux shell scripts evolve
figure 8 linux shell scripts evolve
圖 8:Base64 編碼的 XMrig。

結論

駭客集團隨時都在改進並優化自己的手法和技巧,例如讓指令列腳本具備加密編碼以及下載惡意檔案的能力。為了獲利最大化、同時躲避日益精進的資安偵測及防範技巧,網路犯罪集團甚至會結合一些其他作業系統上所開發出來的已知技巧,然後再配合新的技巧。儘管有些技巧之前就曾經出現在某些惡意程式行為或環境當中,但指令列腳本和惡意程式家族使用這樣的手法還是相當新穎。

以往,絕大多數的惡意檔案都是使用純文字腳本來下載,而且只限定某些工作。但現在,我們已開始在指令列腳本中看到加密編碼的內容。隨著更多惡意程式想要隱藏其惡意內容,未來我們看到加密編碼內容的情況應該會更多。

目前,若說這類技巧象徵 Linux 加密編碼正日益精密還言之過早。但是,就連指令列腳本都朝這個方向發展,確實值得我們特別留意並持續觀察。此外,研究人員也預料,純文字腳本將逐漸減少,且未來可能需要多道的解碼手續才能對這類腳本進行完整分析。

趨勢科技解決方案


趨勢科技以 XGen™ 防護為基礎的解決方案,如:ServerProtect for Linux趨勢科技 Network Defense 網路防禦能偵測相關的惡意檔案和網址以保護使用者系統。趨勢科技 Smart Protection Suites 和 趨勢科技 Worry-Free™ Business Security 內建的 行為監控功能也可進一步防範這類威脅,偵測惡意檔案、遏止惡意行為、攔截所有相關惡意網址。

入侵指標 (IoC)

SHA256趨勢科技命名
1aaf7bc48ff75e870db4fe6ec0b3ed9d99876d7e2fb3d5c4613cca92bbb95e1bTrojan.SH.MALXMR.UWEKK
bea4008c0f7df9941121ddedc387429b2f26a718f46d589608b993c33f69b828
0742efecbd7af343213a50cc5fd5cd2f8475613cfe6fb51f4296a7ec4533940dTrojan.SH.HADGLIDER.TSE
3c7faf7512565d86b1ec4fe2810b2006b75c3476b4a5b955f0141d9a1c237d38Coinminer.Linux.MALXMR.UWELH
3eeaa9d4a44c2e1da05decfce54975f7510b31113d8361ff344c98d3ddd30bf4
543ceebd292e0e2c324372f3ab82401015f78b60778c6e38f438f98861fd9a2d
882473c3100389e563b05051ae1b843f8dd24c807a30acf0c6749cd38137876b
c82074344cf24327fbb15fd5b8276a7681f77ccacef7acc146b4cffa46dabf62
eaf9dd8efe43dcf606ec0a531d5a46a9d84e80b54aa4a019fa93884f18c707c3
f65bea9c1242ca92d4038a05252a70cf70f16618cf548b78f120783dfb9ccd0e

原文出處:The Evolution of Malicious Shell Scripts 作者:David Fiser 與 Alfredo Oliveira