七叶笔记 » Linux » 如何实现CentOS不停向外发包

如何实现CentOS不停向外发包

如何实现CentOS不停向外发包?

服务器不停的向外发包,且CPU持续100%,远程登录后查看发现有一长度为10的随机字符串进程,kill掉,会重新生成另外长度为10的字符串进程。删除文件也会重复生成,非常痛苦。查阅crond相关日志,发现实际执行的内容为/lib/libudev.so ,以此为关键字进行查询,找到如下内容:

1.1 工具/原料

Linux系统病毒文件libudev.so

1.2 方法/步骤

1.网络流量暴增,使用 top 观察有至少一个 10 个随机字母组成的程序执行,佔用大量 CPU 使用率。删除这些程序,马上又产生新的程序。

2.检查 cat /etc/crontab 发现定时任务 每三分钟执行一个脚本gcc.sh

*/3 * * * * root /etc/cron.hourly/gcc.sh

查看病毒程式 gcc.sh,可以看到病毒本体是 /lib/libudev.so。

[root@deyu ~]# cat /etc/cron.hourly/gcc.sh#!/bin/shPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/X11R6/binfor i in `cat /proc/net/dev|grep :|awk -F: {'print $1'}`; do ifconfig $i up& donecp /lib/libudev.so /lib/libudev.so.6/lib/libudev.so.6

删除上一行例行工作 gcc.sh,并设定 /etc/crontab无法变动,否则马上又会产生新的文件。

[root@deyu ~]# rm -f /etc/cron.hourly/gcc.sh && chattr +i /etc/crontab

使用 top 查看病毒为 mtyxkeaofa,id 为 16621,不要直接杀掉程序,否则会再次产生新的文件,而是停止其运行。

[root@deyu ~]# kill -STOP 16621

删除 /etc/init.d 内的档案。

[root@deyu ~]# find /etc -name '*mtyxkeaofa*' | xargs rm -f

删除 /usr/bin 内的档案。

[root@deyu ~]# rm -f /usr/bin/mtyxkeaofa

查看 /usr/bin 最近变动的档案,如果是病毒也一併删除,其他可疑的目录也一样。

[root@deyu ~]# ls -lt /usr/bin | head

现在杀掉病毒程序,就不会再产生。

[root@deyu ~]# pkill mtyxkeaofa

删除病毒本体。

[root@deyu ~]# rm -f /lib/libudev.so

使用此方法 可以完全清除此病毒。

1.3 注意事项

/proc里面的东西是可以更改的;lsof还比较忠诚,不直接读取/proc里面的信息,ps看到的就不一定真实,top看到的进程还是正确的。 附:find -o参数就是逻辑运算的or

相关参考:centOS教程


相关文章