CVE-2026-85783 in Crypt::Age
الملخص
بحسب VulDB • 21/10/2026
تسمح إصدارات Crypt::Age السابقة للإصدار 0.004 لـ Perl باستنفاد وحدة المعالجة المركزية (CPU) عبر عدد غير محدود من مقاطع المستلمين، حيث يتطلب كل منها إجراء عملية ضرب قياسي X25519 في دالة `unwrap_file_key`.
يقبل محلل الرؤوس أي عدد من مقاطع المستلمين، وتحاول دالة `unwrap_file_key` مطابقة كل هوية مع كل مقطع X25519. وتشمل كل محاولة تشغيل عملية ضرب قياسية (scalar multiplication)، ووظيفة اشتقاق المفتاح المعتمدة على الهاش (HKDF)، وعملية فك التشفير ChaCha20-Poly1305-Open. ولا يمكن التحقق من تجزئة التحكم في الرؤوس (Header MAC) أولاً، لأن مفتاحها يأتي من ملف المفتاح، الذي لا ينتجه إلا نجاح عملية `unwrap`.
يبلغ حجم كل مقطع 98 بايتاً من رؤوس يختارها المهاجم، ويكسب عملية ضرب قياسية واحدة لكل هوية محفوظة، ولا يتم رفض الملف إلا بعد تشغيل جميع هذه العمليات. يصل المتصل إلى هذا السلوك عبر الدوال `decrypt` أو `decrypt_file` أو `decrypt_filehandle` عند فك تشفير ملف لم يقم هو بكتابته.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.