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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/thanhlam-attt/cve-2023-7028
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト認証
GitHubthanhlam-attt/cve-2023-7028

CVE-2023-7028

GitLabアカウント乗っ取りのためのCVE-2023-7028エクスプロイト。攻撃者のメールを注入してリセットトークンを受信することで、パスワードリセットのバイパスを実証します。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

はじめに

  • GitLab は広く採用されているウェブベースのリポジトリマネージャーであり、ソフトウェア開発プロジェクトにおけるソースコード管理、統合、保守、コラボレーションのための包括的なプラットフォームを提供します
  • CVE-2023-7028 は、reset password フォームを通じて攻撃者がユーザーアカウントを乗っ取る (Account TakeOver) ことを可能にする脆弱性です
  • この脆弱性は、以下の バージョン の GitLab に存在します:
    • 16.1 から 16.1.5
    • 16.2 から 16.2.8
    • 16.3 から 16.3.6
    • 16.4 から 16.4.4
    • 16.5 から 16.5.5
    • 16.6 から 16.6.3
    • 16.7 から 16.7.1

脆弱性の分析

  • この脆弱性は reset password フォーム、具体的には GitLab の API エンドポイント POST /users/password に存在します。攻撃者は email address フィールドの脆弱性を悪用して形式チェックをバイパスし、自身のメールアドレスを挿入できるようにします。これにより、GitLab は reset token を攻撃者のメールアドレスに送信します
  • 脆弱性の分析:
    • GitLab が提供するコードに基づくと、以下のことがわかります:

      1

      • Reset Password リクエストの処理部分はファイル spec/controllers/passwords_controller_spec.rb にあり、入力から複数のメールアドレスを受け付けることができますが、それがユーザーのメールアドレスであることを確認するための認証メカニズムは一切ありません

      • サーバー側は、パスワードリセットリクエストを送信するために、フォーム送信時に攻撃者からの authenticity_token(CSRF 対策用の隠しトークン)のみを要求します

        2

      → したがって、自身のメールアドレスを挿入して被害者のメールアドレスのパスワードリセット用 reset token を受け取り、ユーザーアカウントを乗っ取ることができます

脆弱性の悪用

  • パスワードリセットリクエストをキャプチャすると、以下のようになります:

    3

    • フォームには、CSRF 対策に使用される authenticity_token が含まれており、パスワードリセット対象のユーザーのメールアドレス名は変数 user[email] に格納されます
  • 以下のペイロード &user[email][]=victim_email&user[email][]=attacker_email を使用して攻撃者のメールアドレスを追加し、リクエストを送信します:

    4

    → 攻撃者のメールアドレスを確認すると、パスワードリセットトークンが送信されており、パスワードを変更するためにアクセスできることがわかります

    5

    6

ツールをダウンロード