开源软件供应链攻击事件总结
事件概述
超过23,000家组织使用的开源软件tj-actions/changed-files在攻击者未经授权访问维护者账户后,被植入了窃取凭证的恶意代码。这是近期一起影响广泛的开源软件供应链攻击事件。
受影响软件
- tj-actions/changed-files:属于tj-actions项目的一部分,该项目被超过23,000家组织使用。
- GitHub Actions:一种用于简化软件开发的平台,tj-actions是其中的一个核心组件,支持持续集成和持续部署(CI/CD)。
攻击细节
- 攻击时间:上周五或更早。
- 攻击方式:攻击者篡改了tj-actions/changed-files的所有版本,修改了开发者用于引用特定代码版本的“标签”,使其指向一个公开文件。该文件会复制服务器内部内存,搜索凭证并将其写入日志。
- 影响范围:许多公开访问的仓库在运行tj-actions后,其最敏感的凭证被暴露在日志中,任何人都可以查看。
安全专家观点
- HD Moore(runZero创始人兼CEO)指出,GitHub Actions可以修改使用它们的仓库的源代码,并访问与工作流相关的任何秘密变量。最安全的做法是审核所有源代码,并使用特定的提交哈希值而不是标签。
维护者回应
- 维护者声明:攻击者通过某种方式获取了@tj-actions-bot的凭证,从而获得了对受影响仓库的特权访问。目前尚不清楚凭证是如何泄露的。维护者已更改了bot的密码,并为账户增加了双重认证保护。
GitHub官方声明
- GitHub表示没有证据表明公司或其平台受到攻击。出于谨慎,GitHub暂停了相关用户账户并删除了内容,确认所有恶意更改已恢复后,重新激活了账户并恢复了内容。
安全公司分析
- StepSecurity:首次发现此次攻击,通过“网络流量中出现意外端点”的异常检测到问题。
- Wiz:初步分析显示,已有数十个tj-actions用户在供应链攻击中受到实际损害,包括泄露的AWS访问密钥、GitHub个人访问令牌(PATs)、npm令牌、私有RSA密钥等。
历史背景
- xz Utils事件:去年,一名微软开发者发现xz Utils中被故意植入后门,该后门在即将进入Linux生产版本前被发现。
- 其他供应链攻击:包括PyPI和Go镜像站点中的后门包事件。
建议
- 系统检查:任何使用tj-actions的系统都应仔细检查是否有被攻击的迹象。
- 安全实践:管理员应审查所有使用的GitHub Actions,确保使用经过审核的代码的加密哈希值,而不是标签。
此次事件再次凸显了开源软件供应链的安全风险,强调了严格的安全审查和最佳实践的重要性。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。