故障表现:某天晚上突然收到某项目一台web服务器CPU报警,SSH连接困难卡顿,登陆后发现CPU使用率飙升到700%,第一感觉是被黑了,来事了。

故障处理:

1.登陆上后发现有好多莫名的命令(who/whoami/cat resolv.conf等,可见木马脚本还未被杀禁)kill -9后发现木马进程过段时间还会启动,所以肯定是有计划任务,去查看crontab果然有,删除后,chattr +i /etc/crontab禁止再被修改;

cat /etc/cron.hourly/gcc.sh(也可能是gcc4.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/libudev4.so /lib/libudev.so.6
/lib/libudev4.so

可以确定/lib/libudev4.so就是木马本体,可是删除后又会产生,用chmod 000 /lib/libudev4.so && chattr +i /lib/libudev4.so 去除执行权限并且锁住,一会再处理掉;

2.再检查别的启动项,/etc/rc.local文件中也被添加了启动脚本,/etc/init.d/中添加了启动项,删除掉并chattr +i  /etc/rc.local && chattr +i  /etc/init.d/

3.怕黑客还连在服务器上,用who命令看看连接的用户没有异常。检查秘钥,果然看到authorized_keys文件被添加了1个公钥,删除掉并chattr +i  /root/.ssh/authorized_keys; 
至此,登陆的后门和木马的计划任务已经清理结束,开始清理现有木马进程;
 

4.先使用lsof -R | grep "/usr/bin" 查看/usr/bin/下运行的程序,然后使用ls -lt /usr/bin | head 查看/usr/bin下最近修改的文件,pkill掉相关进程,rm -fr /usr/bin/klxgfnwgpc && chattr +i /usr/bin/ 删除并锁定;

/bin下也有,可见这病毒复制之多,同4一样处理掉;

5./etc/rc0.d中也有 删除之 从rc0.d-rc6.d中都有!

!!!至此 木马病毒清理完毕  观察一段时间后没有新的木马生成启动,再把之前锁掉的目录文件用chattr -i解锁掉!!!
 
后记:病毒是因为此台机器上面跑着tomcat,因为struts2漏洞导致的,具体可参考http://www.codesec.net/view/546457.html
 
总结:1.防范最重要,有漏洞一定要重视不要抱着侥幸的心态,即使中招了也不要慌,一步步分析(譬如病毒会杀掉后还会启动,这里就要一定怀疑是有计划任务!);
         2.病毒程序可能会替换掉一些程序,譬如ps/lsof/netstat/ss这4个命令,要跟别的服务器中相关命令比较下大小就能看出区别,然后拿过来替换掉;
         3.最重要的一点:liunx的时间不会骗人!善用 ls -lt 查看最近修改过的东西就能发现病毒的马脚;
         4.chattr +i加锁;
 
 
 

linux服务器随机10字符病毒/libudev4.so病毒清理的过程的更多相关文章

  1. 转:Linux下随机10字符病毒的清除

    病毒表现:网络流量暴满,疯狂地向香港的一个IP发数据,同时在top里面表现为随机的10位字母的进程,看/proc里面的信息,则为ls,cd之类常见的命令,CPU利用率也在top之首.杀死该进程后,会再 ...

  2. 高性能Linux服务器 第10章 基于Linux服务器的性能分析与优化

    高性能Linux服务器 第10章    基于Linux服务器的性能分析与优化 作为一名Linux系统管理员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行.但硬件问题.软件问题.网络环境等 ...

  3. linux服务器报No space left on device错误的解决过程记录

    起因 今天在本地提交了点代码,但到服务器上git pull的时候提示No space left on device,第一反应是猜想可能硬盘满了(很有可能是log导致的),不过想想又觉得不太可能,这台服 ...

  4. 1分钟内检查Linux服务器性能的10条命令

    如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在?Netflix性能工程团队的Brendan Gregg写下了这篇博文,来看他们是怎样通过十条命 ...

  5. 线上Linux服务器运维安全策略经验分享

    线上Linux服务器运维安全策略经验分享 https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&a ...

  6. linux服务器开发三(网络编程)

    网络基础 协议的概念 什么是协议 从应用的角度出发,协议可理解为"规则",是数据传输和数据的解释的规则. 假设,A.B双方欲传输文件.规定: 第一次,传输文件名,接收方接收到文件名 ...

  7. Linux服务器运维安全策略经验分享

    http://jxtm.jzu.cn/?p=3692 大家好,我是南非蚂蚁,今天跟大家分享的主题是:线上Linux服务器运维安全策略经验.安全是IT行业一个老生常谈的话题了,从之前的“棱镜门”事件中折 ...

  8. 【微学堂】线上Linux服务器运维安全策略经验分享

      技术转载:https://mp.weixin.qq.com/s?__biz=MjM5NTU2MTQwNA==&mid=402022683&idx=1&sn=6d403ab4 ...

  9. Linux服务器上监控网络带宽的18个常用命令nload, iftop,iptraf-ng, nethogs, vnstat. nagios,运用Ntop监控网络流量

    Linux服务器上监控网络带宽的18个常用命令 本文介绍了一些可以用来监控网络使用情况的Linux命令行工具.这些工具可以监控通过网络接口传输的数据,并测量目前哪些数据所传输的速度.入站流量和出站流量 ...

随机推荐

  1. linux中cut命令与tr命令

    目录 一:linux中cut命令 1.cut 命令作用 2.参数 3.参数案例解析: 二:tr命令 1.tr命令作用 2.tr命令格式 3.tr命令参数 4.案例解析: 一:linux中cut命令 1 ...

  2. Kubernetes之日志和监控(十五)

    一.日志和监控 1.1.Log 1.1.1.容器级别 通过docker命令查看容器级别的日志 docker ps --->containerid docker logs containerid ...

  3. JVM诊断及工具笔记(2)使用arthas定位哪里执行了System#gc()

    笔者是汽车之家实时计算平台的一名小伙伴.负责flink平台,数据湖及kafka平台的设计与开发.平时擅长做平台设计,定位及解决各种疑难杂症.第二篇文章,讲的点依旧很小,但是这次图多!!! 在这里感谢支 ...

  4. 社交网络分析的 R 基础:(一)初探 R 语言

    写在前面 3 年的硕士生涯一转眼就过去了,和社交网络也打了很长时间交道.最近突然想给自己挖个坑,想给这 3 年写个总结,画上一个句号.回想当时学习 R 语言时也是非常戏剧性的,开始科研生活时到处发邮件 ...

  5. django入门 02 初探app、view、url、templates、static

    创建APP命令 python manage.py startapp myapp app组成介绍 如上图,在终端中展示树状结构-- windows为 tree /f macOS为 tree 注册APP ...

  6. APC 篇——总结与提升

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  7. 实现Nginx代理WSS协议

    因为线上H5游戏需要加上SSL,不想在原来的Web 服务器和游戏服务器支持SSL,只希望 在Nginx代理集群支持SSL.整体架构如下: 从上图可以看出需要总共涉及到https/http 和wss/w ...

  8. 有了Autolayout的UILabel

    在没有Autolayout之前,UILabel的文字内容总是居中显示,导致顶部和底部会有一大片空缺区域 有Autolayout之后,UILabel的bounds默认会自动包住所有的文字内容,顶部和底部 ...

  9. NSArray文件读写

    1.NSArray数据写入到文件中 NSArray *arr = @[@"lnj", @"lmj", @"jjj", @"xcq& ...

  10. Hadoop完全分布式的配置

    选取机器sam01作为主节点,并进行分布式文件的配置 1.进入Hadoop配置文件路径/usr/local/hadoop/etc/hadoop(这里我把Hadoop安装在/usr/local目录下) ...