Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
cve-2026-22874-gitea-ssrf-allowlist — CVE-2026-22874 の解説: Gitea の webhook/マイグレーションにおける不完全な SSRF 許可リスト(IPv6 移行とクラウドメタデータ)。Gitea 1.26.3 で修正。 | Kitploit
ツール/GitHubGitHub/m8seven/cve-2026-22874-gitea-ssrf-allowlist
脆弱性分析ウェブセキュリティクラウドセキュリティ論文と研究学習と教育厳選リソース
GitHubm8seven/cve-2026-22874-gitea-ssrf-allowlist

cve-2026-22874-gitea-ssrf-allowlist

CVE-2026-22874 の解説: Gitea の webhook/マイグレーションにおける不完全な SSRF 許可リスト(IPv6 移行とクラウドメタデータ)。Gitea 1.26.3 で修正。

リポジトリを見る
212ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-22874 — GiteaのWebhookおよびマイグレーション許可リストにおけるSSRF保護の不完全性

CVE-2026-22874(GHSA-2r5c-gw76-rh3w)に関する技術解説と参考情報です。GiteaのWebhook配信およびリポジトリマイグレーションにおけるSSRF許可リストの不完全性に関するもので、Gitea 1.26.3 で修正されました。

私はこのSSRFの種別をGiteaのメンテナに独自に報告し、公開されたアドバイザリでは貢献者(other)としてクレジットされています。アドバイザリの主な報告者はJ. Leitschuh氏です。このリポジトリは公開アドバイザリの防御的・教育的な解説です。問題は修正済みです。

  • アドバイザリ: https://github.com/go-gitea/gitea/security/advisories/GHSA-2r5c-gw76-rh3w
  • 深刻度: Critical、CVSS 9.6(CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N)
  • 影響を受けるバージョン: Gitea <= 1.26.2 — 修正バージョン: 1.26.3
  • 弱点: CWE-918(Server-Side Request Forgery、SSRF)

概要

GiteaのデフォルトのSSRF許可リスト(Webhook配信とリポジトリマイグレーションの両方で使用される MatchBuiltinExternal)は、Go標準ライブラリの net.IP.IsPrivate() に依存していました。この関数が認識するのはRFC 1918(、、)とRFC 4193()のみです。クラウドメタデータサービス、内部ネットワーク、IPv6移行メカニズムで一般的に使用されるいくつかのアドレス範囲は、この定義では「プライベート」ではないため「外部」フィルタを通過し、認証済みユーザーがサーバーにそれらの宛先へのHTTPリクエストを発行させることができました。

10/8
172.16/12
192.168/16
fc00::/7

Webhook配信はレスポンスのステータス、ヘッダー、および最大約1 MiBのボディを記録し、Webhook履歴UIに表示するため、このSSRFはブラインドではありません。攻撃者は、対象の内部サービスが返す内容を読み取ることができます。

net.IP.IsPrivate() が見逃すアドレス範囲

アドレス範囲意味
100.64.0.0/10RFC 6598 キャリアグレードNAT
168.63.129.16/32Azure WireServer / インスタンスメタデータエンドポイント
64:ff9b::/96RFC 6052 NAT64(169.254.169.254 を埋め込み可能。例: AWS IMDS)
2001::/32RFC 4380 Teredo
2002::/16RFC 3056 6to4

上記のIPv4マップIPv6形式も同様に影響を受けます。

したがって、Webhookを作成または変更できる(またはマイグレーションを開始できる)認証済みユーザーは、クラウドメタデータエンドポイント(たとえばNAT64マッピング経由のAWS IMDS、または 168.63.129.16 のAzure WireServer)や内部専用サービスに到達し、Webhook履歴ビューを通じてレスポンスを読み取ることができます。

根本原因

デフォルトのポリシーは、Giteaの HostMatchList チェックにおける MatchBuiltinExternal であり、グローバルユニキャストかつ IsPrivate() でないアドレスをすべて許可として扱います。

root@kitploit:~
case MatchBuiltinExternal:
    if ip.IsGlobalUnicast() && !ip.IsPrivate() {
        return true
    }

net.IP.IsPrivate() は「外部」のセキュリティ境界ではありません。キャリアグレードNAT、クラウドメタデータエンドポイント、内部またはメタデータ宛先にルーティングされる可能性のあるIPv6移行レンジを考慮していないためです。

修正

Gitea 1.26.3 で、上記の追加レンジをブロックするように組み込みフィルタを拡張して修正されました。運用者は1.26.3以降にアップグレードしてください。多層防御として:

  • 許可リスト/ブロックリスト設定を使用して、外向きのWebhookおよびマイグレーションの宛先を制限する。
  • Giteaホストの周囲にネットワークEgress制御を適用する。
  • クラウドインスタンスでは、IMDSv1を無効化し、IMDSv2(またはプロバイダー同等の機能)を必須にする。

参考情報

  • GHSA-2r5c-gw76-rh3w — https://github.com/go-gitea/gitea/security/advisories/GHSA-2r5c-gw76-rh3w
  • CVE-2026-22874
  • CWE-918: Server-Side Request Forgery(SSRF)
ツールをダウンロード