GitHub Enterprise Serverの認証前SSRFの脆弱性

カテゴリ
脆弱性の公表
目次
  1. 脆弱性の内容
  2. 時系列
  3. 対象の製品と版
  4. 悪用の状況
  5. 修正と回避策
  6. 未公表の事項
  7. 注
  8. 出典
  9. 更新記録
  10. 関連記事

GitHubの2026年5月26日のリリースノートによると、GitHub Enterprise Server(GHES)のアップロードのエンドポイントに認証前のサーバーサイドリクエストフォージェリ(SSRF)の脆弱性CVE-2026-9312があった⁠[1]。攻撃にはGHESのインスタンスへのネットワーク経路でのアクセスが必要だった⁠[1]。

脆弱性の内容

GitHubは、攻撃者が入力検証の不備を利用して内部サービスへ細工したリクエストを送り、内部サービスへのアクセスや機密性の高い認証情報の露出に至りうると説明した⁠[1]。脆弱性はGitHub Bug Bountyプログラムを通じて報告され、GitHubがCVE IDを要求した⁠[1]。

GitHubがCNAとして公開したCVE記録の説明では、認証されていない攻撃者が、リクエストのパラメーターにパストラバーサルの内容を注入して意図された処理の流れを迂回し、内部のAPI呼び出しの宛先を変えることができた⁠[7]。

表1:重要度と評価
項目値資料
GitHubの重要度CRITICAL⁠[1]
CVSS 4.0(GitHub)9.2(CRITICAL)、CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N⁠[7]
CVSS 3.1(NVD)8.2、CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N⁠[8]
CVSS 3.1(CERT Santé)8.1、攻撃の複雑さは高⁠[10]
脆弱性の種別CWE-918(Server-Side Request Forgery (SSRF))、CAPEC-664⁠[7]

目次へ

時系列

時系列
日付主体内容資料
2026年5月22日-CVE IDが予約された⁠[7]
2026年5月26日GitHub3.16〜3.20の各系の修正版を公開した⁠[1、2、3、4、5]
2026年5月27日GitHubCVE記録を公開した⁠[7]
2026年5月27日NISTNVDに登録した⁠[8]
2026年5月27日Canadian Centre for Cyber SecurityAV26-512を公表した⁠[9]
2026年5月29日CERT Santé注意情報を公表した⁠[10]
2026年6月11日GitHub3.21.0を公開した⁠[6]
2026年6月18日GitHub3.21系の修正版を公開した⁠[6]
2026年6月30日-CVE記録が更新された⁠[7]
2026年7月1日GitHub3.16の提供を終了した⁠[5]

目次へ

対象の製品と版

Canadian Centre for Cyber SecurityはAV26-512で、GitHubが5月26日にセキュリティアドバイザリを公開したとし、各系の修正版より前の版を対象とした⁠[9]。

表2:系ごとの影響を受ける版と修正版
製品影響を受ける版修正版資料
GHES 3.20系3.20.3より前3.20.3⁠[1、9]
GHES 3.19系3.19.7より前3.19.7⁠[2、9]
GHES 3.18系3.18.10より前3.18.10⁠[3、9]
GHES 3.17系3.17.16より前3.17.16⁠[4、9]
GHES 3.16系3.16.19より前3.16.19⁠[5、9]
GHES 3.21系3.21.1より前3.21.1⁠[6、7]

GitHubが公開したCVE記録の説明では、影響を受けたのは3.22より前のGHESの全版だった〔注1〕⁠[7]。

目次へ

悪用の状況

CVE記録に5月27日付で加わったCISAのSSVCの評価では、悪用はnone、自動化可能性はno、技術的影響はtotalだった⁠[7]。

CERT Santéは5月29日の注意情報で、活発な悪用は無く、修正はあるが回避策は無いとした⁠[10]。公開の情報源で入手できる概念実証(PoC)も無いと書いた⁠[10]。

目次へ

修正と回避策

GitHubは3.20.3のリリースノートで、リクエストのパラメーターに入力検証を加えてこの脆弱性に対処したと説明した⁠[1]。GHESのリリースパッケージの署名鍵の失効も、重要度CRITICALの項目として告知した⁠[1]。今後のリリースパッケージは新しい鍵でだけ署名される⁠[1]。

管理者は新しいパッチに更新する前に、インスタンスのGPG公開鍵をローテーションする必要がある⁠[1]。GitHubが開発したスクリプトを使う手順は「Investigation update: GitHub Enterprise Server signing key rotation」に載っている⁠[1]。

GitHubの3.20.3のリリースノートでは、別の脆弱性のCVE-2026-43284・CVE-2026-43500(重要度HIGH)も修正の対象だった⁠[1]。インスタンスへのローカルアクセスを持つ攻撃者が、IPsec ESPとRxRPCのネットワーク機能にあるLinuxカーネルのDirty Fragの脆弱性でrootに昇格しうる問題である⁠[1]。GitHubは、CVE-2026-8606(重要度HIGH)の緩和のため、影響を受けたエンドポイントをGHESから削除した⁠[1]。これはセキュリティアドバイザリのパッケージ検索機能へのタイミングのサイドチャネル攻撃で、機密の環境変数を抽出しうる問題だった⁠[1]。

Canadian Centre for Cyber Securityは利用者と管理者に、示したリンクを確認して必要な更新を適用するよう勧めた⁠[9]。

GitHubの3.16のリリースノートでは、提供を終えた3.16には、重大なセキュリティ問題でもパッチリリースを出さない〔注2〕⁠[5]。

目次へ

未公表の事項

  • アップロードのエンドポイントの名前と、到達できる内部サービス・露出しうる認証情報の種類
  • GitHubによる悪用の有無の説明
  • GitHub.comとGitHub Enterprise Cloudへの影響
  • 3.21系の修正が3.21.0に入らなかった理由
  • CVE記録の修正版の番号がリリースノートと異なる理由

注

  • 〔注1〕CVE記録の説明は修正版を3.17.17・3.18.11・3.19.8・3.20.4・3.21.2とした⁠[7]。CERT Santéも3.20系の修正版を3.20.4以上とした⁠[10]。
  • 〔注2〕Security NEXTは、3.16系のサポートが6月2日に終了すると報じた⁠[11]。

出典

当事者

公的機関

報道機関

更新記録

  • 2026年5月31日:公開した。
  • 2026年6月18日:GitHubの3.21系のリリースノート(出典6)を加え、3.21系の修正を「時系列」「対象の製品と版」に、修正が3.21.0に入らなかった理由を「未公表の事項」に加えた。
  • 2026年6月30日:GitHubのCVE記録の6月30日の更新(出典7)に合わせ、「時系列」「対象の製品と版」と「注」を改めた。
  • 2026年7月23日:NISTのNVDの記録の7月23日の更新(出典8)に合わせて「脆弱性の内容」の評価の表を改め、3.16の提供終了(出典5)を「時系列」「修正と回避策」に加えた。

目次へ