linux云服务器病毒处理

发布时间 2024-01-02 11:12:45作者: Arno_vc

阿里云服务器被挖矿病毒入侵,CPU跑满,需要先停止相关进程。为了根除病毒,还需要

  • 解决系统的后门问题(这部分听从阿里云工程师的建议备份系统盘快照后重置系统,再通过快照恢复数据)
  • 然而重置系统后依然存在出现不定期挖矿程序跑满CPU的问题,查找相关资料后找到了对应的进程的父进程(PID为1的守护进程),删除了相关的系统任务

一、挖矿进程处理

  1. 通过top找到跑满CPU的进程

    image-20240102105444792

    注:

    • 注意到CPU占用率极高,显然就是PID为979的进程
    • 查找相关资料可知,c3pool为挖矿程序
  2. 进而可以通过kill -9 pid杀死进程,但建议还是kill -SIGSTOP PID暂停进程,方便后续相关信息的查找

二、问题的根除

重置操作系统

  1. 原因:“病毒一旦入侵系统,通常会执行替换系统命令、植入后门、修改计划任务等等一些列操作,很难发现和完全根除。”
  2. 解决:进入阿里云控制台
    • 生成系统快照
    • 重置操作系统
    • 通过系统快照恢复数据

解决残留问题

  1. 原因:重置系统后依然存在出现不定期挖矿程序跑满CPU的问题

  2. 解决

    • 查看root用户的定时任务:crontab -l

      注:发现并没有

    • 查看守护进程下的服务

      参考:详细解决服务器的挖矿病毒和端口扫描器 - 墨天轮 (modb.pro)

      • 通过cat /proc/979/status确定挖矿程序的父进程:PPID=1,即系统守护进程

      • 通过systemctl list-units --type=service --all --state=active查看系统进程的相关服务

        注:这里运气很好,相关的服务名就是c3pool,直接定位到了病毒服务

      • 通过systemctl stop c3pool关闭病毒服务进程

      • 通过/etc/systemd/system找到病毒服务进程的配置文件,删去即可

      • 重启系统后,再次通过systemctl list-units --type=service --all --state=active查看系统守护进程的服务,没有出现病毒服务进程,且之后没有再出现挖矿程序,问题解决

三、其他建议

  1. ssh端口不要使用默认的22,最好做一定的偏移,以防止被爬虫扫描破解
  2. 加强root账户的ssh密码强度
  3. 设置登录IP的白名单
  4. 使用阿里云快照定期备份,以及时恢复错误内容