dbused把我的CPU占滿了!linux服務器挖礦病毒的解決歷程
現象描述
今天通過密鑰以普通用戶tung的身份登錄遠程Cent OS服務器時,連接出現非常嚴重的卡頓,進入后發現CPU被名為dbused的行程占滿了!

reboot重啟服務器之后,以root身份登錄服務器,發現cpu是正常的,使用top命令查看,dbused并沒有運行,但是時不時出現tung用戶的bash行程和wget命令會運行,并沒有登錄tung用戶,該用戶的命令卻時不時運行,這讓我感到很奇怪,
此時登錄tung用戶后,dbused便立即執行并將整個CPU占滿,看來dbused這個行程的啟動跟用戶tung的登錄活動也是息息相關的,
解決歷程
1)解決未登錄用戶卻有該用戶的bash和wget行程執行的問題
時不時出現tung用戶使用bash命令和wget命令,懷疑存在定時任務,于是通過systemctl disable crond命令,禁止開機自動啟動crond,reboot重啟服務器,登錄root用戶,此時不再會有tung用戶下的行程和命令出現,
crond是定時任務服務,有關命令補充如下:
systemctl start crond #啟動服務
systemctl stop crond #關閉服務
systemctl restart crond #重啟服務
systemctl reload crond #重新載入配置
systemctl status crond #查看crontab服務狀態
systemctl enable crond #開啟開機自動啟動
systemctl disable crond #禁止開機自動啟動
進入到定時任務的檔案夾/var/spool/cron/下,發現確實存在一個tung用戶的定時任務,于是乎將其洗掉,

2)解決一登錄特定用戶就會啟動dbused并占滿CPU的問題
只要一登陸tung用戶,就會自動執行dbused,并把cpu占滿,使用kill -9 <病毒PID>殺死之后就正常了,但下次再啟動仍會執行,

這說明這一病毒的啟動與用戶的登錄行為相關,查看/home/tung/.bash_profile檔案發現了下面這一行例外代碼:

在我之前的嘗試中,曾定位到該行程的檔案位置/tmp/dbused,但我卻沒有在/tmp/里找到它,現在清楚了原因:這一行命令首先將/tmp/.pwn/bprofr復制到/tmp/dbused,然后執行并將其洗掉掉了,也就是說,源頭其實在這個隱藏檔案夾下,
于是我將/tmp/.pwn/bprofr檔案下載下來,并上傳到 virustotal 上,嗯,是病毒軟體實錘了,

將其洗掉并修改.bash_profile檔案后,再重新登錄該用戶后就沒有例外了,
現在又重新開啟定時任務服務systemctl enable crond ,reboot重啟之后也沒有什么例外出現了,
總結
- 出現一些行程不該啟動時卻時不時啟動,應當懷疑可能存在例外的定時任務,檢查
/var/spool/cron/目錄, - 特定用戶登錄時就自動執行的病毒,可以檢查一下該用戶目錄下的
.bash_profile檔案是否例外, - 通過各種方法定位到病毒檔案的位置后,將其洗掉,
疑惑
這已經是服務器第二次遭遇挖礦病毒了,第一次遭遇的是kdevtmpfsi 病毒,當時還很單純,服務器采用密碼登錄,估計密碼被暴力破解了,在那之后改用僅限密鑰登錄了,服務器安穩過了一個月,但不知道為什么仍然遭到了病毒的攻擊,可能是一些開放埠存在漏洞吧,
清理該病毒的程序中查閱了很多資料,這篇文章給我提供了比較大的幫助: 阿里云服務器挖礦程式解決流程
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/264245.html
標籤:其他
