CVE-2026-33947 in jqlanginformation

Résumé

par VulDB • 12/06/2026

jq est un processeur JSON en ligne de commande. Dans les versions 1.8.1 et inférieures, les fonctions jv_setpath(), jv_getpath() et delpaths_sorted() dans src/jv_aux.c de jq utilisent une récursivité non bornée dont la profondeur est contrôlée par la longueur du tableau de chemin fourni par l'appelant, sans aucune limite de profondeur imposée. Un attaquant peut fournir un document JSON contenant un tableau plat d'environ 65 000 entiers (~200 Ko) qui, lorsqu'il est utilisé comme argument de chemin par un filtre jq de confiance, épuise la pile d'appels C et provoque le crash du processus avec une erreur de segmentation (SIGSEGV). Cette faille fonctionne car la limite MAX_PARSING_DEPTH existante (10 000) ne protège que l'analyseur JSON, et non les opérations de chemin au moment de l'exécution où des tableaux peuvent être construits programmatiquement à des longueurs arbitraires. L'impact est une déni de service (crash irrécupérable) affectant toute application ou service traitant un contenu JSON non fiable via les fonctions intégrées setpath, getpath ou delpaths de jq. Ce problème a été corrigé dans le commit fb59f1491058d58bdc3e8dd28f1773d1ac690a1f.

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

Responsable

GitHub M

Réserver

24/03/2026

Divulgation

14/04/2026

Modérer

accepté

Entrée

VDB-357233

CPE

prêt

EPSS

0.00234

KEV

non

Activités

très faible

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!