1、起因

  因为这台服务器是我们公司内部开发服务器,几乎每个人都有root密码。在两天前突然有同事反馈说偶尔会有ssh连不上,git代码无法提交的问题,刚开始也没有在意,以为是阿里云服务器网络波动的原因。

  今天开发又像我反应redis连不上并且ssh也连不上,感觉事情没有想象的那么简单了,还好我在跳板机上能够远程连接上,所以就稍微看了一下。

2、处理过程

2.1 观察监控和服务器资源

  因为觉得不对劲,所以瞄了一眼监控,发现这台服务器eth0网卡的流量被跑满了,图在下面

  在服务器上通过ifconfig查看,发现eth0这个网卡已经被跑了好几个T的流量了。

  知道是因为网卡流量被跑满了,所以要看一下到底是什么进程跑掉的,于是ps -ef看了一下,发现进程真特么多完全没法一眼看出来,想了想既然跑那么多流量那一定也比较吃资源,决定top d1看一眼,不看不知道一看吓一跳,不多说了上图:

  这个pid为7796的进程吃了76.2%的CPU,这是要上天啊!!!

2.2 话不多说就是干

  二话不说直接kill -9 7796,然后试了一次ssh连接,果然好使,秒秒钟就连上了,然后观察监控,果然流量也下来了。

2.3 事情并没有这么简单

  然而事情并没有这么简单,我还没开始嘚瑟,流量又上去了,ssh也连不上了。

  这个还带满血复活的么?事情并不简单,top d1一看,又有一个不认识的进程起来了,还是那么的吃CPU。不管三七二十一又是一顿操作猛如虎秒秒钟杀了它。

  满血复活应该是有定时任务啊!!!其实我也不确定有没有,反正有想法总是好的,然后crontab -l看了一眼:

  并没有定时任务啊,果然能做这种缺德事的一般脑子都是比较灵光的。还好我看了一眼定时任务的配置文件:

  果然是定时任务的原因,然后赶紧把定时任务删了,把定时任务对应目录下的脚本自己down下来,然后删掉。

  说了没那么简单,果然真的没那么简单,之前的处理方式太草率了,以为把定时任务删掉之后就万事大吉了,结果没多久又开始了:

  这次我觉得慢慢来,看一下这个进程到底是哪里来的,已知进程pid为27894

  查看一下这个进程的具体目录在哪里:

  可以看到cwd -> /tmp,进入/tmp目录查看:

  该目录下游几个可执行文件,直接删掉!!!

3、硬是没总结出什么来

  关于这次的事件,具体是什么原因导致的我也没想明白,最大的可能就是root密码知道的人太多了。

  最后把两个脚本放上来,大家研究研究:

0anacron:

#!/bin/sh
# Check whether 0anacron was run today already
if test -r /var/spool/anacron/cron.daily; then
day=`cat /var/spool/anacron/cron.daily`
fi
if [ `date +%Y%m%d` = "$day" ]; then
exit 0;
fi # Do not run jobs when on battery power
if test -x /usr/bin/on_ac_power; then
/usr/bin/on_ac_power >/dev/null 2>&1
if test $? -eq 1; then
exit 0
fi
fi
/usr/sbin/anacron -s

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

参考:

清理了一个服务器 DDos 木马 - V2EX

Linux服务器中木马(肉鸡)手工清除方法 - -V - 博客园

Unix.Trojan.DDoS_XOR-1、Linux.Trojan.Agent(Linux.BackDoor.Gates.5)木马清理 - CSDN博客

一次Linux服务器被入侵和删除木马程序的经历-彩龙社区 - Powered by Discuz!

Linux服务器下Linux.BackDoor.Gates.5病毒的简单处理方法 - 小西瓜的管理和技术之路 - SegmentFault 思否

