首页  >  文章  >  GitHub Actions 安全漏洞危及著名开源项目

GitHub Actions 安全漏洞危及著名开源项目

WBOY
WBOY原创
2024-08-16 00:27:14259浏览

GitHub Actions의 보안 취약성으로 인해 Google, Microsoft, AWS, Red Hat과 같은 회사에서 유지관리하는 몇몇 주목할만한 오픈 소스 프로젝트가 손상되었습니다.

GitHub Actions 安全漏洞危及著名开源项目

GitHub Actions의 심각한 보안 취약성으로 인해 Google, Microsoft, AWS, Red Hat과 같은 회사에서 유지 관리하는 여러 유명 오픈 소스 프로젝트에 대한 인증 토큰이 노출되었습니다. 이 결함으로 인해 개인 저장소에 대한 무단 액세스 및 악성 코드 삽입이 가능해졌습니다.

GitHub Actions는 GitHub와 긴밀하게 통합된 CI/CD(지속적 통합 및 지속적 전달) 플랫폼입니다. 2018년에 출시되었으며 사용자가 GitHub 리포지토리 내에서 직접 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있습니다.

이 취약점은 Palo Alto Networks의 Unit 42에 의해 식별되었으며, 이 토큰이 의도치 않게 공개되었다는 사실을 발견했습니다. 놀랍게도 상황의 심각성에도 불구하고 GitHub는 근본적인 문제를 수정하지 않기로 결정했습니다. 대신 사용자가 워크플로 아티팩트를 보호하기 위한 조치를 취할 것을 권장했습니다. 이 결정으로 인해 많은 사용자가 취약해지고 좌절감을 느꼈습니다.

Unit 42의 조사에서는 안전하지 않은 기본 구성 및 사용자 오류를 포함하여 이 취약점에 기여할 수 있는 몇 가지 문제가 강조되었습니다. 주요 문제 중 하나는 기본적으로 GitHub 토큰을 로컬 .git 디렉터리에 저장하는 'actions/checkout' 기능과 관련이 있습니다. 이 디렉터리가 아티팩트 업로드에 포함되면 토큰이 노출됩니다.

이 취약점은 이러한 아티팩트를 통해 유출될 수 있는 API 키 및 클라우드 액세스 토큰과 같은 기타 민감한 정보에도 영향을 미칩니다. 빌드 출력 및 테스트 결과는 최대 90일 동안 저장되며 리포지토리에 대한 읽기 권한이 있는 사람은 누구나 액세스할 수 있습니다.

CI/CD 파이프라인이 GitHub 토큰을 환경 변수에 저장할 때 또 다른 취약점이 발생합니다. 워크플로 내의 작업이나 스크립트가 이러한 환경 변수를 기록하는 경우 의도하지 않게 노출될 수 있습니다. 예를 들어 'super-linter' 작업에서 'CREATE_LOG_FILE' 속성을 활성화하면 이러한 변수를 기록할 수 있습니다.

此漏洞的利用可能因暴露的令牌类型而异。例如,如果 GitHub 令牌泄露,它可用于从日志文件中提取凭据并在它们过期之前使用它们。 GitHub 令牌通常在其工作流程作业的持续时间内有效,而用于缓存和工件管理的“Actions_Runtime_Token”则在六个小时内保持有效。这为攻击者提供了有限的机会。

然而,Unit 42 进行的研究还表明,这些代币包括对第三方云基础设施的访问,而不仅仅是 GitHub。这引发了进一步的安全问题,因为包含这些代币的人工数据被发现可以公开访问长达三个月。恶意行为者可以自动检索工件、提取令牌,并使用它们将恶意代码推送到存储库。

为了演示此漏洞,研究人员在开源项目中创建了一个分支,展示了处理恶意工件的运行程序上远程代码执行 (RCE) 的潜力。他们还开发了概念验证 (PoC) 操作来审核源目录中的秘密,如果检测到任何秘密暴露风险,则阻止工件上传。

这项研究的结果已提交给 GitHub 的错误赏金计划,但该问题被归类为信息性问题,表明用户有责任保护上传的工件。尽管 GitHub 的回应有限,但我们还是与网络威胁联盟 (CTA) 分享了这些见解,以允许成员部署保护措施并阻止潜在的网络威胁。

以上是GitHub Actions 安全漏洞危及著名开源项目的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn