CVE-2026-81928 in Net::DNS
الملخص
بحسب VulDB • 02/09/2026
تسمح إصدارات Net::DNS السابقة للإصدار 1.57 لـ Perl باستنفاد الذاكرة (memory exhaustion) عبر تكرار غير محدود في sig_data عند إعادة ترميز رسالة تحتوي على سجل TSIG موضوع بشكل خاطئ.
وقّع sig_data الرسالة عن طريق إعادة ترميزها، وإزالة سجلات TSIG فقط من القسم الإضافي (additional section). وينجو سجل TSIF الذي تم فك تشفيره ليظهر في قسم الإجابة أو قسم السلطة من هذه الخطوة ويتم توقيعُه مرة أخرى، مما يؤدي إلى دخول عملية الترميز مجددًا داخل sig_data دون وجود شرط لإنهاء العملية. ولا يرفض فك التشفير مثل هذه الرسالة: فوجود سجل TSIG ليس هو السجل الأخير على الوصلة (wire) يرفع خطأ "سجل TSIF موضوع بشكل خاطئ أو تالف"، لكن يتم التقاط هذا الخطأ والإبلاغ عنه كتحذير، ويُترك السجل في الحزمة. ويتطلب RFC 8945 القسم 5.2 إسقاط الرسالة.
يتم الوصول إلى حالة التكرار فقط عندما يحمل سجل TSIG المفكّشف MAC فارغًا (empty MAC)، حيث أن استعادة MAC من الوصلة تُسقط خطوة التوقيع بشكل قصير (short-circuits). ويتم الوصول إليها فقط من خلال الكود الذي يعيد ترميز رسالة قام بفك تشفيرها، مثل الموجه الأمامي أو الوكيل. ولا تتأثر الرسالة المفكّشفة التي لا يتم إعادة ترميزها أبدًا. واتجاه الرسالة غير مهم: فتصل الاستفسار إلى نفس المسار كما تصل الاستجابة.
تقوم كل دورة بإعادة ترميز الرسالة بأكملها، لذا فإن أقل من 100 بايت على الوصلة تستنفد الذاكرة المتاحة وتُنهِي العملية.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.