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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-52924 — تحليل تقني لـ CVE-2026-52924، وهو ثغرة استخدام بعد التحرير (use-after-free) حرجة في معالجة ملفات تعريف الارتباط المنتهية الصلاحية (stale cookie) الخاصة ببروتوكول SCTP في نواة لينكس، بما في ذلك السبب الجذري، وسير الهجوم، والإصلاح، وطرق الكشف. | Kitploit
أدوات/GitHubGitHub/eliot-code/cve-2026-52924
تحليل الثغرات الأمنيةالاستغلالالأوراق والأبحاثالتعلم والتعليماستغلال الملفات الثنائية
GitHubeliot-code/cve-2026-52924

CVE-2026-52924

تحليل تقني لـ CVE-2026-52924، وهو ثغرة استخدام بعد التحرير (use-after-free) حرجة في معالجة ملفات تعريف الارتباط المنتهية الصلاحية (stale cookie) الخاصة ببروتوكول SCTP في نواة لينكس، بما في ذلك السبب الجذري، وسير الهجوم، والإصلاح، وطرق الكشف.

عرض المستودع
منذ 10س 22دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

.# CVE-2026-52924: استخدام بعد التحرير في SCTP في معالجة ملفات تعريف الارتباط القديمة

ملخص الثغرة الأمنية

معرف CVE: CVE-2026-52924
الخطورة: حرجة (CVSS 9.8)
المكوّن: نواة لينكس - SCTP (بروتوكول نقل التحكم في البث)
النوع: استخدام بعد التحرير (CWE-416, CWE-825)
تاريخ النشر: 2026-06-24
الحالة: تم الإصلاح

الإصدارات المتأثرة

  • نواة لينكس < 5.10.259
  • نواة لينكس < 5.15.210
  • نواة لينكس < 6.1.176
  • نواة لينكس < 6.6.143
  • نواة لينكس < 6.12.94
  • نواة لينكس < 6.18.36
  • نواة لينكس < 7.0.13
  • نواة لينكس < 7.1

التفاصيل الفنية

السبب الجذري

تحدث الثغرة الأمنية في معالجة آلة الحالة الخاصة بـ SCTP لحزم COOKIE-ECHO القديمة. تتعلق المشكلة بالتنظيف غير السليم لقائمة انتظار البث الصادرة عند التراجع عن ارتباط (association).

تسلسل الهجوم

  1. التشغيل العادي: ينتقل الارتباط إلى حالة COOKIE_ECHOED
  2. وضع بيانات المستخدم في قائمة الانتظار: يرسل التطبيق بيانات، يتم وضعها في قائمة الانتظار للإرسال
  3. خطأ ملف تعريف الارتباط القديم: يرسل النظير البعيد خطأ Stale Cookie
  4. يتراجع الارتباط من COOKIE_ECHOED ← COOKIE_WAIT
