CVE-2026-33947 in jqlangالمعلومات

الملخص

بحسب VulDB • 24/06/2026

jq هو معالج JSON سطر الأوامر. في الإصدارات 1.8.1 وما دونها، تستخدم الدوال `jv_setpath()` و`jv_getpath()` و`delpaths_sorted()` الموجودة في ملف `src/jv_aux.c` الخاص بـ jq استدعاءً ذاتيًا غير محدود العمق (unbounded recursion)، حيث يتحكم طول مصفوفة المسار المقدمة من المتصل في هذا العمق، دون فرض أي حد أقصى للعمق. يمكن لمهاجم تزويد مستند JSON يحتوي على مصفافة مسطحة (~65,000 عدد صحيح) بحجم ~200 كيلوبايت، والتي عند استخدامها كحجة مسار بواسطة فلتر jq موثوق به، تستنفذ مكدس استدعاءات C (C call stack) وتسبب تعطل العملية مع حدوث خطأ انقسام segfault (SIGSEGV). يعمل هذا الاختراق لأن الحد الحالي `MAX_PARSING_DEPTH` (10,000) يحمي فقط مُحلل JSON، وليس عمليات المسار في وقت التشغيل حيث يمكن بناء المصفوفات برمجيًا بأطوال تعسفية. يتمثل التأثير في حجب الخدمة (تعطل غير قابل للاسترداد) الذي يؤثر على أي تطبيق أو خدمة تقوم بمعالجة مدخلات JSON غير موثوقة من خلال الدوال الداخلية `setpath` و`getpath` أو `delpaths` الخاصة بـ jq. تم معالجة هذه المشكلة في الالتزام commit fb59f1491058d58bdc3e8dd28f1773d1ac690a1f.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

مسؤول

GitHub M

حجز

24/03/2026

إفشاء

14/04/2026

الاعتدال

تمت الموافقة

إدخال

VDB-357233

EPSS

0.00234

KEV

لا

النشاطات

منخفض جدًا

المصادر

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!