2018 年 4 月,dhpcd 挖礦團伙首次浮出水面,此后一直處于活躍狀態。盡管被揭露,但該團伙仍然不斷更新迭代加強潛伏能力。

【整體概覽】

該團伙將文件命名與 Linux 上合法程序相似,例如負責 DHCP 服務器運行的守護進程為 dhcpd,攻擊者將惡意文件命名為 dhpcd。這種命名方式在該團伙使用的樣本文件中廣泛存在,這也是其能夠在長達四年的時間里持續運營的一個原因。并且,攻擊者使用 Tor 的出口節點對攻擊基礎設施進行隱藏,這使得追蹤溯源變得非常困難。攻擊者主要通過挖掘門羅幣來進行獲利。

攻擊活動

自從 2018 年 4 月以來,Akamai 確認了來自 800 余個 IP 地址的兩千余次攻擊事件。這些 IP 地址主要歸屬于運營商與托管服務商,也有相當部分來自大學與非營利組織,這些主機成為了攻擊者的基礎設施。

2022 年 3 月,研究人員注意到 dhpcd 的挖礦程序進行了更新迭代,從 XMRig 2.13.0 升級為 XMRig 5.2.0。與此同時,其規模與攻擊范圍也都有較大的提高。2022 年 5 月,攻擊頻度達到年內最高。盡管沒有 2021 年的峰值高,但也說明了攻擊者希望能夠通過更新迭代獲取更大的收益。

【時間趨勢】

自從檢測發現該團伙,確認了 2215 次攻擊,分布在 843 個不同的 IP 地址中,平均每個 IP 發起 2.6 次攻擊。總體來看,每個 IP 地址攻擊次數為 1 到 27 不等。

【全球分布】

在 840 個攻擊者 IP 中,大約 80% 都是 Tor 的出口節點,這使得追蹤攻擊者變得極為困難。其中就包含美國大學、歐洲非盈利組織與其他各種組織的機器。將這些 Tor 出口節點按國家劃分,大多數的攻擊者 IP 地址都位于美國、德國與荷蘭。

【國家百分比】

獲利

攻擊者使用多個錢包來進行獲利,研究人員分析時發現了 13 個不同的門羅幣錢包。每個錢包在收入 150 美元左右后,就會輪換到使用另一個錢包。由于每個錢包的余額都比較少,很有可能攻擊者持有的錢包數量遠比已知的更多。將收益分散到多個錢包,也可以不那么引人注目。

目前為止,跟蹤已知錢包地址發現總利潤約為 2000 美元,但推測攻擊者的實際收益應該高得多。

攻擊者最初使用 minexmr[.]com礦池。在 8 月 19 日這些礦池被關停后,攻擊者轉向使用 pool[.]supportxmr[.]com。

攻擊鏈

【攻擊鏈】

初始攻擊

攻擊者通過爆破 SSH 服務來入侵 Linux 主機,隨后使用 SCP 命令將測試驗證程序寫入失陷主機。測試驗證程序并無實際功能,文件名也為隨機字符串,例如 /bin/cpuufcdmorv9crpa8h6wgh6iq2。

挖礦程序

攻擊者將挖礦程序(名為 dhpcd)通過 SCP 下載到同一目錄,挖礦程序通過 4444 端口的 TCP 協議來連接礦池。

fr14[.]minexmr[.]com
ca61[.]minexmr[.]com
sg97[.]minexmr[.]com
fr13[.]minexmr[.]com
us40[.]minexmr[.]com

持久化

攻擊者會通過多種方式為挖礦程序完成持久化。首先,更改已有用戶(例如root、admin、test、oracle、test1、ubuntu等)的密碼,并且通過修改 /etc/shadow 的文件屬性來保護這種更改。