تشغيل التراجع:
  • تحديث حالة البث: sctp_stream_update() يحرر جدول البث القديم ويُثبّت جدولاً جديداً
  • مؤشر غير صالح: stream->out_curr لا يزال يشير إلى إدخال sctp_stream_out المحرر
  • وصول الإزالة من قائمة الانتظار: عندما يحاول المجدول الإزالة من قائمة الانتظار (FCFS, RR, PRIO)، يصل إلى out_curr->ext
  • استخدام بعد التحرير: الوصول إلى ذاكرة محررة ← انهيار النواة عبر اكتشاف KASAN
  • تدفق الكود الإشكالي

    root@kitploit:~
    sctp_sf_do_5_2_6_stale():
      ├─ استلام خطأ Stale Cookie
      ├─ التراجع عن حالة الارتباط
      └─ استدعاء sctp_stream_update()
           ├─ تحرير جدول البث القديم
           ├─ تثبيت جدول البث الجديد
           └─ خطأ: stream->out_curr لم يتم إبطاله ❌
    
    لاحقاً عند الإزالة من قائمة الانتظار:
      sctp_sched_fcfs_dequeue():
        └─ الوصول إلى stream->out_curr->ext  (ذاكرة محررة) 💥
    

    مثال على الانهيار

    root@kitploit:~
    BUG: KASAN: slab-use-after-free in sctp_sched_fcfs_dequeue+0x13a/0x140
    Read of size 8 at addr ff1100004d4d3208 by task mini_poc/9312
    CPU: 1 UID: 1001 PID: 9312 Comm: mini_poc Not tainted 7.1.0-rc1-00305-gbd3a4795d574 #5 PREEMPT(full)
    
    Call trace:
      sctp_sched_fcfs_dequeue+0x13a/0x140
      sctp_outq_flush+0x1603/0x33e0
      sctp_do_sm+0x31c9/0x5d30
      sctp_assoc_bh_rcv+0x392/0x6f0
      sctp_inq_push+0x1db/0x270
      sctp_rcv+0x138d/0x3c10
    

    لماذا تحديث out_curr وحده غير كافٍ

    قد يكون الإصلاح الساذج هو مجرد مسح stream->out_curr:

    root@kitploit:~
    // إصلاح غير كافٍ ❌
    stream->out_curr = NULL;
    

    المشكلة: لا تزال قائمة الانتظار الصادرة تحتوي على:

    • كتل بيانات في قائمة الانتظار تشير إلى حالة البث القديمة
    • إدخالات قائمة إعادة الإرسال تشير إلى البث القديم
    • كتل تحكم مرفوعة مع بيانات وصفية للبث القديم

    ستظل هذه المراجع القديمة تسبب استخداماً بعد التحرير عند الوصول إليها.

    الإصلاح الصحيح

    الحل: تفريغ قائمة الانتظار الصادرة للارتباط بالكامل أثناء معالجة ملفات تعريف الارتباط القديمة.

    root@kitploit:~
    // الإصلاح الصحيح ✓
    sctp_outq_free(&asoc->outqueue);
    

    يضمن هذا:

    1. إسقاط جميع بيانات الإرسال المعلقة
    2. تحرير جميع إدخالات قائمة إعادة الإرسال
    3. إبطال المؤشرات المخزنة مؤقتاً في المجدول (out_curr، وغيرها)
    4. إمكانية إعادة بناء حالة البث بأمان أثناء إعادة تشغيل COOKIE_WAIT
    5. عدم وجود مراجع معلقة لإدخالات البث المحررة

    موقع التنفيذ

    الملف: net/sctp/sm_statefuns.c
    الدالة: sctp_sf_do_5_2_6_stale()
    الإضافة: استدعاء sctp_outq_free(&asoc->outqueue) قبل sctp_stream_update()

    root@kitploit:~
    enum sctp_disposition sctp_sf_do_5_2_6_stale(...)
    {
        // ... الكود الموجود ...
        
        // تفريغ قائمة الانتظار الصادرة قبل إعادة بناء حالة البث
        sctp_outq_free(&asoc->outqueue);
        
        // الآن أصبح تحديث البث آمناً
        sctp_stream_update(&asoc->stream, &asoc->c.h_init_tag);
        
        // ... باقي الدالة ...
    }
    

    تحليل التأثير

    عوامل الخطورة (CVSS 9.8)

    • متجه الهجوم: شبكة (CVSS:3.1/AV:N)
    • تعقيد الهجوم: منخفض (CVSS:3.1/AC:L)
    • الصلاحيات المطلوبة: لا شيء (CVSS:3.1/PR:N)
    • تفاعل المستخدم: لا شيء (CVSS:3.1/UI:N)
    • النطاق: غير متغير (CVSS:3.1/S:U)
    • تأثير السرية: مرتفع (CVSS:3.1/C:H)
    • تأثير السلامة: مرتفع (CVSS:3.1/I:H)
    • تأثير التوافر: مرتفع (CVSS:3.1/A:H)

    متطلبات الاستغلال

    1. وصول شبكي إلى النظام المستهدف (منفذ SCTP مفتوح)
    2. القدرة على إرسال حزم SCTP لإنشاء اتصال
    3. إرسال خطأ Stale Cookie في توقيت محدد (حالة COOKIE_ECHOED)
    4. تشغيل عملية إزالة من قائمة انتظار المجدول

    سيناريوهات الهجوم

    1. حرمان من الخدمة: انهيار النواة بشكل متكرر ← DoS
    2. كشف المعلومات: قراءة ذاكرة النواة عبر UAF
    3. تصعيد الصلاحيات: محتمل عبر التلاعب بالذاكرة
    4. تنفيذ كود عن بُعد: ممكن مع استغلال تلف الذاكرة

    طرق الكشف

    كشف KASAN (وقت التشغيل)

    root@kitploit:~
    # تفعيل KASAN في إعدادات النواة
    CONFIG_KASAN=y
    CONFIG_KASAN_GENERIC=y
    
    # يُظهر إخراج وقت التشغيل:
    BUG: KASAN: slab-use-after-free
    

    التحليل الثابت

    root@kitploit:~
    # البحث عن وصول غير آمن إلى stream->out_curr بدون تحقق
    grep -r "out_curr->ext" net/sctp/
    grep -r "out_curr->" net/sctp/sched*.c
    

    الكشف الشبكي

    • مراقبة حزم خطأ Stale Cookie الخاصة بـ SCTP (النوع 3، الرمز 1)
    • تتبع أنماط التراجع عن الاتصال
    • التنبيه على الانتقالات السريعة COOKIE_ECHOED ← COOKIE_WAIT

    استراتيجيات التخفيف

    تخفيفات مؤقتة (حتى التحديث)

    1. تعطيل SCTP: إزالة وحدة SCTP أو حظر منافذ SCTP (132، 132 UDP)

      root@kitploit:~
      echo "install sctp /bin/true" >> /etc/modprobe.d/sctp-disable.conf
      
    2. قواعد جدار الحماية: حظر حركة مرور SCTP عند حدود الشبكة

      root@kitploit:~
      iptables -A INPUT -p sctp -j DROP
      
    3. إصدار النواة: الترقية إلى الإصدارات المُصححة

      • 5.10.259+
      • 5.15.210+
      • 6.1.176+
      • 6.6.143+
      • 6.12.94+
      • 6.18.36+
      • 7.0.13+
      • 7.1+ (الأحدث)

    الإصلاح الدائم

    تطبيق تصحيح النواة الذي يستدعي sctp_outq_free() في sctp_sf_do_5_2_6_stale().

    المراجع

    • CWE-416: استخدام بعد التحرير
    • CWE-825: إلغاء مرجعية مؤشر منتهي الصلاحية
    • حاسبة CVSS: https://www.first.org/cvss/calculator/3.1
    • إدخال NVD: CVE-2026-52924
    • أمان نواة لينكس: https://www.kernel.org/doc/html/latest/security/

    توصيات الاختبار

    اختبارات الوحدة

    1. التحقق من أن sctp_outq_free() يبطل out_curr بشكل صحيح
    2. التحقق من تحرير جميع البيانات في قائمة الانتظار أثناء outq_free
    3. التحقق من مسح قائمة إعادة الإرسال
    4. اختبار سلوك المجدول بعد تفريغ outq

    اختبارات التكامل

    1. تدفق الاسترداد العادي لملفات تعريف الارتباط القديمة
    2. البيانات قيد الإرسال عند استلام ملف تعريف ارتباط قديم
    3. ملفات تعريف ارتباط قديمة متعددة وسريعة
    4. مجدولات SCTP مختلفة (FCFS, RR, PRIO)

    اختبار التشويش (Fuzz Testing)

    1. إرسال حزم SCTP مع أخطاء ملفات تعريف الارتباط القديمة
    2. تغيير توقيت حقن الخطأ
    3. تغيير كمية البيانات قيد الإرسال
    4. الاختبار في ظل ظروف تحميل عالية

    الجدول الزمني

    • 2026-06-24: الكشف العلني عن الثغرة الأمنية
    • الحالة: الإصلاح متاح
    • درجة EPSS: 0.3% (النسبة المئوية 27)
      • احتمالية استغلال منخفضة
      • يتطلب ظروفاً شبكية محددة
      • استغلالات محدودة في العالم الحقيقي مفهرسة

    ** المؤلف : Elliot إصدار المستند: 1.0
    آخر تحديث: 2026-09-07
    التصنيف: معلومات عامة

    تنزيل الأداة