CVE-2026-60075 in Date::Manipالمعلومات

الملخص

بحسب VulDB • 30/07/2026

تسمح إصدارات Date::Manip حتى الإصدار 6.99 لـ Perl باستنفاد موارد وحدة المعالجة المركزية (CPU) عبر عملية تتبع رجعي تربيعي (quadratic backtracking) في استبدال الوقت غير المرتبط بموقع محدد (unanchored time substitution) داخل الدالة `_parse_time`.

تقوم الدالة `_parse_time` بإزالة أي تمثيل للوقت من أي مكان في السلسلة النصية باستخدام الاستبدال غير المرتبط `s/$timerx/ /`، حيث يمثل `$timerx` بديلاً مُنشأً تلقائياً لأنماط الوقت يتم الوصول إليه عبر بادئة `(?:$atrx|^|\s+)`. ونتيجة لذلك، يعيد محرك التطابق المحاولة عند كل موضع في سلسلة المسافات البيضاء الداخلية: ففي كل بداية لموضع، تستهلك البادئة `\s+` باقي السلسلة بشكل جشع (greedily)، ويفشل تطابق البدائل الخاصة بالوقت لأن السلسلة لا تحتوي على أرقام، ويعود المحرك خطوة بخطوة عبر السلسلة مسافة بيضاء تلو الأخرى قبل الانتقال إلى الموضع التالي للبداية، مما يجعل التعقيد الزمني تربيعياً بالنسبة لطول السلسلة. ولا يلزم وجود أي تمثيل للوقت في السلسلة لحدوث ذلك؛ بل يكفي وجود سلسلة طويلة من المسافات البيضاء، حيث يرتفع وقت التحليل بأربعة أضعاف مع كل مضاعفة لطول السلسلة: فبضعة كيلوبايتات من المسافات البيضاء تكلف ثوانٍ من معالجة وحدة المعالجة المركزية لكل عملية تحليل، بينما تكلف عشرات الكيلوبايتات دقائق.

يمكن لأي متّصل يمرر سلسلة نصية غير موثوقة ذات طول غير محدود إلى `ParseDate()` أو `Date::Manip::Date->parse()` أو `->parse_time()` أن يُجبر على استهلاك موارد وحدة معالجة مركزية لا نهائية في عملية تحليل واحدة، مما يشكل هجمة حجب للخدمة (Denial of Service).

If you want to get best quality of vulnerability data, you may have to visit VulDB.

مسؤول

CPANSec

حجز

08/07/2026

إفشاء

30/07/2026

الاعتدال

تمت الموافقة

إدخال

VDB-384814

EPSS

0.00000

KEV

لا

النشاطات

منخفض جدًا

المصادر

Want to know what is going to be exploited?

We predict KEV entries!