Trivy漏洞扫描器遭供应链攻击,大量版本被植入恶意代码

Aqua Security旗下广泛使用的开源漏洞扫描工具Trivy近期遭遇供应链攻击,几乎所有版本均受波及。攻击者利用此前泄露的凭证,通过强制推送方式篡改75个trivy-action标签,植入恶意代码。该恶意程序会扫描开发管道中的GitHub令牌、云凭证、SSH密钥等敏感信息,加密后发送至攻击者服务器。目前仅@0.35.0版本未受影响,受影响用户应立即轮换所有管道密钥。

黑客入侵了Aqua Security旗下被广泛使用的Trivy漏洞扫描器,几乎所有版本均受到波及。这场持续进行的供应链攻击,可能对开发者及使用相关工具的企业造成严重影响。

Trivy维护者Itay Shakury于上周五正式确认了此次入侵事件。此前,网络上已出现相关讨论帖子,但随后被攻击者删除。攻击于周四凌晨展开,攻击者利用窃取的凭证,通过强制推送方式,将除一个以外的所有trivy-action标签及七个setup-trivy标签篡改为指向恶意依赖项。

强制推送是一种Git命令,可绕过默认的安全保护机制,覆盖已有的提交记录。Trivy是一款漏洞扫描工具,广泛用于软件开发与部署流水线中,帮助开发者检测安全漏洞及意外硬编码的认证密钥。该项目在GitHub上拥有33200颗星,显示出其极高的使用普及程度。

Shakury提醒称:"如果你怀疑自己曾运行过被攻陷的版本,请立即将所有流水线密钥视为已泄露并进行轮换更新。"

安全公司Socket和Wiz指出,此次被植入的恶意代码已触发75个受攻击的trivy-action标签。恶意软件会全面扫描开发流水线及开发者本地环境,窃取GitHub Token、云平台凭证、SSH密钥、Kubernetes Token等各类敏感信息。收集完毕后,数据将被加密并发送至攻击者控制的服务器。

Socket表示,最终结果是,任何CI/CD流水线只要引用了被篡改的版本标签,在运行Trivy扫描时就会自动执行恶意代码。被伪造的版本标签包括被广泛使用的@0.34.2、@0.33和@0.18.0,目前仅@0.35.0版本未受影响。

Wiz研究人员表示:"恶意二进制文件执行后,会同时启动正常的Trivy服务与恶意代码。初步分析显示,恶意代码通过主备两套机制进行数据窃取。若检测到当前运行环境为开发者本地机器,还会额外写入一个经Base64编码的Python脚本,以实现持久化驻留。"

Wiz进一步指出,恶意进程会收集环境变量,扫描文件系统中存储的凭证,并枚举网络接口信息,随后将数据压缩加密,通过POST请求尝试发送至https://scan.aquasecurtiy[.]org。若该请求失败(返回非2xx状态码),恶意软件则会尝试利用窃取的GITHUB_TOKEN创建名为tpcp-docs的仓库,将数据上传至此。

Shakury透露,尽管大规模入侵始于上周四,但根源可追溯至上月一起独立事件——Trivy的VS Code扩展插件遭到入侵,攻击者由此获得了对Trivy GitHub账户具有写权限的凭证。事后维护团队虽进行了Token及密钥的轮换,但整个处理过程并不彻底,导致部分API密钥、证书和密码等凭证残留未被完全清除,仍可被恶意利用。

Socket研究人员指出:"正是这一漏洞,使攻击者得以在无需直接攻破GitHub本身的情况下,执行包括强制更新标签在内的各类认证操作。目前尚未公开披露此阶段所用的具体凭证,但根本原因已确认为早期凭证泄露遗留的残余访问权限。"

此次攻击手法有别于典型的供应链攻击方式。传统供应链攻击通常是利用窃取的凭证向代码仓库注入恶意提交,而此次采用的强制推送标签方式,成功绕过了许多常见的安全防护手段,使攻击在很长时间内未被察觉。

Q&A

Q1:Trivy漏洞扫描器供应链攻击是怎么发生的?

A:攻击者利用此前入侵Trivy VS Code扩展时窃取的凭证,通过Git强制推送命令,将大量trivy-action和setup-trivy版本标签篡改为指向恶意依赖项。由于凭证轮换不彻底,残留的访问权限让攻击者得以在不直接攻破GitHub的情况下完成整个操作。攻击于周四凌晨展开,75个版本标签受到波及。

Q2:Trivy被攻击后,恶意代码会窃取哪些数据?

A:恶意代码会扫描开发流水线及开发者本地机器,收集GitHub Token、云平台凭证、SSH密钥、Kubernetes Token等各类敏感信息,同时抓取环境变量和文件系统中存储的凭证。收集完成后,数据会被压缩加密并发送至攻击者控制的服务器。若主要传输渠道失败,还会通过创建GitHub仓库作为备用上传途径。

Q3:哪些Trivy版本不受此次供应链攻击影响?

A:根据目前的分析,仅@0.35.0版本未受此次攻击影响。被伪造的版本标签包括@0.34.2、@0.33和@0.18.0等常用版本。官方建议,凡是怀疑运行过受攻陷版本的用户,应立即将所有流水线密钥视为已泄露并进行轮换更新。

来源:ArsTechnica

0赞

好文章,需要你的鼓励

2026

05/09

16:04

分享

点赞

邮件订阅