Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-74469 — مستودع بحثي لـ CVE-2026-74469 (DiagSpill)، وهو تجاوز في عدّاد نقل نظير SCTP في نواة Linux يؤدي إلى كتابة خارج الحدود، مع PoC وتحليل السبب الجذري وتفاصيل التصحيح. | Kitploit
أدوات/GitHubGitHub/0xblackash/cve-2026-74469
تصعيد الامتيازاتتحليل الذاكرة الجنائيتحليل الثغرات الأمنيةالاستغلالالأوراق والأبحاثالتعلم والتعليماستغلال الملفات الثنائيةمختبرات وتدريب عملي
GitHub0xblackash/cve-2026-74469

CVE-2026-74469

مستودع بحثي لـ CVE-2026-74469 (DiagSpill)، وهو تجاوز في عدّاد نقل نظير SCTP في نواة Linux يؤدي إلى كتابة خارج الحدود، مع PoC وتحليل السبب الجذري وتفاصيل التصحيح.

1114منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

⚡ CVE-2026-74469 — DiagSpill

Gemini_Generated_Image_yv49p8yv49p8yv49

تجاوز سعة عدّاد النقل النظير في SCTP في نواة Linux

ثغرة في SCTP في نواة Linux ناتجة عن تجاوز سعة عدّاد النقل النظير ذي 16 بت، مما يسمح للعدّاد بالالتفاف من 65535 إلى 0. أثناء تفريغ بيانات تشخيص SCTP، يمكن أن تتسبب القيمة الملتفتة في حجز غير كافٍ لحمولة skb يتبعه كتابة خارج الحدود لبيانات عنوان النظير.


⚠️ إخلاء المسؤولية

هذا المستودع مخصص للبحث الأمني المصرّح به، وتحليل ثغرات النواة، وبيئات CTF، وتصحيح أخطاء النواة، والاختبار الدفاعي فقط.

لا تستخدم كود إثبات المفهوم ضد أنظمة دون تصريح صريح.


📌 نظرة عامة على الثغرة

الحقلالتفاصيل
CVECVE-2026-74469
الاسم الرمزيDiagSpill
المكوّنLinux Kernel
النظام الفرعيSCTP / sock_diag
الملف المتأثرnet/sctp/associola.c
الدالة الأساسيةsctp_assoc_add_peer()
فئة الخطأتجاوز سعة عدد صحيح / كتابة خارج الحدود
التأثيرإفساد ذاكرة النواة
التأثير المحتملتصعيد الصلاحيات محليًا
CVSS v3.17.0 — High
ناقل الهجوممحلي
تعقيد الهجوممرتفع
الصلاحيات المطلوبةمنخفضة
تفاعل المستخدملا يوجد
الحالةتم التصحيح

يصف استشارة CVE الخاصة بنواة Linux المشكلة على أنها تجاوز سعة عدّاد transport_count ذي 16 بت في SCTP، يتبعه تخصيص أصغر من اللازم لـ INET_DIAG_PEERS وكتابة خارج الحدود أثناء تفريغ البيانات التشخيصية.


🧬 وصف الثغرة

يحتفظ الكود المصاب بعدد النقلات النظيرة الفريدة في عدّاد ذي 16 بت:

transport_count

كل نظير فريد جديد يُضاف يزيد العداد.

الحد الفاصل الحرج هو:

65535

إضافة نقل فريد آخر يؤدي إلى:

65535 + 1
     ↓
     0

يخلق الالتفاف الناتج تعارضًا بين:

transport_count

و:

transport_addr_list

تُثق الثقة لاحقًا في النظام الفرعي التشخيصي بالعدّاد المُغلَّف عند حساب حجم مخزن الاستجابة المؤقت، بينما لا يزال يتكرر عبر القائمة الكاملة لعناوين الأقران.


🔬 السبب الجذري

يمكن تمثيل الثغرة على النحو التالي:

                    SCTP Association
                           │
                           ▼
                 Add unique peers
                           │
                           ▼
                 transport_count
                    uint16_t
                           │
                           ▼
                    65,535 peers
                           │
                           ▼
                 + 1 unique peer
                           │
                           ▼
                    Integer wrap
                           │
                           ▼
                transport_count = 0
                           │
                           ▼
                  SCTP sock_diag
                           │
                           ▼
             Reserve incorrect payload
                           │
                           ▼
          Iterate complete peer list
                           │
                           ▼
             Out-of-bounds skb write

