腾讯云服务器被挖矿解决

一般服务器被挖矿后,CPU会占用到百分百。可以通过top命令,查看cpu使用率。

以下是所经历过的挖矿病毒及解决方法。

挖矿进程:ld-linux-x86-64

进程信息

使用top命令查看进程信息。cpu占用400,是挖矿程序。pid是21980,后边需要用到。
paste image

解决方法

  1. 删掉定时任务

    1
    2
    # 编辑定时任务
    crontab -e

    paste image
    光标移动到这一行:* * * * * /usr/lib/updated/upd >/dev/null 2>&1,按dd删掉这一行并保存。

  2. 如果删除提示权限不足
    paste image
    可能是文件被设置为隐藏、或不可编辑。查看文件属性:lsattr /var/spool/cron/root

    • 如果结果中有i,执行:chattr -i /var/spool/cron/root
    • 如果结果中有a,执行:chattr -a /var/spool/cron/root;

    再执行删除定时任务。

  3. 杀掉进程

    1
    kill -9 21980

挖矿进程:kdevtmpfsi

进程信息

使用top命令查看进程信息。cpu占用近400,是挖矿程序。
paste image

问题排查

  1. 根据进程名查询进程所在的目录

    1
    find / -name kdevtmpfsi

    paste image
    根据目录名看出来该进程在Docker容器中。

  2. 根据overaly2的id搜索容器name
    把双引号中的内容替换成上一步中搜索的结果,选择带merged的那条记录。

    1
    docker ps -q | xargs docker inspect --format '{{.Name}}, {{.GraphDriver.Data.WorkDir}}' | grep "f01d21084945ef8b389fc9f1d6b26444b11fcaf8eaf4616ba5ae6b6e8d18621e"

    paste image

  3. 根据容器name查看容器详细
    这个容器不是我们的业务容器,猜测是挖矿容器。

    1
    2
    3
    4
    5
    6
    7
    8
    # 进入容器
    docker exec -it frosty_antonelli /bin/bash

    # 在容器内查看/tmp目录
    ls /tmp

    # 在容器内查看定时任务
    crontab -l

    paste image
    tmp目录包含kdevtmpfsi可执行程序,并且包含定时任务,断定是挖矿容器。

解决方法

  1. 删除Docker中有问题的容器;
    1
    docker rm -f frosty_antonelli
  2. 剩下的参考【挖矿进程:ld-linux-x86-64】的解决方法。
坚持原创技术分享,您的支持将鼓励我继续创作!