zoukankan      html  css  js  c++  java
  • qW3xT.2挖矿病毒 解决过程及坑

          周一早上老大让我把项目更新一下,然后配置一下elasticsearch,我登上服务器之后部署的时候没有什么感觉,但是在配置elasticsearch的过程中感觉服务器哪个地方有点不对,下意识的top了一下,不看不知道一看吓一跳,一个进程竟然占了400的CPU

    首先想到谁登服务器搞了什么鬼,毕竟不是我一个人在用这个服务器,没敢贸然杀死,上网查了一下发现很多朋友都遇到了这个问题,说是一个挖矿的病毒,然后就上网一通乱找,一通乱看,最后大致了解到了解决办法,总共应该分这几步吧:

    1:首先找到它的来源,从哪里进来的,从根本上杜绝这种事情的再发生

    2:找到他的守护进程,并把它干掉、干掉、干掉。一定要干干净了

    我想先找到这个进程从哪里运行的,就是他的脚本文件到底在哪,我top之后知道了他的PID

    image

    接下来就根据PID来找他的位置

    Linux在启动一个进程的时候,系统会在/porc下创建一个以PID为名称的文件夹,在这个文件夹下有这个进程的详细信息,我们进去看一下

    image

    cwd符号链接的是进程运行目录;

    exe符号连接就是执行程序的绝对路径;

    cmdline就是程序运行时输入的命令行命令;

    environ记录了进程运行时的环境变量;

    fd目录下是进程打开或使用的文件的符号连接。

    我们看exe后面的绝对路径,进去之后会发现


    D7186118-3715-4afa-B20B-A9F0A21A65F8

    里面有两个可执行文件,其中一个就是qW3xT.2  不多说,直接干掉,然后杀死这个进程,但是当你杀死之后一分钟左右还是会蹦出来,这是怎么回事,原来还有一个唤醒线程,这个很重要,如果你只杀死了主进程就以为万事大吉了,那你错了,另一个线程依然会把这个进程复活,而且这个进程只有在主进程杀死以后才会出现,一旦主线程激活之后这个线程就找不到了,所以先杀死主线程,然后找到唤醒线程,一次干掉他们

        OK 到这里基本上这玩意儿就没了,我默默的看着top出来的结果YY起来,然后我就傻逼了,他又出来了Sleepy smile

        这尼玛,还干不掉你了,我明明已经把执行文件都删除了它怎么又冒出来了,从哪来的呢?明明删除了不会无缘无故的出来,经过一番查找,终于发现了一个地方/var/spool/cron  在这个路径下面有一个文件和目录

    image

    目录里面放的和外面放的是一样的两个root文件,我看了看里面的内容,是个下载链接,这个时候我还是不敢轻易删除,我把这个链接直接在本地打开看了一下

    image

      妹的,是个脚本文件,而且根据里面的内容可以发现就是那个文件,不多说了,直接干掉

      这次没东西再去下载文件了这次总没事了吧,我静静等了两分钟。。。。它又出来了。。。。。。

    有了之前的思路,我想了一下直接开始找root文件,全局搜索,一下出来了一大堆,然后慢慢找,看到/etc/cron.d/root  这个有点眼熟,跟上次干掉的那么像呢,就看了一下里面内容

    image

    又是这个链接,虽然有点看不懂,但是管不了这么多了,直接干掉吧

    这次总行了吧,坚持了两分钟。。。。又出来了

    然后一通乱查,就是不知道问题出在哪了,最后想到了一个问题,守护进程,我每次杀的时候都是直接杀的病毒,然而守护进程我一直没有动它,问题可能就出在这儿了,ps –ef|grep ddg  查看进程果然在,直接干掉,然后再重复之前的操作,找文件删除,杀死病毒挖矿进程,然后监测守护进程会不会活

    终于。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

    它这次好像彻底死了

    总结:

        1:找到启动文件在哪,干掉

        2:找到远程连接下载脚本的文件干掉,这个过程中如果能大体判断文件名直接全局查找,然后找到可疑文件,看看内容有问题直接干掉

        3:先干掉守护进程,再干掉挖矿进程  (切记守护进程一定要干掉)

        第一步和第三步两个要反复查看,无论是启动文件在或者进程在都会再次复活

    当然我们还要避免类似事情再发生,还是要追究根源,网上说的是Redis的问题,我之前一直将信将疑的没有往上写,但是在杀的过程中,几个文件中确实看到了关于Redis的字眼,从此判断确实可能是Redis的问题,所以我们要对Redis的配置做出修改,使它更加安全,比如:修改Redis的默认端口,修改成繁琐的密码

    这一步最好是在你杀毒之前做好,毕竟说这是根源,万一你在杀毒的过程中通过Redis再对你进行什么操作这应该不是不可能的,毕竟你漏洞在哪,不修补总是会出现问题的

    最后在补充一点小东西,有些在植入病毒之后不仅使用你的资源,还会登录你的账号,你可以查看一下 /etc/passwd 看看有没有你不认识的账号(不包含系统内置账号,系统内置账号你干掉那可别怪我Smile with tongue out),有的话直接禁止登录,或者直接删除掉都行

          安全问题看来是很严峻啊,之前也是没有遇见过这种问题,写下文章记录我在解决这个问题的全过程以及遇到的一些坑

  • 相关阅读:
    AOP编程之cglib动态代理:进阶一
    16-python基础5-文件读写操作
    13-python基础2-条件和循环
    12-python基础1-python概述
    11-linux基础八-正则表达式
    07-linux基础四-系统监控和硬盘分区
    06-linux基础三-文件操作和系统启动流程
    05-linux基础二-用户和权限操作
    04-linux基础一概述和简单命令
    03-网络通信原理
  • 原文地址:https://www.cnblogs.com/SunArmy/p/9662006.html
Copyright © 2011-2022 走看看