最近出現了一個新型的 Linux 惡意程式叫作「DOKI」,它會攻擊各主要雲端廠商對外公開的 Docker API。駭客使用一個之前發現的漏洞攻擊技巧來入侵容器環境,但有關 DOKI 惡意程式的文獻記載卻是直到最近出現。
要在容器主機上植入 DOKI 惡意程式,駭客會先掃描雲端廠商的網路是否有可公開存取的 Docker API,然後再經由此 API 的漏洞來駭入 Docker 環境。駭客一旦進入 Docker 環境,就會建立自己的容器,並刪除其活動的相關記錄檔。這項攻擊技巧的一個重點就是啟動裝有「curl」工具程式的 Alpine 映像。此映像並非惡意的容器映像,不過一旦裝了 curl 之後,駭客就能利用這個容器來從遠端進行各種惡意活動。由於駭客使用的是可公開取得的容器映像,所以一般的容器登錄掃描軟體都會將它判定為良性容器並允許它建構及發布。
但這只是攻擊的第一步驟,到這裡,駭客還不能在容器主機上執行惡意程式 (雖然這是最終目標)。為了能夠執行惡意程式,駭客必須跳脫容器,所以駭客會在發出「create」指令的API 請求時指定「bind」(綁定) 參數。然後將一個暫存目錄「/tmpxxxx」綁定於主機根目錄下,接著取得權限來執行主機上該目錄內的任何檔案。
此外,駭客還會利用 Ngrok 服務來產生獨一無二的臨時網址,用來下載惡意檔案至含有 curl 工具的映像當中 (也就是駭客先前建立的映像)。然後,駭客會利用主機的 cron 指令,每分鐘重複執行一次下載。我們觀察到的惡意程式絕大多數都是虛擬加密貨幣挖礦程式。而 Doki 就是近期發現的惡意程式之一。
Doki 有幾項非常特殊之處,最特別的是它會結合 DynDNS 與多吉幣 (Dogecoin) 的特殊網域產生演算法來即時產生幕後操縱 (C&C) 伺服器的網域。這是以前的惡意程式從未出現過的行為。駭客會使用多吉幣錢包轉帳作業來控制惡意程式所聯絡的網址。透過這樣的技巧,其攻擊幾乎完全不怕網站過濾服務或其他資安產品的攔截。此外,駭客利用多吉幣錢包轉帳作業來指定網址,也是一項重大進展。
不過,儘管這項攻擊非常獨特,但偵測此類攻擊的方法依然和往常一樣。採用多層式防護方法,涵蓋所有資料移動或產生的管道,就是確保環境安全的最佳方法。
本文節錄自資安趨勢部落格。