CVE-2026-53587
libgit2 - قراءة خارج الحدود من الكومة (heap out-of-bounds read) قابلة للوصول عبر الشبكة دون مصادقة في transports/smart_pkt.c:set_data
- تم النشر
- 20/08/2026
- محدث
- 20/08/2026
- تخصيص CNA
- GitHub_M
- الأدلة المرصودة
- 22/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:Hمنخفض · الثلاثين يومًا القادمة
- المئوية
- 39.7%
- تاريخ الموديل
- 21/09/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
libgit2 هو تطبيق C محمول لطرق Git الأساسية، ويُقدَّم كمكتبة قابلة للربط مع واجهة برمجة تطبيقات (API) متينة، مما يتيح بناء وظائف Git داخل تطبيقك. قبل الإصدارين 1.8.6 و1.9.5، كان libgit2 ينفّذ مقارنة strncmp بحجم ثابت في دالة set_data في الملف src/libgit2/transports/smart_pkt.c دون التحقق أولاً من أن مخزن سعة سطر pkt-line الخاص ببروتوكول smart يحتوي على 14 بايت. يمكن لخادم Git خبيث أن يجعل البايتات بعد سطر pkt-line تكمل object-format=، مما يتسبب في تقدم format_str إلى ما بعد سطر pkt-line وتجاوز حساب طول memchr التالي (underflow). يمكن أن يؤدي تجاوز الحدود الناتج في الكومة (heap out-of-bounds walk) إلى تعطل عميل أثناء حزمة الإعلان الأولى عن المراجع (refs-advertisement) عبر HTTP أو HTTPS أو SSH أو بروتوكول Git. تم إصلاح هذه المشكلة في الإصدارين 1.8.6 و1.9.5.
المصادر
1إثبات مفهوم (PoC) بلغة Python لثغرة CVE-2026-53587، يوفّر مسار استغلال مركّزًا لإعادة إنتاج الثغرة ودعم التحقق من صحتها والاختبارات الدفاعية.
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.