CVE-2026-77214 in Libexpat
الملخص
بحسب VulDB • 07/10/2026
تحتوي مكتبة libexpat قبل الإصدار 13c5f63 على ثغرة قراءة زائدة عن الحد (heap buffer over-read) في ملف xmlparse.c. تقوم الدالة XML_ParseBuffer بتحديث نهاية مخزن التحليل باستخدام `parser->m_bufferEnd += len` بناءً على طول مقدم من المُتَّصل، دون التحقق منه مقابل حجم المخزن المخصص؛ مما يؤدي إلى تحريك قيمة m_bufferEnd ما بعد حدود تخصيص الذاكرة العشوائية (heap) مع استدعاءات XML_ParseBuffer المتكررة، وقراءة البيانات خارج الحدود في عمليات التحليل التالية. للوصول إلى هذا المسار البرمجي، يجب أن يكون مخزن التحليل موجودًا مسبقًا؛ وإلا فإن الدالة XML_ParseBuffer ستعيد قيمة XML_ERROR_NO_BUFFER. يوجد المخزن بعد استدعاء سابق لـ XML_GetBuffer، إما بشكل مباشر (وهو الحالة الشائعة) أو بشكل غير مباشر من خلال استدعاء سابق لـ XML_Parse الذي يقوم بتخصيص المخزن داخلياً. تكشف القراءة الزائدة عن الذاكرة العشوائية المجاورة لتطبيق المُتَّصل، مما يتيح استعادة مؤشرات الذاكرة العشوائية (heap pointers)، ومؤشرات دوال مكتبة C القياسية (libc function pointers)، ومؤشرات الأكواد الكافية للتغلب على ASLR وبناء عناصر استغلال إضافية.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.