隨后,攻擊者將 SSH 密鑰添加到 ~/.ssh/authorized_keys 文件中,同樣修改文件屬性保護更改。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCuhPmv3xdhU7JbMoc/ecBTDxiGqFNKbe564p4aNT6JbYWjNwZ5z6E4iQQDQ0bEp7uBtB0aut0apqDF/SL7pN5ybh2X44aCwDaSEB6bJuJi0yMkZwIvenmtCA1LMAr2XifvGS/Ulac7Qh5vFzfw562cWC+IOI+LyQZAcPgr+CXphJhm8QQ+O454ItXurQX6oPlA2rNfF36fnxYss1ZvUYC80wWTi9k2+/XR3IoQXZHKCFsJiwyKO2CY+j

攻擊者通過配置定時任務來確保每小時運行一次挖礦程序。

/bin/dhpcd -o ca.minexmr.com:4444 -B >/dev/null 2>/dev/null exit 0

清除競爭對手

攻擊者要努力清除其他攻擊者,最大化獨占失陷主機的資源。在 /dev/shm 目錄下執行兩個腳本,名為 knrm 與 r。該目錄是一個 tmpfs 文件系統,其中的文件保存在虛擬內存中,寫入該位置不會在文件系統中留下痕跡。

攻擊者會查詢系統上消耗資源最多的進程、占用內存最多的進程,將其全部終止,確保自己的資源夠用。

/etc/cron.hourly/gcc.sh
/etc/cron.hourly/cron.sh
/etc/cron.hourly/gcc4.sh/lib/libudev.so

緊接著清除掉如 XorDdos、Tsunami 和 aliyun.one 等其他攻擊者的惡意進程(如 Xm64、Ceurnad、/tmp/samba 和 Sc64u)、惡意文件與定時任務。

/root/pty
/tmp/bash
/dev/shm/bash
/var/tmp/bash
/var/lock/bash
/var/run/bash
/bin/httpsd
/lib/udev/udev
/lib/udev/debug
/root/sysem
/root/systma
/etc/jourxlv
/tmp/sysem
/tmp/su
/tmp/ddgs.*
/root/pty10
/root/pty4
/root/xmr64
/usr/local/sbin/t
/usr/local/sbin/rsync
/etc/ceurnad

為了感知最新的競爭者,腳本運行 atq 命令獲取待處理作業列表與系統目錄中的各種文件。過濾掉已知的文件,如 dump、docker、mount 等,留下可能是其他攻擊者的挖礦程序的文件列表。

檢測與緩解

SSH 服務非常普及,但如果使用專用的私鑰和公鑰并且攔截基于密碼的登錄,就可以阻攔針對 SSH 服務的爆破攻擊。

在 SSH 配置文件 /etc/ssh/sshd_config 中修改為如下即可:

PermitRootLogin no
PasswordAuthentication no

針對 dhpcd 的話,可以攔截 4444 端口的 TCP 通信或者攔截與已知礦池的通信。

結論

dhpcd 是一個長期活躍的挖礦團伙,主要通過 SSH 爆破進行傳播,通過挖掘門羅幣進行獲利。利用 Tor 擴展攻擊基礎設施后,該團伙的攻擊確實比其他攻擊者具有更好的穩定性和對抗性。

dhpcd 長達四年的活躍期再次向世人證明,即使是最簡單的攻擊仍然具備非常廣闊的“市場前景”。維持攻擊的運營與迭代,可以進行持續獲利。每個人都應該提高安全意識,哪怕是在細微之處也能使整體更安全。

IOC

fr14[.]minexmr[.]com
ca61[.]minexmr[.]com
sg97[.]minexmr[.]com
fr13[.]minexmr[.]com
us40[.]minexmr[.]com
pool[.]supportxmr[.]com
eb808932714c9533962e129e61d84c29536497e62b2a7d89dce3376d882c6965
e971fa0c392a9f43c37dccfdd4f8e6bc109e162716d9b206170f7bb133634ffd
76005592ad7d8901c64a5cfbcdde589a960ba35c9672da6182d131cd67ae0c97
2cca764d24212f8fc58780b9135740929f38b45bcd5fc82c4a2ff47e90890d06
3ea8cc0977e5542053353bcf3e58de947dd727259369707a13a4d0c8f14b7486