一、现象

[root@localhost ~]# top
服务器不停的向外发包,网络流量暴满,且CPU持续100%。远程登录后查看发现有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串进程。删除文件也会重复生成
这说明主进程会快速产生几个子进程,然后这些进程之间相互检测,一旦检测到病毒主体被删除或更改,就会再产生一个
想到病毒一般都会有检测机制,所以查找其根文件,crontab、/etc/rc.d/init.d、/etc/rc3.d/、/etc/rc.d/rc.local、systemd
病毒居然会定时!!
[root@localhost ~]# crontab -l #未发现异常任务 [root@localhost ~]# cat /etc/crontab */3 * * * * root /etc/cron.hourly/cron.sh */3 * * * * root /etc/cron.hourly/kill.sh
#cat /etc/cron.hourly/cron.sh #!/bin/sh PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin for i in `cat /proc/net/dev|grep :|awk -F: {'print $1'}`; do ifconfig $i up& done cp /lib/udev/udev /lib/udev/debug /lib/udev/debug
#cat /etc/cron.hourly/kill.sh #!/bin/sh PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/bin for i in `cat /proc/net/dev|grep :|awk -F: {'print $1'}`; do ifconfig $i up& done cp /lib/libkill.so /lib/libkill.so.6 /lib/libkill.so.6
单看cron.sh基本能分析出来它的毒害原理了,我的猜测:
/lib/udev/udev是病原体,通过cron.sh每隔一段时间自动检测一次,如果木马程序不存在,就从病原体复制一份儿到/lib/
副本/lib/udev/debug执行,生成一个随机命名的程序,丢到/usr/bin/、 /etc/ 、 / lib 等目录
同时修改了自启动配置chkconfig –add xxx ,同时修改自启动项/etc/rc.local
二、解决
删除相关病毒文件
#rm -rf /etc/cron.hourly/kill.sh /etc/cron.hourly/cron.sh //删除自动执行shell #pkill asdjhrsdrf #rm -rf /lib/libudev.so &chattr +i /lib //删除病原体!! #rm –rf /usr/bin/asdjhrsdrf &chattr +i /usr/bin
//chattr +i 作用是限制目录写入文件 !!!!!!!!(重点!防止病毒再生!)
//chattr -i 是取消限制(确定病毒已经完全杀死时重新启用)
注意最后搜索全盘看是否还有残留
#find / -name libudev.so #top
三 、 总结
木马程序的出现,而且是root账号下,应该是之前风靡的OpenSSL心血漏洞引起
为防止再中病毒应尽早升级openssl至最新版
此时病毒如果还是在的,top看一下,然后删除主进程,删除病毒产生的相关文件就ok了!