Une entrée PEM malformée composée de lignes répétées de début de certificat peut provoquer une consommation quadratique du processeur lors de l’appel à `is_pem_format`, entraînant un déni de service si un attaquant peut fournir les données de certificat traitées. Les versions jusqu’à 2.13.0 sont concernées et PyJWT 2.14.0 corrige le problème en remplaçant l’expression régulière vulnérable par une analyse bornée.
Source : GHSA-jwrc-g2q2-pq5p — PyJWT: ReDoS vulnerability when calling the is_pem_format function
Analyse technique
L’expression régulière utilisée pour reconnaître le format PEM effectue des rescans coûteux sur une entrée malformée sans marqueur de fin. Le correctif est indiqué comme inclus dans PyJWT 2.14.0.
Impact, versions et correctif
Action recommandée
Mettre à niveau PyJWT vers la version 2.14.0 ou ultérieure; éviter de transmettre des certificats ou clés non fiables à la fonction concernée avant la mise à niveau.
Sources
Priorisation DFS : P4 · 1 source(s).