這兩天收到了自架的機器上資源超出 100% 的通知,進去機器使用 htop 觀察後

看到有個不明的 procss 名為 perfctl 佔了非常高的 cpu / memory 使用量。

簡單記錄一下處理過程和發現步驟 XD

  • 確認此 perfctl 執行使用者為 www-data,猜測應是由此台機器上的 wordpress 資安漏洞導致
  • 更新現有的 wordpress 與相關的 plugin / theme,修補資安漏洞
  • 首先嘗試了 kill -9 ${process id}
  • 砍掉 perfctl 後 cpu / memory 資源使用量確實大幅下降,約莫 1hr 後 perfctl 會自動重啟
  • 確認排程服務列表是不是有被修改過
for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done
  • 發現有一筆可疑的 cron job 排程
    備註:如果看不太懂 cron job expression 到這個 線上工具 看看,基本上就每小時會執行一次(和上述步驟測試結果吻合)
11 * * * * /home/www/.config/cron/perfcc
  • crontab -e 清除 cron job 排程並移除此惡意程式

經過一天持續觀察,確實就沒發生資源再度被佔用的情況,大致上就以上處理後告一段落!

事後發現其實也有其他人遇到類似問題:

https://serverfault.com/questions/1095192/100-cpu-load-caused-by-service-perfctl/1099296#1099296


wordpress 真的是個時常被打的目標,之前也不少次遇到 web shell 相關的檔案被惡意上傳上來,偶爾看看機器被打好像也挺有趣的(菸)

前提是要好好定時備份 ~還好這次不是遇到 不死木馬 那種各種砍不掉的 process (?)

之後有遇到再慢慢紀錄上來 XD

1 Comment

  • I have the same issue…but they now can spawn new miner malware once server rebooted..look at /tmp directory for xdiag folder and perf.c

Leave a Reply