GitHub Actions工具遭黑客攻击,数千个开源项目面临风险

GitHub Actions工具遭黑客攻击,数千个开源项目面临风险
最新回答
賲呗^ō^钸哭

2023-02-05 02:04:30

GitHub Actions工具tj-actions/changed-files遭黑客篡改,导致数千个开源项目面临凭证泄露和供应链攻击风险。 以下是关键信息与应对措施的详细说明:

事件背景与影响
  • 入侵工具:tj-actions/changed-files(用于检测存储库文件变更的工具)的所有版本(直至45.0.7)在3月14日被篡改,植入恶意Python脚本。
  • 攻击手段:恶意脚本通过读取操作日志窃取API密钥、访问令牌和密码等敏感信息。
  • 影响范围

    该工具在23,000多个GitHub存储库中使用,可能影响数千条CI/CD管道。

    公共和私有存储库均受威胁:若共享CI/CD管道凭证,容器注册表(如Docker Hub)可能已被破坏。

    潜在二次攻击:攻击者可能利用窃取的凭证篡改其他开源库、二进制文件或工件,导致供应链污染。

  • 漏洞编号:CVE-2025-30066。
GitHub与安全团队的响应
  • 紧急措施

    GitHub于3月16日停止访问受篡改版本,并替换为修补后的版本。

    StepSecurity发现异常后警告GitHub,并协助定位恶意版本。

  • 风险评估

    已知暴露:Wiz Threat Research确认“数十个”公共存储库已泄露敏感信息,并联系受影响方。

    未知损害:Endor Labs警告,实际受损软件包可能达数百万,但目前无证据表明下游库或容器已被篡改。

信息安全负责人的应对建议
  1. 立即审查与轮换凭证

    检查日志:审核GitHub日志,查找可疑IP地址(如非预期的出站连接)。

    轮换秘密:若发现异常,立即更换所有活动秘密(API密钥、访问令牌、密码等)。

  2. 固定工具版本

    将GitHub Actions固定到特定提交哈希值(而非版本标签),防止未来供应链攻击。

    示例:将uses: tj-actions/changed-files@v45改为uses: tj-actions/changed-files@<具体哈希值>。

  3. 限制操作权限

    使用GitHub的允许列表功能,仅允许受信任的Actions运行。

    配置GitHub仅允许受信任的操作,避免未授权代码执行。

  4. 验证工具使用情况

    检查工作流中是否使用了tj-actions/changed-files,确认是否运行过受篡改版本(≤45.0.7)。

    若受影响,切换到安全替代工具或升级至修补版本(GitHub已提供更新)。

  5. 监控供应链安全

    密切关注开源库、二进制文件和容器的完整性,防范二次攻击。

    使用端点检测与响应(EDR)工具监控CI/CD环境中的异常行为。

长期安全建议
  • 遵循最小权限原则:限制CI/CD管道中的权限,避免过度授权。
  • 定期审计依赖项:使用工具(如Dependabot、Snyk)扫描项目依赖的漏洞。
  • 教育开发团队

    强调不信任开源工具的默认配置,需验证其安全性。

    培训开发者识别供应链攻击迹象(如异常网络连接、未授权代码修改)。

  • 建立应急响应计划:明确供应链攻击的发现、隔离和修复流程。
事件警示
  • 开源生态的脆弱性:GitHub、NPM等平台已成为攻击目标,黑客通过篡改流行工具渗透供应链。
  • 高效攻击手段:相比逐个攻击应用,破坏CI/CD管道可批量影响数千项目,降低攻击成本。
  • CISO的职责:确保开发团队遵循安全最佳实践,定期审查开源工具的使用情况。

此次事件再次凸显了供应链安全的重要性。信息安全负责人需优先审查受影响工具的使用情况,并推动团队采用版本固定、权限控制等防御措施,以降低未来风险。