Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cpanel-cve-2026-41940-ioc — # ماسح مؤشرات الاختراق (IOC) لتجاوز المصادقة CVE-2026-41940 في cPanel/WHM — يصلح النتائج الإيجابية الخاطئة في سكربت الكشف الأصلي، ويضيف ترابطًا متقاطعًا للسجلات | Kitploit
أدوات/GitHubGitHub/andrei-dr/cpanel-cve-2026-41940-ioc
أدوات دفاعيةماسحات الثغرات الأمنيةأمن الويبالمصادقةالاستجابة للحوادثتحليل السجلات
GitHubandrei-dr/cpanel-cve-2026-41940-ioc

cpanel-cve-2026-41940-ioc

# ماسح مؤشرات الاختراق (IOC) لتجاوز المصادقة CVE-2026-41940 في cPanel/WHM — يصلح النتائج الإيجابية الخاطئة في سكربت الكشف الأصلي، ويضيف ترابطًا متقاطعًا للسجلات

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
عرض المستودع
4منذ 3 أشهرلم تتم المراجعة بعد

ماسح مؤشرات الاختراق CVE-2026-41940

نص برمجي للكشف عن ثغرة تجاوز المصادقة في cPanel/WHM (CVE-2026-41940) التي تؤثر على جميع إصدارات cPanel بعد الإصدار 11.40.

هذه إعادة كتابة لـ نص الكشف الأصلي من cPanel مع إصلاحات للنتائج الإيجابية الخاطئة وإضافة ربط السجلات.

ماذا يفعل

يفحص /var/cpanel/sessions/raw/ بحثًا عن ملفات الجلسات التي تظهر عليها علامات استغلال حقن الأسطر الجديدة، ثم يربط عناوين IP المشبوهة ورموز الجلسات بسجلات الوصول/تسجيل الدخول/الأخطاء في cPanel. كما يفحص access_log بحثًا عن استغلال تاريخي حيث انتهت صلاحية ملف الجلسة أو تمت إزالته.

الإصلاحات مقارنة بالنص الأصلي

  1. إزالة regex المعطل متعدد الأسطر pass الذي ينتج نتائج إيجابية خاطئة على كل جلسة مصادقة في الإنتاج (regex يطابق أي حقل pass= متبوعًا بسطر آخر، وهو ما ينطبق على كل ملفات الجلسات).
  2. تعميم كشف الحقن إلى method=badpass origin + أي سمة ما بعد المصادقة بدلاً من اشتراط التركيبة الضيقة token_denied + cp_security_token. يلتقط متغيرات PoC التي تحذف token_denied.
  3. تصنيف ثلاثي المستويات بناءً على النتيجة المرصودة بدلاً من علامة ثنائية:
    • حرج (CRITICAL) — رمز محقون لوحظ مع 2xx/3xx في access_log (نجح الاستغلال)، أو استغلال تاريخي وجد في access_log بعد انتهاء الجلسة
    • عالٍ (HIGH) — كتابة الحقن نجحت لكن الرمز لم يظهر في access_log (مرحلي، قد يُستخدم لاحقًا)
    • متوسط (MEDIUM) — تمت محاولة استخدام الرمز لكن كل الطلبات حصلت على 4xx/5xx (الخادم حجبه)
  4. إرشادات معالجة متدرجة — الحرج/العالي يستدعي استجابة كاملة للحوادث؛ المتوسط فقط يعني أن الخادم صمد ويحصل على خطوات تنظيف أخف.
  5. الربط عبر كل من cpsessid وعناوين IP المستخرجة من ضربات access_log على الرمز المحقون، لالتقاط تنقل المهاجم بين عناوين IP بعد الحقن.
  6. كشف access_log فقط — يلتقط الاستغلال حيث انتهت صلاحية ملف الجلسة أو تمت إزالته، عبر ربط محاولات تسجيل الدخول الفاشلة (POST /login/?login_only=1 -> 401) مع استخدام ناجح لاحق لرمز cpsess من نفس عنوان IP.
  7. وضع --extended لفحص أعمق للسجلات عبر مصادر إضافية.

تشغيل سريع (بدون استنساخ)

root@kitploit:~
# Bash — يعمل في كل مكان، بدون تبعيات
bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh)

# Python — أسرع على مجلدات الجلسات الكبيرة، يدعم --json
curl -fsSLo /tmp/ioc.py https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.py
python3 /tmp/ioc.py

