美文网首页
云服务器中挖矿病毒的清除过程(一)

云服务器中挖矿病毒的清除过程(一)

作者: 铜锣饼 | 来源:发表于2021-07-23 19:37 被阅读0次

    背景

    发现云上的两台ECS服务器CPU占用率过高,重启后依然如此。

    使用top命令查看很奇怪:CPU虽然两个核占用100%,但是进程中没有看到占用CPU的进程,使用ps命令也看不出异常。似乎进程被隐藏了。 image.png

    诊断

    改用busybox top命令,能发现被隐藏的进程,叫/bin/daemon Snipaste_2021-07-23_18-07-40.png

    查看/bin/deamon被修改的时间,发现是几个月前的夜里02:55,很可疑
    同目录被修改的,还有一个文件/bin/config.json文件,其内容为


    image.png 查了域名,是个矿池网站,所以显然这是个挖矿病毒 image.png

    为什么top命令看不到这个进程呢,因为/etc/ld.so.preload被修改了,让top和ps命令把关键进程都隐藏了

    cat /etc/ld.so.preload
    # 内容:
    /usr/local/lib/uncompress.so
    

    但是无法直接编辑此文件

    解决

    接下来就是删除相关文件了

    恢复top命令

    首先解决/etc/ld.so.preload被修改的问题,但是此文件只读,无法编辑,使用lsattr查看发现被保护了,因此使用chattr解除保护。

    # 查看文件属性,被保护
    lsattr  /etc/ld.so.preload
    ----ia--------e--- /etc/ld.so.preload
    # 解除保护
    chattr -ia /etc/ld.so.preload
    # 查看文件属性,保护已经解除
    lsattr  /etc/ld.so.preload
    --------------e--- /etc/ld.so.preload
    

    这里可能会出现一个情况:chattr和lsattr命令运行了没反应,或者提示没有权限,此时用ll查看这两个命令文件,发现是空文件

    ll /usr/bin/chattr
    -rw-r--r-- 1 root root 0 Feb  2 03:13 /usr/bin/chattr
    

    如果出现这种情况,需要从另一台同样操作系统的服务器恢复这两个文件到此服务器,具体参考服务器中毒导致的wget等系统命令失效后的恢复

    随后编辑内容,去除其中的注入文件,保存退出

    vim /etc/ld.so.preload
    # 删除其中的内容
    
    此时使用top命令,可以看到进程 Snipaste_2021-07-23_18-07-58.png

    删除病毒文件

    杀掉病毒进程

    kill -9 2420
    

    删除病毒文件

    chattr -ia /bin/daemon
    rm /bin/daemon
    chattr -ia /usr/local/lib/uncompress.so
    rm /usr/local/lib/uncompress.so
    

    防范

    目前还不清楚病毒是如何注入的,亡羊补牢,先做一些防范措施包括

    • 清除.ssh/authorized_keys文件中不明来历的key
    • 取消/usr/bin/curl和/usr/bin/wget的执行权限

    参考文章:
    http://www.gaoshan.me/website/sitesafe/computervirus/delmine.html

    相关文章

      网友评论

          本文标题:云服务器中挖矿病毒的清除过程(一)

          本文链接:https://www.haomeiwen.com/subject/luypmltx.html