注目★★★★★Lobsters
GitHub Actions の OIDC トークン、攻撃者が任意の宛先に横展開できる脆弱性
30秒で把握
- 1GitHub Actions の OIDC トークン生成で、ジョブがランタイムに任意のオーディエンスを指定でき、トークン横展開が可能
- 2PyPI 向けトークンが AWS など他サービスに流用される攻撃シナリオ、第三者コード実行環境で脅威顕在化
- 3オーディエンス事前宣言による制約メカニズムを提案、GitLab CI/CD の方式を参考に実装検討
要約
GitHub Actions の OIDC トークン発行メカニズムに重大な設計欠陥がある。id-token: write 権限を持つジョブはランタイムで任意のオーディエンス(宛先サービス)を指定してトークンを生成でき、攻撃者は PyPI 向けトークンを AWS に流用するなど他サービスへの横展開が可能になる。GitLab CI/CD は OIDC オーディエンスを事前に静的宣言する方式で防いでいるが、GitHub は動的リクエストを許す。
あなたへの影響
第三者コードを実行する GitHub Actions ジョブで id-token: write を使う場合、マルウェア・脆弱性から OIDC トークンが横取りされるリスクが現在の仕様では顕在化するため、チームは Trusted Publishing など制約の強い利用パターンで限定するか、オーディエンス制約機能の実装を GitHub に要望すべき。
推奨:現時点で即時対応は不要です。必要に応じて原文を確認してください。