AI 自主渗透框架 ARTEX 原版 10 月下架后,Fork 满天飞。结果最火的 trhhubsd/ARTEX(1.3k Star)被人塞了未认证 WebShell——毒不在代码里,在镜像里。投毒者动了一个文件 docker-compose.yml(commit a4f4d38):Docker Hub 账号 tomicdd 当天注册当天推镜像,被拉取近 8000 次。你按 README 敲 docker compose up -d,起来的就是带后门的容器。把 GitHub 源码翻烂也查不出问题——auth.go 里没有 captcha 字段,也没有 verifyCaptcha 函数。但预编译镜像里的 /app/artex 多了一段逻辑:登录接口 /api/auth/login 读 captcha 字段,首字符是 ! 就剥掉 !,剩下内容直接丢给 sh -c 跑,在账号密码校验前返回 200 把命令输出回显出来。{"username":"x","password":"y","Captcha":"!id"}
回你 uid=0(root) —— 未认证、root、有回显,纯纯 WebShell。别以为“我没中招”。只要拉过 tomicdd/artex,- 查计划任务、authorized_keys、异常出站
以后碰安全类工具:别信别人 Fork 的一键 compose,要么源码本地 build,要么锁 digest 验二进制。源码能骗过眼睛,但预编译制品不会替你背书。