1. 程式人生 > >記一次Xmrig挖礦木馬排查過程

記一次Xmrig挖礦木馬排查過程

linux 系統 異常 定位 計劃任務 root systemctl ica 文件名 發現

問題現象

Linux 服務器收到報警信息,主機 CPU 跑滿。

技術分享圖片

自動創建運行 Docker 容器 xmrig, 導致其他運行中容器被迫停止。

技術分享圖片

問題原因

通過 top 命令可以看到有一個 xmrig 進程占用了99%的 CPU。

技術分享圖片

經定位,該進程是一個挖礦木馬程序,通過上述截圖可以看到進程對應的 PID 為 2647,根據進程 ID 查詢一下產生進程的程序路徑:

ll /proc/2647/exe

技術分享圖片

查看進程:

技術分享圖片

嘗試處理

首先停掉該 Docker 容器,並刪除其對應鏡像。

1. 查看計劃任務

Linux 系統中默認創建了計劃任務後會在 /var/spool/cron 目錄下創建對應用戶的計劃任務腳本,查詢一下系統中是否有異常的計劃任務腳本程序:

ls /var/spool/cron

刪除異常任務其配置項。如果當前系統之前並未配置過計劃任務,可以直接刪除計劃腳本目錄即可:

rm -rf /var/spool/cron/* 

2. 查看密鑰認證文件

刪除木馬創建的密鑰認證文件,如果當前系統之前並未配置過密鑰認證,可以直接清空認證存放目錄:

rm -rf /root/.ssh/* 

如果有配置過密鑰認證,需要刪除指定的黑客創建的認證文件即可。

3. 修復 SSH 配置項

一般默認腳本中進行修改的 PermitRootLogin、RSAAuthentication、PubkeyAuthentication 為開啟狀態,需要修改的是密鑰認證文件名,建議修改成默認值 AuthorizedKeysFile .ssh

/authorized_keys 即可。修改完成後重啟 sshd 服務,使配置生效即可。

4. 查看開機啟動腳本

執行 systemctl list-unit-files 發現可疑程序:

技術分享圖片

進入 /etc/systemd/system/ 目錄找到並查看該腳本:

技術分享圖片

該腳本執行了 /xm 腳本,並且總是會重啟服務。如果此程序不進行清除,即使刪除了 Docker 容器並殺死了對應的進程,過一會還是會執行重新創建 Docker 容器,又導致服務器異常。

因此,先停止啟動腳本配置項:

systemctl disable name.service

刪除腳本:

rm -rf /etc/systemd/system/xm.service
rm -rf /xm

以上修復完成後可以等待一會再次進行一下觀察,看看是否還會在根目錄下創建新的 xm 程序,以及是否還有新的 xmrig 進程產生。

記一次Xmrig挖礦木馬排查過程