تم اكتشاف ست ثغرات أمنية في حزمة Dnsmasq، التي تجمع بين مُحلِّل أسماء نطاقات التخزين المؤقت، وخادم DHCP، وخدمة إعلان مسارات IPv6، ونظام تمهيد الشبكة. تسمح هذه الثغرات بتنفيذ تعليمات برمجية بصلاحيات المستخدم الجذر، وإعادة توجيه النطاقات، واكتشاف ذاكرة العمليات، وتعطل الخدمات. تم إصلاح هذه المشكلات في الإصدار 2.92rel2 من Dnsmasq، كما تتوفر الإصلاحات على شكل حزم تصحيح.
تم تحديد القضايا:
- CVE-2026-4892 هو ثغرة أمنية في بروتوكول DHCPv6 تسمح للمهاجم الذي لديه صلاحية الوصول إلى الشبكة المحلية بتنفيذ تعليمات برمجية بصلاحيات الجذر عن طريق إرسال حزمة DHCPv6 مُصممة خصيصًا. تحدث هذه الثغرة لأن مُعرّف العميل (CLID) في DHCPv6 يُكتب في المخزن المؤقت دون مراعاة أن الحزمة تخزن البيانات بنظام العد الست عشري، الذي يستخدم ثلاثة بايتات "%xx" لكل بايت من مُعرّف العميل (على سبيل المثال، تخزين مُعرّف عميل بحجم 1000 بايت سيؤدي إلى كتابة 3000 بايت).
- CVE-2026-2291 – يسمح تجاوز سعة المخزن المؤقت في وظيفة extract_name() للمهاجم بإدخال إدخالات زائفة في ذاكرة التخزين المؤقت لنظام أسماء النطاقات (DNS) والتسبب في إعادة التوجيه. نطاق إلى عنوان IP آخر. حدث تجاوز السعة بسبب تخصيص المخزن المؤقت دون مراعاة تهريب بعض الأحرف في التمثيل الداخلي لاسم النطاق في dnsmasq.
- CVE-2026-4893 هو ثغرة أمنية تسمح بتسريب معلومات، مما يتيح تجاوز عملية التحقق من نظام أسماء النطاقات (DNS) عن طريق إرسال حزمة بيانات DNS مُصممة خصيصًا تحتوي على معلومات الشبكة الفرعية للعميل (RFC 7871). يمكن استغلال هذه الثغرة لإعادة توجيه استجابات DNS وإعادة توجيه المستخدمين إلى نطاق المُهاجم. تنشأ هذه الثغرة نتيجة تمرير طول سجل OPT إلى دالة check_source() بدلًا من طول حزمة البيانات، مما يجعل الدالة تُرجع دائمًا نتيجة تحقق ناجحة.
- CVE-2026-4891 - ثغرة قراءة خارج النطاق في التحقق من صحة DNSSEC تؤدي إلى تسرب الذاكرة في الاستجابة عند معالجة استعلام DNS مصمم خصيصًا.
- CVE-2026-4890 – قد تؤدي حلقة التحقق من صحة DNSSEC إلى حرمان من الخدمة عبر حزمة DNS مصممة خصيصًا.
- CVE-2026-5172 - تؤدي قراءة خارج النطاق في وظيفة extract_addresses() إلى حدوث عطل عند معالجة استجابات DNS المصممة خصيصًا.
يمكن تقييم حالة إصلاحات الثغرات الأمنية في التوزيعات على هذه الصفحات (إذا كانت الصفحة غير متاحة، فهذا يعني أن مطوري التوزيعة لم يبدأوا بعد في معالجة المشكلة): Debian, UbuntuSUSE، RHEL، Gentoo، Arch، Fedora، OpenWRT، FreeBSD. مشروع Dnsmasq مشارك في المنصة. Android والتوزيعات المتخصصة مثل OpenWrt وDD-WRT، بالإضافة إلى البرامج الثابتة لأجهزة التوجيه اللاسلكية من العديد من الشركات المصنعة. في التوزيعات القياسية، يمكن تثبيت Dnsmasq عند استخدام libvirt لتوفير خدمة DNS في الآلات الافتراضية أو تم تفعيلها في مُكوِّن NetworkManager.
المصدر: opennet.ru
