cPanel/WHM सर्वरों के लिए वन-शॉट डिटेक्शन और रेमेडिएशन, जो CVE-2026-41940 के माध्यम से समझौता किए गए हैं, जिसमें IOC जाँच, मैलवेयर सफाई, C2 ब्लॉकिंग और पैचिंग शामिल है।
cPanel/WHM सर्वरों के लिए एक-शॉट डिटेक्शन और रिमेडिएशन, जो CVE-2026-41940 और
nuclear.x86बॉटनेट अभियान के माध्यम से समझौता किए गए हैं।
28 अप्रैल 2026 को, cPanel ने एक प्री-ऑथेंटिकेशन ऑथेंटिकेशन-बायपास भेद्यता (CVE-2026-41940, CVSS 9.8) का खुलासा किया, जो 11.40 के बाद के सभी समर्थित cPanel और WHM संस्करणों को प्रभावित करती है। पोर्ट 2087 पर एक एकल HTTP अनुरोध एक अनऑथेंटिकेटेड हमलावर को user=root सत्र इंजेक्ट करने और सीधे WHM में प्रवेश करने की अनुमति देता है।
शोषण जंगल में कम से कम 23 फरवरी 2026 से देखा गया है — पैच आने से छह सप्ताह पहले। हमने कई सर्वरों पर जिस अभियान को साफ किया है, वह नामक एक Linux बॉटनेट के साथ-साथ XMRig-आधारित क्रिप्टो-माइनर ड्रॉप करता है।
nuclear.x86इस रिपॉजिटरी में एक एकल Bash स्क्रिप्ट है जो:
/scripts/upcp --force के माध्यम से cPanel/WHM को पैच करती हैयह होस्टिंग प्रदाताओं, sysadmins और cPanel रिसेलर्स के लिए डिज़ाइन किया गया है, जिन्हें फ्लीट का त्वरित ट्राइएज करने की आवश्यकता है।
यदि आप कुछ डाउनलोड करने का प्रयास करते समय wget या curl Killed लौटाते हैं, तो मैलवेयर अभी भी चल रहा है — nuclear.x86 सक्रिय रूप से डाउनलोड टूल्स को मारता है ताकि सफाई को रोका जा सके। पहले किल-स्टेप चलाएं (स्क्रिप्ट आपके लिए --fix मोड में यह करती है)।
यदि आप इस वजह से इस स्क्रिप्ट को डाउनलोड नहीं कर सकते हैं, तो इसे अपने लैपटॉप से SSH के माध्यम से कॉपी-पेस्ट करें, या scp का उपयोग करें।
# रूट के रूप में, cPanel सर्वर पर:
cd /root
wget https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh
chmod +x fix-cpanel-cve-2026-41940.sh
या curl के साथ:
cd /root
curl -fsSLO https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh
chmod +x fix-cpanel-cve-2026-41940.sh
वन-लाइनर (पहले स्क्रिप्ट की समीक्षा करें, फिर चलाएं):
cd /root && \
curl -fsSLO https://raw.githubusercontent.com/shahidmallaofficial/cpanel-cve-2026-41940-fix/main/fix-cpanel-cve-2026-41940.sh && \
chmod +x fix-cpanel-cve-2026-41940.sh && \
less fix-cpanel-cve-2026-41940.sh
# समीक्षा के बाद, इसे चलाएं:
./fix-cpanel-cve-2026-41940.sh
चलाने से पहले सत्यापित करें। यह स्क्रिप्ट रूट के रूप में चलती है और सिस्टम स्थिति को संशोधित करती है। इसे खोलें और पहले पढ़ें। इंटरनेट से यादृच्छिक स्क्रिप्ट को सीधे
bashमें पाइप न करें।
# 1. केवल स्कैन (डिफ़ॉल्ट, कोई बदलाव नहीं — चलाना हमेशा सुरक्षित)
./fix-cpanel-cve-2026-41940.sh
# 2. स्कैन + रिमेडिएट, प्रत्येक विनाशकारी क्रिया के लिए पुष्टिकरण प्रॉम्प्ट के साथ
./fix-cpanel-cve-2026-41940.sh --fix
# 3. फुल ऑटो: फिक्स + cPanel अपडेट + कैश क्लियर + हल्का हार्डनिंग
./fix-cpanel-cve-2026-41940.sh --auto
# 4. अनअटेंडेड (कोई प्रॉम्प्ट नहीं — cron, जंप-बॉक्स, फ्लीट स्क्रिप्ट के लिए)
./fix-cpanel-cve-2026-41940.sh --auto -y
# 5. सहायता
./fix-cpanel-cve-2026-41940.sh --help
| कोड | अर्थ |
|---|---|
0 | साफ — कोई IOC डिटेक्ट नहीं हुआ |
2 | समझौता संकेतक डिटेक्ट हुए (रिपोर्ट की समीक्षा करें) |
1 / अन्य | प्री-फ्लाइट विफलता (रूट नहीं, cPanel सर्वर नहीं, आदि) |
/var/log/cpanel-cve-fix/scan-<TIMESTAMP>.log/var/log/cpanel-cve-fix/report-<TIMESTAMP>.txt/root/cve-cleanup-backup-<TIMESTAMP>/| # | जांच | यह क्या पकड़ता है |
|---|---|---|
| 1 | cPanel बिल्ड बनाम पैच किए गए रिलीज़ | असुरक्षित होस्ट (सभी 6 पैच किए गए बिल्ड की सूची) |
| 2 | चल रही प्रक्रियाएं | nuclear.x86, xmrig, cpuminer, minerd, xmr-stak, 4thepool_miner |
| 3 | सक्रिय नेटवर्क कनेक्शन | तीन ज्ञात C2 IP + माइनिंग-पूल पोर्ट |
| 4 | शेल हिस्ट्री फ़ाइलें | bash_history / zsh_history में IOC कमांड |
| 5 | फ़ायरवॉल सैनिटी | iptables -F तोड़फोड़ चरण |
| 6 | cPanel सत्र रॉ डिर | जाली user=root सत्र फ़ाइलें |
| 7 | /tmp, /var/tmp, /dev/shm | हाल ही में ड्रॉप किए गए एक्ज़ीक्यूटेबल |
| 8 | क्रॉन एंट्रीज़ | पर्सिस्टेंस (सिस्टम + प्रति-उपयोगकर्ता) |
| 9 | authorized_keys फ़ाइलें | नई SSH कुंजियाँ — केवल-पठन ऑडिट |
| 10 | cPanel एक्सेस लॉग | Go-http-client / python-requests शोषण हस्ताक्षर |
| 11 | क्रिटिकल बाइनरीज़ | छेड़छाड़ किए गए wget / curl / ls / ps (mtime + RPM सत्यापन) |
/var/cpanel/sessions/raw/* को शुद्ध करता है (पहले tar.gz बैकअप के साथ)cpsrvd, cpdavd, cphulkd, queueprocd, dnsadmin को पुनरारंभ करता है/scripts/upcp --force के माध्यम से cPanel को पैच करता है (केवल --auto में)rndc flush), पुराने जर्नल लॉग को साफ करता हैLF_INTEGRITY सक्षम करके हार्डन करता है यदि उपलब्ध होये SSH पर अनअटेंडेड चलाने पर नुकसान से अधिक नुकसान करेंगे, इसलिए ये मैनुअल-एक्शन रिपोर्ट में जाते हैं:
/home/*/public_html में मनमानी फ़ाइलें हटानाजंप-बॉक्स से कई सर्वरों को स्वीप करने के लिए:
mkdir -p reports
while read -r host; do
echo "=== $host ==="
scp fix-cpanel-cve-2026-41940.sh "root@${host}:/root/" >/dev/null
ssh "root@${host}" '/root/fix-cpanel-cve-2026-41940.sh --auto -y'
scp "root@${host}:/var/log/cpanel-cve-fix/report-*.txt" "reports/${host}.txt" 2>/dev/null
done < servers.txt
फिर रिपोर्टों को grep करें:
grep -l "COMPROMISE INDICATORS PRESENT" reports/*
स्क्रिप्ट इन्हें अपनी रिपोर्ट में सूचीबद्ध करेगी। इनमें से कोई भी सुरक्षित रूप से स्वचालित नहीं किया जा सकता।
/etc/shadow है)wp-config.php, .env, config.php, आदि अपडेट करें/home/*/public_html का ऑडिट करें (हाल ही में संशोधित .php फ़ाइलें)आपको इनमें से किसी एक बिल्ड पर या उससे ऊपर होना चाहिए:
| ट्रैक | पैच किया गया बिल्ड |
|---|---|
| 110.0.x | 11.110.0.97 |
| 118.0.x | 11.118.0.63 |
| 126.0.x | 11.126.0.54 |
| 132.0.x | 11.132.0.29 |
| 134.0.x | 11.134.0.20 |
| 136.0.x | 11.136.0.5 |
| WP² | 11.136.1.7 |
अपना संस्करण /usr/local/cpanel/cpanel -V से जांचें।
| प्रकार | संकेतक |
|---|---|
| IP | 87.121.84.78 (nuclear.x86 ड्रॉप) |
| IP | 45.148.120.23 (nuclear.x86 वैकल्पिक ड्रॉप) |
| IP | 31.57.109.131 (माइनर स्क्रिप्ट) |
| फ़ाइल | nuclear.x86 (Mirai-व्युत्पन्न ELF) |
| प्रक्रिया | nuclear.x86 xd |
| स्क्रिप्ट | 4thepool_miner.sh |
| User-Agent | Go-http-client/1.1 पोर्ट 2087 पर हिट कर रहा है |
| User-Agent | python-requests/* पोर्ट 2087 पर हिट कर रहा है |
| पैटर्न | /var/cpanel/sessions/raw/ में नई फ़ाइल जिसमें user=root है, बिना login_log में मेल खाते सफल लॉगिन के |
| पैटर्न | खाली / फ्लश किया गया iptables नियमसेट |
क्या इसे स्वस्थ सर्वर पर चलाना सुरक्षित है? हां। डिफ़ॉल्ट मोड केवल-स्कैन है और कोई बदलाव नहीं करता। फिक्स और ऑटो मोड आइडेम्पोटेंट हैं।
क्या यह डाउनटाइम का कारण बनेगा?
--fix WHM/cPanel में संक्षिप्त रुकावट का कारण बनता है जब यह cpsrvd को पुनरारंभ करता है (~10 सेकंड)। --auto /scripts/upcp --force चलाता है जो 10–30 मिनट ले सकता है — वेबसाइटें इस दौरान ऊपर रहती हैं, लेकिन WHM अंत में संक्षिप्त रूप से अनुपलब्ध होता है।
मेरा cPanel संस्करण पैच की गई सूची में नहीं है — क्या मैं सुरक्षित हूं? यदि आप 110.0.x से पुराने ट्रैक पर हैं, तो आप जीवन-अंत संस्करण पर हैं। cPanel पैच नहीं भेजेगा। होस्ट को समझौता किया गया मानें जब तक अन्यथा सिद्ध न हो और तत्काल अपग्रेड करें।
स्क्रिप्ट कहती है Killed जब यह कुछ भी करने की कोशिश करती है।
यह nuclear.x86 सक्रिय रूप से आपके टूल्स को मार रहा है। पहले किल स्टेप मैन्युअल रूप से चलाएं:
pkill -9 -f nuclear.x86
फिर स्क्रिप्ट को दोबारा चलाएं।
क्या यह AlmaLinux / Rocky / CloudLinux / CentOS पर काम करता है? हां — सभी मानक cPanel प्लेटफ़ॉर्म। AlmaLinux 8, Rocky 9, CloudLinux 7+ पर परीक्षण किया गया।
क्या यह मेरे ग्राहकों की वेबसाइटों को छूएगा?
नहीं। स्क्रिप्ट /home/*/public_html में कुछ भी संशोधित नहीं करती। यह केवल OS-स्तरीय कॉन्फ़िग, cPanel सत्र, फ़ायरवॉल नियम और ज्ञात-खराब प्रक्रियाओं को छूती है।
PR स्वागत योग्य हैं — विशेष रूप से:
कृपया ऐसा कुछ भी न जोड़ें जो क्रेडेंशियल्स को स्वचालित रूप से रोटेट करता हो या उपयोगकर्ता डेटा हटाता हो — विनाशकारी सतह को संकीर्ण रखना जानबूझकर है।
MIT. इसका उपयोग करें, फोर्क करें, अपने स्वयं के टूलिंग में एकीकृत करें। एट्रिब्यूशन की सराहना की जाती है लेकिन आवश्यक नहीं है।
WHMCSPilot.com — SM द्वारा निर्मित।
भेद्यता अनुसंधान क्रेडिट: cPanel सुरक्षा टीम, watchTowr Labs, Rapid7, KnownHost, और व्यापक होस्टिंग समुदाय जिन्होंने अभियान सामने आने पर IOCs साझा किए।
यह स्क्रिप्ट बिना वारंटी के, जैसा-है प्रदान की गई है। यह एक प्रथम-प्रतिक्रिया ट्राइएज टूल है — पूर्ण घटना-प्रतिक्रिया संलग्नता का विकल्प नहीं। यदि आप PII, भुगतान डेटा, या अन्य विनियमित डेटा संभालते हैं, तो समझौता किए गए बॉक्स को साफ घोषित करने से पहले अपने DPO और एक योग्य IR फर्म से परामर्श करें।
यदि कोई सर्वर सक्रिय रूप से समझौता किया गया है, तो सबसे सुरक्षित मार्ग हमेशा ज्ञात-अच्छे बैकअप से पुनर्निर्माण करना है, जगह में सफाई करना नहीं।