记一次阿里云linux病毒清理过程的更多相关文章

  1. 记一次阿里云Linux服务器安装.net core sdk的问题以及解决方法

    因为公司领导要求新的项目能跨平台部署,也就是说能部署到Linux服务器上,故新的项目采用了Asp.net mvc core 1.1 进行开发.开发过程一切都比较顺利,然后在之前申请试用的一台微软Azu ...

  2. 阿里云Linux安装软件镜像源

    阿里云Linux安装软件镜像源 阿里云是最近新出的一个镜像源.得益与阿里云的高速发展,这么大的需求,肯定会推出自己的镜像源.阿里云Linux安装镜像源地址:http://mirrors.aliyun. ...

  3. [分享]运维分享一一阿里云linux系统mysql密码修改脚本

    [分享]运维分享一一阿里云linux系统mysql密码修改脚本       大象吃豆子 级别: 小白 发帖 12 云币 27 加关注 写私信   只看楼主 更多操作楼主  发表于: 2014-09-3 ...

  4. 在阿里云Linux服务器上安装MySQL

    申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务器. 操作系统:Red Hat Enterprise Linux Server 5.4 64位. CPU:1核 内存:5 ...

  5. Xftp连接阿里云Linux,向Linux上传文件,Windows和Linux文件传输

    我之前是用SecureCRT连接阿里云Linux的,上传文件用的Alt+p快捷键,感觉不是很方便.后来朋友给我推荐了Xshell,感觉确实好用得很多. 传输文件用的是Xftp,今天在向我的个人网站发布 ...

  6. 阿里云Linux服务器安装 nginx+mysql+php

    阿里云Linux服务器安装 nginx+mysql+php步骤1.登录服务器2.下载安装包3.将安装包上传到服务器的/home目录下 注:使用rz sz命令进行本地和服务器间的上传.下载,安装命令yu ...

  7. 阿里云linux图形界面(centos6)

    阿里云linux图形界面的安装方法:安装gnome图形化桌面#yum groupinstall -y "X Window System"#yum groupinstall -y & ...

  8. 阿里云Linux服务器初探

    阿里云Linux服务器初探 阿里云Linux服务器初探 因为钱包的关系,本人买了一个660元2年的1核1GB的小服务器(centos是Linux的发行版),在当初是用2核4GB(内存)的时候使用的是w ...

  9. 阿里云Linux CentOS 7 Docker部署使用gogs搭建自己的git服务器

    一.前言 Git是目前优秀和流行的源代码管理工具.而GitHub是一个面向开源及私有软件项目的托管云平台,但开源免费,私有收费.而公司出于商业化等目的需要搭建自己的源代码托管服务器.通过网上了解Gog ...

随机推荐

  1. thymeleaf switch在表格中的使用,遇到的空行问题

    switch在表格中的使用时 如果把<td>写在<div th:switch="${data.isShow}"> 里面导致外面出现很多空的<div&g ...

  2. 18_java之集合Collection

    01集合使用的回顾 *A:集合使用的回顾 *a.ArrayList集合存储5个int类型元素 public static void main(String[] args) { ArrayList< ...

  3. **利用列表和super实现有序字典

    class MyDict(dict): def __init__(self): self.temp_list = [] super(MyDict,self).__init__() def __seti ...

  4. 跟我学算法-tensorflow 实现神经网络

    神经网络主要是存在一个前向传播的过程,我们的目的也是使得代价函数值最小化 采用的数据是minist数据,训练集为50000*28*28 测试集为10000*28*28 lable 为50000*10, ...

  5. Mysql EXPLAIN列的解释

    转自:http://blog.chinaunix.net/uid-540802-id-3419311.html explain显示了mysql如何使用索引来处理select语句以及连接表.可以帮助选择 ...

  6. PHP - 请求阻塞,Session写阻塞

    之前写某些代码的时候,发现用户莫名奇妙地阻塞了,而且这种阻塞的情况还比较难以形容: 使用session过程中,在开启session后,同一浏览器,执行同一程序,不同页面会被锁.不同浏览器不会出现这种情 ...

  7. Spring <context:annotation-config />讲解

    在基于主机方式配置Spring的配置文件中,你可能会见到<context:annotation-config />这样一条配置,他的作用是向Spring容器注册AutowiredAnnot ...

  8. aws s3 python sdk

    http://boto3.readthedocs.io/en/latest/reference/services/s3.html#S3.Client.get_object abort_multipar ...

  9. 【2018沈阳赛区网络预选赛J题】Ka Chang【分块+DFS序+线段树】

    题意 给出一个有根树(根是1),有n个结点.初始的时候每个结点的值都是0.下面有q个操作,操作有两种,操作1.将深度为L的点的值全部增加X.操作2.查询以x为根的子树的结点值得和. 其中N,Q< ...

  10. iOS中NSDate常用转换操作整合

    //当前时间格式化, 例:YYYY-MM-dd-EEEE-HH:mm:ss + (NSString *)getCurrentDataWithDateFormate:(NSString *)format ...