最近朋友的一台服务器突然网络异常,cpu占用率暴表,登录上去一查,cpu占用300% 左右,流量异常,经过看查进程,获取信息最终确认为中了dos木马,经过几天的研究,基本上已经清除,以下是清理记录。
一、现象
1、CPU占用超高。
2、网络流量异常。
3、对外ddos攻击
4、服务器卡顿。
二、文件异常
1、系统主要命令文件被替换:
ps,netstat,lsof,ss命令被替换
chattr,lsattr文件被删除。
1) top 可以看见一个随机的文件名,占用资源较高
2) ps -ef 可以看见很多收集系统信息的命令,是木马脚本自动执行的
3) 系统的chattr被删除,无法修改文件的i属性
恢复以上命令,可以使用yum重装以下rpm包:
1 ps 属于 procps
2 ss 属于 iproute
3 netstat 属于 net-tools
4 使用yum重装可恢复
5 yum -y reinstall procps lsof iproute net-tools
三、查杀过程
3.1 暂停木马进程,主要不能kill掉
不能杀完,杀掉以后自动生成,文件名随机
3.2 删除计划任务/etc/crontab下的异常计划任务
03 |
PATH= /sbin : /bin : /usr/sbin : /usr/bin |
07 |
01
* * * * root run-parts /etc/cron .hourly |
08 |
02
4 * * * root run-parts /etc/cron .daily |
09 |
22
4 * * 0 root run-parts /etc/cron .weekly |
10 |
42
4 1 * * root run-parts /etc/cron .monthly |
11 |
* /3 *
* * * root /etc/cron .hourly /gcc4 .sh |
删除/etc/crontab下面最后一行计划任务,然后再删除/etc/cron.hourly下面的文件
gcc4.sh文件内容如上图。
3.3 删除如下目录和文件
根据网上面的操作指引,删除下面的文件,有些可能目录不同。
01 |
rm -rf /usr/bin/dpkgd ( ps netstat lsof ss) |
02 |
rm -rf /usr/bin/bsd-port (木马程序) |
03 |
rm -f /usr/local/zabbix/sbin/zabbix_AgentD (木马程序) |
04 |
rm -f /usr/local/zabbix/sbin/conf .n |
12 |
rm -f /tmp/notify . file 程序 |
13 |
rm -f /tmp/gates .lock
进程号 |
14 |
rm -f /etc/rc .d /init .d /DbSecuritySpt (启动上述描述的那些木马变种程序) |
15 |
rm -f /etc/rc .d /rc1 .d /S97DbSecuritySpt |
16 |
rm -f /etc/rc .d /rc2 .d /S97DbSecuritySpt |
17 |
rm -f /etc/rc .d /rc3 .d /S97DbSecuritySpt |
18 |
rm -f /etc/rc .d /rc4 .d /S97DbSecuritySpt |
19 |
rm -f /etc/rc .d /rc5 .d /S97DbSecuritySpt |
20 |
rm -f /etc/rc .d /init .d /selinux (默认是启动 /usr/bin/bsd-port/getty ) |
21 |
rm -f /etc/rc .d /rc1 .d /S99selinux |
22 |
rm -f /etc/rc .d /rc2 .d /S99selinux |
23 |
rm -f /etc/rc .d /rc3 .d /S99selinux |
24 |
rm -f /etc/rc .d /rc4 .d /S99selinux |
25 |
rm -f /etc/rc .d /rc5 .d /S99selinux |
如果无法删除以上文件,可能是文件被附加了i属性,使用chattr -i 去掉文件的i属性,若chattr命令被木马删除,则从其他地方拷贝一个放在/usr/bin下。使用下面的命令也可以完成安装。
3.4 删除服务里面的异常服务
1 |
chkconfig
--list| grep :on |
3.5 使用clamav进行病毒查杀
02 |
yum install -y
epel-release |
07 |
clamscan
-r /etc --max- dir -recursion=5
-l /root/etcclamav .log |
08 |
clamscan
-r /bin --max- dir -recursion=5
-l /root/binclamav .log |
09 |
clamscan
-r /usr --max- dir -recursion=5
-l /root/usrclamav .log |
11 |
clamscan
-r --remove /usr/bin/bsd-port |
12 |
clamscan
-r --remove /usr/bin/ |
13 |
clamscan
-r --remove /usr/local/zabbix/sbin |
15 |
cat /root/usrclamav .log
| grep FOUND |
16 |
/usr/bin/ohhnzdjent :
Unix.Trojan.DDoS_XOR-1 FOUND |
17 |
/usr/bin/oracle :
Legacy.Trojan.Agent-1388639 FOUND |
18 |
/usr/bin/tgbtrjldlq :
Unix.Trojan.DDoS_XOR-1 FOUND |
19 |
/usr/bin/wcwghpgruw :
Unix.Trojan.DDoS_XOR-1 FOUND |
3.6 彻底查杀木马
经过上面的查杀以后,基本上消灭了大部分的病毒文件,但是使用top,htop命令会发现,病毒会不断的自动生成,相互守护,导致无法彻底杀完,经过多次的分析与尝试,发现可能是/lib/libudev4.so文件导致的。
1) 尝试破坏病毒文件
1 |
echo slkfhrl,kfhs
> /lib/libudev4 .so |
4 |
chattr
+i /lib/libudev4 .so |
2) 通过关联文件清除服务里面的异常服务
写一个脚本,批量清除异常服务
2 |
rm -f /etc/rc0 .d /K90ohhnzdjent |
3 |
rm -f /etc/rc0 .d /K90mpmhvgceym |
4 |
rm -f /etc/rc0 .d /K90xcswyyarmo |
5 |
rm -f /etc/rc0 .d /K90jjonjuuhvj |
6 |
rm -f /etc/rc0 .d /K90smucwhghwq |
7 |
rm -f /etc/rc0 .d /K90qfdmatbsmw |
8 |
rm -f /etc/rc0 .d /K90vxlrotywez |
经过观察,发现病毒进行已经成功清除。
参考URL:
http://www.freebuf.com/articles/system/119374.html
https://sebastianblade.com/linux-xorddos-trojan-removal/
http://www.2cto.com/article/201508/428264.html
http://www.myhack58.com/Article/48/66/2016/71075_2.htm
https://www.baidufe.com/item/e972015c88715fd8cd52.html
http://blog.csdn.net/linux7985/article/details/51153246
http://www.cnblogs.com/shiyiwen/p/5191869.html