GitHub Actions のセキュリティ脆弱性により、Google、Microsoft、AWS、Red Hat などの企業が管理するいくつかの注目すべきオープンソース プロジェクトが侵害されました。
GitHub Actions の重大なセキュリティ脆弱性により、Google、Microsoft、AWS、Red Hat などの企業が管理するいくつかの注目度の高いオープンソース プロジェクトの認証トークンが流出しました。この欠陥により、プライベート リポジトリへの不正アクセスや悪意のあるコードの挿入が可能になりました。
GitHub Actions は、GitHub と緊密に統合された継続的インテグレーションおよび継続的デリバリー (CI/CD) プラットフォームです。 2018 年にリリースされ、ユーザーは GitHub リポジトリ内で直接ビルド、テスト、デプロイのパイプラインを自動化できます。
この脆弱性は、これらのトークンが意図せず公開されていることを発見したパロアルトネットワークスのユニット 42 によって特定されました。驚くべきことに、状況の深刻さにも関わらず、GitHub は根本的な問題を修正しないことを決定しました。代わりに、ユーザーがワークフロー成果物を保護するための措置を講じることを推奨しています。この決定により、多くのユーザーが脆弱になり、不満を感じています。
Unit 42 の調査により、安全でないデフォルト設定やユーザー エラーなど、この脆弱性の原因となる可能性のあるいくつかの問題が浮き彫りになりました。主な問題の 1 つは、デフォルトで GitHub トークンをローカルの .git ディレクトリに保存する「actions/checkout」機能に関係しています。このディレクトリがアーティファクトのアップロードに含まれている場合、トークンが公開されます。
この脆弱性は、API キーやクラウド アクセス トークンなどの他の機密情報にも影響し、これらのアーティファクトを通じて漏洩する可能性があります。ビルド出力とテスト結果は最大 90 日間保存され、リポジトリへの読み取り権限を持つ誰でもアクセスできます。
CI/CD パイプラインが GitHub トークンを環境変数に保存するときに、別の脆弱性が発生します。ワークフロー内のアクションまたはスクリプトがこれらの環境変数をログに記録すると、それらが意図せず公開される可能性があります。たとえば、「スーパーリンター」アクションで「CREATE_LOG_FILE」プロパティを有効にすると、これらの変数をログに記録できます。
この脆弱性の悪用は、公開されるトークンの種類によって異なる可能性があります。たとえば、GitHub トークンが漏洩した場合、それを使用してログ ファイルから認証情報を抽出し、有効期限が切れる前に使用することができます。 GitHub トークンは通常、ワークフロー ジョブの期間中有効ですが、キャッシュとアーティファクト管理に使用される「Actions_Runtime_Token」は 6 時間有効です。これにより、攻撃者に限られた機会が与えられます。
ただし、Unit 42 が実施した調査では、これらのトークンには GitHub だけでなく、サードパーティのクラウド インフラストラクチャへのアクセスが含まれていることも示されています。これらのトークンを含むアーティファクトデータは最大 3 か月間一般にアクセス可能であることが判明したため、これによりセキュリティ上の懸念がさらに高まります。悪意のある攻撃者は、アーティファクトの取得を自動化し、トークンを抽出し、それらを使用して悪意のあるコードをリポジトリにプッシュする可能性があります。
この脆弱性を実証するために、研究者らはオープンソース プロジェクトにブランチを作成し、悪意のあるアーティファクトを処理するランナー上でリモート コード実行 (RCE) が行われる可能性を示しました。また、ソース ディレクトリの秘密を監査し、秘密漏洩のリスクが検出された場合にアーティファクトのアップロードをブロックする概念実証 (PoC) アクションも開発しました。
この調査結果は GitHub のバグ報奨金プログラムに提出されましたが、この問題は情報提供として分類され、アップロードされたアーティファクトを保護する責任はユーザーにあることが示唆されました。 GitHub からの反応は限られていましたが、洞察は Cyber Threat Alliance (CTA) と共有され、メンバーが保護措置を導入し、潜在的なサイバー脅威を阻止できるようになりました。
以上がGitHub Actions のセキュリティ脆弱性により、著名なオープンソース プロジェクトが侵害されるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。