ينص الاستشارة الأمنية الأصلية تحديدًا على أن النقل رقم 65,536 يُعيد العداد إلى الصفر.


🧠 لماذا يحدث الخطأ

يعتمد كود التشخيص فعليًا على رؤيتين مختلفتين للحالة نفسها.

جانب التخصيص

transport_count
       │
       ▼
payload size

نسخ الجانب

transport_addr_list
       │
       ▼
copy every peer address

بعد التفاف العدد الصحيح:

transport_count = 0

transport_addr_list =
    [peer 1]
    [peer 2]
    [peer 3]
    ...
    [peer 65536]

يحجز المخصص المساحة بناءً على:

0 peers

بينما لا تزال عملية النسخ قادرة على المعالجة:

65536 peer addresses

هذا التباين يُنتج انتهاكًا لسلامة الذاكرة.


💥 فساد الذاكرة

تصف نشرة Linux Kernel تفريغ التشخيص الناتج بأنه يحجز حمولة فارغة ثم يكتب ما يقارب 8 MiB من عناوين الأقران بعد ذيل skb.

من حيث المفهوم:

Expected skb:

┌───────────────────────────────┐
│ INET_DIAG header              │
├───────────────────────────────┤
│ Peer addresses                │
└───────────────────────────────┘
              ▲
              │
          valid end


Actual vulnerable state:

┌───────────────────────────────┐
│ INET_DIAG header              │
└───────────────────────────────┘
              ▲
              │
          skb tail

              ↓
      Peer address writes
              ↓
      Peer address writes
              ↓
      Peer address writes
              ↓
      OUT-OF-BOUNDS WRITE

يُصنّف Red Hat هذا العيب بأنه CWE-787: Out-of-bounds Write.


🔎 مسار الشيفرة المعرّض للثغرة

يمكن تلخيص المسار ذي الصلة على النحو التالي:

SCTP association
      │
      ▼
sctp_assoc_add_peer()
      │
      ▼
transport_count++
      │
      ▼
16-bit overflow
      │
      ▼
SCTP sock_diag
      │
      ▼
INET_DIAG_PEERS
      │
      ▼
skb payload reservation
      │
      ▼
transport_addr_list iteration
      │
      ▼
Out-of-bounds write

ملف المصدر المتأثر هو:

net/sctp/associola.c

يحدد إعلان CVE لنواة Linux هذا الملف صراحةً.


🩹 الإصلاح في المنبع

الإصلاح في المنبع هو:

bd0e9289e2642f6a5c54faad304ce0f41e926d22

ارتكاب:

sctp: prevent peer transport count overflow

يرفض الإصلاح نظيرًا فريدًا جديدًا عندما:

transport_count >= U16_MAX

من المهم أن يحدث الفحص بعد البحث عن النظير الموجود.

وهذا يحافظ على القدرة على استرجاع نقل موجود بالفعل حتى عندما يكون الارتباط قد بلغ الحد الأقصى.


🛡️ منطق الترقيع

الثغرة

New peer
   │
   ▼
transport_count++
   │
   ▼
Possible 16-bit wrap
   │
   ▼
Diagnostic size mismatch
   │
   ▼
OOB write

تم التصحيح

New peer
   │
   ▼
Existing peer?
   │
 ┌─┴──────────┐
 │            │
YES           NO
 │            │
 ▼            ▼
Reuse       Check U16_MAX
transport       │
                ▼
          Reject at limit

خاصية الأمان المهمة هي منع العدّاد من الالتفاف على الإطلاق مع الحفاظ على دلالات البحث العادية لنظير موجود.


📊 الثغرة مقابل المُرقَّع

خاصية الأمانالثغرةالمُرقَّع
فرض حد النقل 16-بت❌✅
منع التفاف العدّاد❌✅
بقاء النظراء الحاليين قابلين للاستخدام✅✅
موثوقية حجم الحمولة التشخيصية❌✅
منع الكتابة خارج الحدود في skb❌✅
التخفيف من إفساد ذاكرة النواة❌✅

تنزيل الأداة