zoukankan      html  css  js  c++  java
  • 我的大脑被挖矿代码搞的不能好好思考了

    我被攻击了

    个人服务器去年底最后两天被攻击了,因为一些事情拖着没来得及处理,今天实在忍不住了,记录一下被攻击后发现以及修复的过程。

    2019-12-30 23:39:44 云盾预警访问恶意IP 178.170.189.5
    这一次预警中有一个关键字“kdevtmpfsi”

    2019-12-31 04:19:19 云盾预警矿池通信行为 178.170.189.5
    kdevtmpfsi

    如何找到根源

    kdevtmpfsi 伪装的挺好,因为它和一个系统进程的名字非常相似 kdevtmpfs ,一不小心研究的重心就偏移了。我现在的程序是以 docker 运行的,宿主机如果被攻击了问题就严重了。

    因为本身不是专业运维,排雷全靠猜测。云盾感知的 cms 可能存在安全漏洞,代码扫描后没有发现异常,到这里我感觉问题可能就更严重了。

    容器存在漏洞?容器也就运行了 nmp,会是哪一个容器出现问题了呢?有些手足无措。cpu 占用高,docker 查看一下容器的 cpu 占用呢?

    top

    使用 top 命名直接可以查看到下图,kdevtmpfsi 差不多100%的CPU占用,导致服务器完全被恶意程序占用,我本身的服务难以正常运行。

    container

    cpu 被 kdevtmpfsi 挖矿程序占用 100%。按照上面的定位到容器的问题,使用命令查看容器状态 docker stats 获得下图。

    看到是 redis 容器被利用了,使用命令 docker exec -it 容器ID /bin/bash 进入内部看看具体问题呢?CTRL+P+Q

    使用命令 ls -lrt 可以看到最早下载的 kinsing 文件是去年30日,与最早告警时间也基本在同一天。通过搜索学习到这个文件是挖矿程序的手续进程,后续需要清理掉。

    按照云盾报警的情况我们看下文件是否存在 /tmp/kdevtmpfsi ,如果存在也需要清理掉才行。文件肯定是存在的,我还干了一件事情就是 kill -9 ID,CPU 占用明显就降下来了 ,然后手动运行了一下这个程序,发现 CPU 直接就飙升了

    它是如何做到的

    问题找到了,只要杀掉当前进程以及守护进程,问题也就暂时解决了。没有找到根源,问题还是可能被利用,继续写入挖矿程序,我们先思考一下漏洞在哪里呢?

    上面分析出来是因为 redis 的漏洞导致的?想一下我们的 redis 是如何安装的,我当初测试一个需要登录才能使用的应用程序,登录的方式是关注公众号,然后获取授权码去解锁使用。就使用 redis 存放了临时 token ,安装 redis 的时候直接就是裸奔在空气中,没有密码。

    可以使用命令检测一下,例如我的公网 IP 是 110.110.110.110。 只需要使用命令 redis-cli -h 110.110.110.110 -p 6379 就直接可以连上我的 redis 服务了。

    通过云盾安全预警查看到《【漏洞预警】Redis 4.x/5.x 远程命令执行高危漏洞》,解决这个问题的关键可以设置仅内网访问 redis,特殊对外的 IP 使用密码策略。

    version: '3'
    services:
    
      # 使用 command 命令设置一下密码
      redis:
        image: redis:5.0.7
        command: ["redis-server", "--requirepass", "yourpassword"]
        hostname: redis
        networks:
          - redis-net
        volumes:
          - redis-data:/data
    
    networks:
      redis-net:
    
    volumes:
      redis-data:
    

    安全放心上

    长呼一口气之后,想起了《亡羊补牢》的故事。

  • 相关阅读:
    Metasploit advanced命令使用技巧
    Metasploit命令info使用技巧
    Kali Linux 2020.1b发布了
    设置USB无线网卡为监听模式大学霸IT达人
    解决ifconfig命令未找到
    Metasploit新增技巧提示功能
    Wireshark运算符!=无法正常工作
    解决Kali Linux XFCE桌面Tab无法补全
    Nessus更新到8.9.1
    ASP入门(七)-Response小案例
  • 原文地址:https://www.cnblogs.com/unofficial/p/12182590.html
Copyright © 2011-2022 走看看