# فحص موسع (أي من النسختين)
bash <(curl -fsSL https://raw.githubusercontent.com/AndreiG6/cpanel-cve-2026-41940-ioc/main/ioc.sh) --extended
python3 /tmp/ioc.py --extended

# تحقق من رمز الخروج بعد التشغيل ($? = 0 نظيف، 1 مؤشرات اختراق موجودة، 2 خطأ بيئة)
echo $?

أعلام curl: -f يفشل على أخطاء HTTP بدلاً من تمرير صفحة خطأ إلى bash، -s صامت (بدون شريط تقدم)، -S يعرض الأخطاء رغم -s، -L يتبع عمليات إعادة التوجيه.

مخرجات JSON (Python فقط)

النسخة Python تدعم --json لمخرجات منظمة يمكن تمريرها إلى jq، أو إرسالها إلى SIEM، أو معالجتها برمجيًا.

root@kitploit:~
# مخرجات JSON كاملة
python3 ioc.py --json

# ملخص العدادات فقط
python3 ioc.py --json | jq '.counts'

# قائمة كل النتائج الحرجة
python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL")]'

# استخراج عناوين IP الفريدة للمهاجمين
python3 ioc.py --json | jq '.suspect_ips[]'

# عرض النتائج مع عناوين IP المصدر (لقوائم حظر جدار الحماية)
python3 ioc.py --json | jq '[.findings[] | {severity, source_ip, token: .cp_security_token}]'

# الحصول على كل عناوين IP التي استخدمت الرمز بنجاح (للحظر الفوري)
python3 ioc.py --json | jq '[.findings[] | select(.severity == "CRITICAL") | .source_ip] | unique'

# تغذية بيانات الربط لعنوان IP محدد
python3 ioc.py --json | jq '.cross_ref[.suspect_ips[0]]'

مثال على بنية JSON:

root@kitploit:~
{
  "findings": [
    {
      "severity": "CRITICAL",
      "file": "/var/cpanel/sessions/raw/:Q3f8Ag2epeBuTaIZ",
      "verdict": "Injected token used successfully (2xx/3xx in access_log)",
      "origin": "address=203.0.113.50,app=whostmgrd,method=badpass",
      "source_ip": "203.0.113.50",
      "user": "root",
      "hasroot": "1",
      "tfa_verified": "0",
      "cp_security_token": "/cpsess04396539398",
      "token_denied": "1",
      "successful_internal_auth_with_timestamp": "9999999999",
      "token_hits": [
        "203.0.113.50 - root [04/30/2026:12:12:01 -0000] \"GET /cpsess04396539398/json-api/version HTTP/1.1\" 200 0 ..."
      ]
    },
    {
      "severity": "MEDIUM",
      "file": "/var/cpanel/sessions/raw/:2TDiaHwh_r8qOH5y",
      "verdict": "Injection landed; token was tried but BLOCKED (all 4xx/5xx)",
      "source_ip": "198.51.100.23",
      "cp_security_token": "/cpsess5637704041",
      "token_hits": [
        "198.51.100.23 - root [04/30/2026:04:08:09 -0000] \"GET /cpsess5637704041/json-api/version HTTP/1.1\" 403 0 ..."
      ]
    },
    {
      "severity": "CRITICAL",
      "file": null,
      "verdict": "Injected cpsess token used with 2xx/3xx after failed login; session expired or purged",
      "source_ip": "203.0.113.99",
      "cp_security_token": "/cpsess8705792557",
      "token_hits": ["..."]
    }
  ],
  "counts": {"critical": 2, "high": 15, "medium": 71, "warning": 0},
  "suspect_ips": ["203.0.113.50", "198.51.100.23", "203.0.113.99"],
  "suspect_ips_omitted": 0,
  "cross_ref": {
    "203.0.113.50": {
      "cpanel_access_log": ["...last 5 lines..."],
      "cpanel_login_log": ["..."]
    }
  },
  "advisory": "https://support.cpanel.net/hc/en-us/articles/40073787579671"
}

الاستخدام (نسخة محلية)

root@kitploit:~
git clone https://github.com/AndreiG6/cpanel-cve-2026-41940-ioc.git
cd cpanel-cve-2026-41940-ioc

# نسخة Bash
bash ioc.sh                # الافتراضي (توسيع الحرج/العالي، عدادات المتوسط/التحذير فقط)
bash ioc.sh -v             # مفصّل (توسيع كل النتائج)
bash ioc.sh --extended     # مفصّل + سجلات أعمق + كل عناوين IP في الربط

# نسخة Python (نفس منطق الكشف، أسرع، مخرجات منظمة)
python3 ioc.py             # الافتراضي (نفس سلوك الطي في bash)
python3 ioc.py -v          # مفصّل
python3 ioc.py --extended  # مفصّل + سجلات أعمق
python3 ioc.py --json      # JSON منظم (يتضمن دائمًا كل النتائج)

يجب تشغيله كجذر (root) على خادم cPanel المستهدف. نسخة Python تتطلب Python 3.6+ (مضمنة في CentOS 7 / CloudLinux 7+).

رموز الخروج

الرمزالمعنى
0لا توجد مؤشرات
1تم اكتشاف مؤشرات اختراق
2خطأ بيئة (ليس خادم cPanel)

المراجع

  • نشرة cPanel الأمنية
  • CVE-2026-41940: تجاوز المصادقة عبر حقن الأسطر الجديدة في معالجة جلسات cPanel

الترخيص

MIT

تنزيل الأداة