Trivy 第二次被攻击 - 供应链安全重大事件
事件概述
⚠️ 严重安全事件
2026年3月19日,Trivy——由 Aqua Security 维护的流行开源漏洞扫描器——第二次遭受供应链攻击。
2026年3月19日,Trivy——由 Aqua Security 维护的流行开源漏洞扫描器——第二次遭受供应链攻击。
这是继2026年2月28日 hackerbot-claw 事件后的第二次攻击,证明供应链安全问题仍未得到根本解决。
攻击详情
1. 恶意 v0.69.4 发布
- Trivy 发布自动化 (aqua-bot) 发布 v0.69.4
- v0.70.0 标签也被短暂创建
- v0.69.4 二进制包含恶意代码,连接 typosquat C2 域名
- Homebrew 紧急降级到 v0.69.3
2. 原始事件讨论被删除
- 讨论 #10265(2月28日原始事件披露)被删除
- 关于 v0.69.4 新攻击的活跃讨论随之消失
- 攻击者试图掩盖事件以减缓响应速度
3. 垃圾机器人攻击
- 讨论 #10420 开启后,垃圾机器人立即发动攻击
- 两个账户发布 "sugma and ligma, teampcp owns you"
- 至少17个机器人账户在1秒内发布虚假赞美评论
- 试图淹没真实讨论
GitHub Actions 被攻击
trivy-action - 仍处于被攻击状态
- 所有(除一个)标签都被修改为指向恶意提交
- entrypoint.sh 被注入 +105/-2 行恶意代码
- 与 setup-trivy 相同的凭证窃取模式
setup-trivy - 已部分恢复
- 所有版本标签已被删除(除 v0.2.6)
- commit 8afa9b9 包含注入到 action.yaml 的凭证窃取器
- GitHub 显示警告:"此提交不属于任何分支"
- 维护者已发布干净的 v0.2.6
凭证窃取能力
攻击代码能够窃取以下内容:
- SSH 密钥
- Git 凭证
- AWS/GCP/Azure 凭证
- Kubernetes secrets
- Docker 配置
- 数据库凭证
- Terraform 状态
- 加密货币钱包 (Solana, Bitcoin, Ethereum, Cardano)
- SSL 私钥
- Shell 历史记录
攻击技术细节
环境变量收获
扫描 /proc/*/environ 获取 SSH 和环境相关 secrets
内存读取
解码 base64 Python 脚本,定位 Runner.Worker 进程
通过 /proc//mem 读取内存,提取 isSecret: true 的 secrets
数据加密
使用硬编码 RSA-4096 公钥
混合加密:AES-256-CBC + RSA-OAEP
数据外传
主要目标:scan.aquasecurtiy.org (typosquat 域名)
备用方案:如果 C2 不可达且有 GitHub PAT,
在受害者账户创建 tpcp-docs 公共仓库,
上传窃取数据作为 release 资产
事件时间线
- 2026-02-28: hackerbot-claw 第一次攻击,利用 pull_request_target 漏洞
- 2026-03-19 21:07 UTC: nikpivkin (trivy 维护者) 删除 v0.2.5 标签
- 2026-03-19 21:34 UTC: itaysk 添加 simar7 为协作者
- 2026-03-19 21:43 UTC: simar7 发布干净的 v0.2.6
- 2026-03-20: StepSecurity 发布详细分析报告
安全建议
- 立即停止使用 aquasecurity/trivy-action
- 检查 CI/CD 管道 是否使用了受影响的版本
- 轮换所有凭证:GitHub tokens、API keys、云服务凭证
- 使用 StepSecurity Harden-Runner 检测类似攻击
- 不要信任 recently-modified version tags