一次簡單的伺服器 cpu 占用率高的快速排查實戰
原svchost病毒伺服器cputrouble shoot排錯
前兩天,朋友遇到一個線上
cpu
占用率很高的問題,我們倆一起快速定位并解決了這個問題。在征求朋友同意後,特發此文分享整個過程。本文以對話的形式展開,加上我的内心獨白。文中對話與實際對話略有出入。
友: 在嗎?
我: 怎麼了兄弟?
友: 這邊有一台伺服器客戶說
cpu
占用率高,懷疑挖礦了。

我: 用
wpr
抓一下吧,這是個服務程序。
旁白:一看截圖是 svchost 程序,最先想到的是抓一個系統運作過程。正常情況下,svchost 是微軟的服務程序。
我: 看看是什麼服務。
旁白:盡量縮小範圍,此時我潛意識裡還以為是朋友自己的程式出了問題。
我: 先看看指令行 看看是哪類服務。
旁白:通過指令行可以看出啟動的是什麼類型的服務。![]()
一次簡單的伺服器 cpu 占用率高的快速排查實戰
友:
我:
svchost
應該不會放到
c:\temp
下面的,應該是個病毒了。
旁白:正常的 svchost 不會在 c:\temp 下出現,而是在 C:\Windows\System32\ 下。
我: 看看這個程式有微軟簽名嗎?
旁白:為了進一步确認,請朋友确認這個 svchost 是否有微軟的簽名。如果沒簽名,是病毒無疑了。
友:
svchost-property
我: 這個檔案沒簽名的?
旁白:WC,沒想到還真是病毒。
我: 應該是被人動過手腳了。
signed-svchost
我: 用
autoruns
看下啟動項。
旁白:确定是病毒後,接下來的任務就是殺毒了。先查下這個病毒是怎麼運作起來的吧。
從上面的截圖中我看到了 svchost.exe 的父程序是 taskhost.exe。
我: 到
schedule task
下面找到可疑的啟動項,删掉。這個程序可以直接殺了,應該是中毒了。
旁白:從上面的截圖中我看到了 svchost.exe 的父程序是 taskhost.exe。
友:
scheduled-tasks
**我:**管理者權限開了嗎?看上去沒有可疑的。
旁白:朋友開了管理者權限,也沒有發現可疑項目。
我: 看下服務裡面有沒有可疑的。
旁白:有可能是通過服務啟動的。
友:
service-status
我: 可疑!
highlighted-service-status
友: 這個裡面也沒簽名。
unsigned-taskhost
友: 中毒了。
scan-virsus-by-360
友: 謝謝!
旁白:朋友還順便發了個紅包,太客氣了!
完!