駭客持續鎖定 Docker 容器環境,趨勢科技最近發現了一起網路攻擊會在使用Alpine Linux 建立的映像產生的 Docker 容器內植入虛擬加密貨幣挖礦程式與 DDoS 殭屍病毒。
駭客持續鎖定 Docker 容器環境,我們最近發現了一起網路攻擊會在使用Alpine Linux 建立的映像產生的 Docker 容器內植入虛擬加密貨幣挖礦程式與分散式阻斷服務 (DDoS) 殭屍病毒。趨勢科技今年五月也曾經通報過類似的攻擊案例,在上次的攻擊案例中,駭客建立了一個 惡意的 Alpine Linux 容器,然後在裡面暗藏惡意挖礦程式與 DDoS 殭屍病毒。
感染程序分析
最近這一次攻擊,駭客會先連線至暴露在網路上的 Docker 伺服器,然後在伺服器上建立並執行一個 Docker 容器,接著在 Docker 容器內執行圖 1 當中的指令。
駭客下載的 XMI 檔案 (趨勢科技命名為 Trojan.Linux.MALXMR.USNELH820) 是一個 Bash 腳本 (參見圖 2),此腳本可讓駭客橫向入侵同一容器網路內的其他主機 (從「/.ssh/known_hosts」檔案取得主機資訊)。
XMI 腳本經常使用 Base64 編碼來躲避偵測,圖 3 當中的編碼字串解開之後會變成圖 4 中的指令,也就是去下載一個名為「d.py」的檔案。
另外,值得注意的是腳本內有一段已標示成註解的程式碼 (如圖 5) 似乎可經由 SSH 暴力登入方式散布惡意程式。所以,有可能駭客過去曾經攻擊或者也有能力攻擊 SSH 伺服器。
此攻擊使用了多種常駐系統的技巧,除了建立 cron 排程工作 (如圖 6) 之外,也會自己建立系統服務來讓惡意檔案自動執行。
用來建立系統服務的程式碼也已經過 Base64 編碼。解開之後的腳本如圖 7 所示,並放在「/etc/init.d」目錄當中。
我們將偵測到的挖礦程式 (其下載腳本如圖 8 所示) 命名為:Coinminer.Linux.MALXMR.UWELD。有趣的是,駭客所用的虛擬加密貨幣錢包與之前攻擊 CVE-2019-3396 (Confluence 漏洞) 以及 CVE-2017-5638 (Apache Struts 漏洞) 的行動所使用的錢包是同一個。根據 Tencent Security 的一份報告,攻擊 CVE-2017-5638 漏洞的駭客是中國一個名為「8220」的挖礦集團。
為了檢查惡意檔案是否植入成功,惡意程式會使用一個名叫「md5sum」的程式來檢查其 128 位元的 MD5 雜湊碼。之前的 Kinsing 惡意程式也採用類似的驗證手法,該程式是專門攻擊中國境內雲端伺服器的 H2Miner 挖礦殭屍網路所使用。
除此之外,此攻擊還會在系統植入一個 DDoS 殭屍病毒 (Backdoor.Linux.KAITEN.AMV),如圖 9 所示。
這個 DDoS 殭屍病毒具備了某些後門指令 (參見圖 10) 使用 IRC (Internet Relay Chat) 通訊協定,而且它看起來似乎是 Kaiten (亦稱為 Tsunami) 的變種。其幕後操縱 (C&C) 伺服器的位址為:c4k[.]xpl[.]pwndns[.]pw、104[.]244[.]75[.]25 與 107[.]189[.]11[.]170。
正如前面所提到的,此次攻擊會在系統植入一個名為「d.py」的 Python 腳本,我們將它命名為:Trojan.Python.MALXMR.D。我們發現它的行為與 Trojan.Linux.MALXMR.USNELH820 相同,也就是會常駐於系統並且在系統植入挖礦程式與 DDoS 殭屍病毒。圖 11 顯示 d.py 的部分程式碼。
以下圖 12 顯示此攻擊的感染程序:
資安建議
有鑑於駭客攻擊 Docker 容器的案例日益增加,應用程式開發團隊應採取一種風險導向的資安策略來減少容器暴露於威脅的情況。首先,開發團隊應避免讓 Docker daemon 的連接埠暴露在網路上。其次,最好只用 Docker 官方的映像以避免本文所提到的威脅。此外,以下幾項最佳實務原則也可進一步降低容器的資安風險:
- 部署一套應用程式防火牆來保護容器,在威脅進入容器環境之前預先加以攔截。
- 盡量避免使用第三方軟體,最好使用經過驗證的軟體以確保不會有惡意程式進入容器環境。
- 採取最低授權原則,能不開放的權限就不要開放。容器映像應經過簽署和認證。網路連線和重要元件 (如執行容器的 daemon 服務) 應該制定存取管制。
- 採用自動化的執行時期與容器映像掃描來進一步掌握容器處理程序的狀況。應用程式控管與一致性監控可有助於偵測伺服器、檔案及系統遭到異常修改的情況。
除此之外,企業還可採用以下雲端防護來保護 Docker 容器:
- 趨勢科技 Hybrid Cloud Security 混合雲防護:提供自動化防護來保護實體、虛擬與雲端工作負載。
- Trend Micro Cloud One™ – Container Security:自動化容器映像與登錄掃描。
- 趨勢科技 Deep Security™ 軟體與趨勢科技 Deep Security Smart Check – Container Image Scanning:掃描容器映像,盡可能在開發流程早期就偵測到惡意程式和漏洞。
感謝 Arianne Grace Dela Cruz 提供額外的分析資訊。
入侵指標 (IoC):
檔案名稱 | SHA-256 | 趨勢科技命名 |
d.py | 29316f604f3c0994e8733ea43da8e0e81a559160f5c502fecbb15a71491faf64 | Trojan.Python.MALXMR.D |
i686 | 35e45d556443c8bf4498d8968ab2a79e751fc2d359bf9f6b4dfd86d417f17cfb | Coinminer.Linux.MALXMR.UWELD |
x32b | 9b8280f5ce25f1db676db6e79c60c07e61996b2b68efa6d53e017f34cbf9a872 | Backdoor.Linux.KAITEN.AMV |
x64b | 855557e415b485cedb9dc2c6f96d524143108aff2f84497528a8fcddf2dc86a2 | Backdoor.Linux.KAITEN.AMV |
x86_64 | fdc7920b09290b8dedc84c82883b7a1105c2fbad75e42aea4dc165de8e1796e3 | Coinminer.Linux.MALXMR.UWELD |
xmi | 51654c52e574fd4ebda83c107bedeb0965d34581d4fc095bbb063ecefef08221 | Trojan.Linux.MALXMR.USNELH820 |
網址
- 205[.]185[.]113[.]151
原文出處:Exposed Docker Server Abused to Drop Cryptominer, DDoS Bot作者:Augusto Remillano