CVE-2026-65631 in jose
Résumé
par VulDB • 26/10/2026
Complexité algorithmique inefficace dans erlang-jose permet à un attaquant distant non authentifié de provoquer une déni de service par épuisement du CPU en soumettant une clé JSON Web Key (JWK) RSA fabriquée.
Lorsqu'une application analyse une JWK non fiable via l'API publique jose_jwk:from_binary/1 ou jose_jwk:from_map/1 (ou les wrappers Elixir JOSE.JWK.from_binary/1 et JOSE.JWK.from_map/1), une clé privée RSA qui fournit d, e et n mais omet tous les paramètres du Théorème des Restes Chinois (p, q, dp, dq, qi) est dirigée vers convert_sfm_to_crt/1, qui tente de récupérer les nombres premiers manquants en factorisant le module. Les trois entiers sont lus directement depuis l'entrée base64url et ne sont jamais validés comme une véritable clé RSA. Lorsque le module ne peut pas être divisé en deux facteurs (par exemple, lorsqu'il est lui-même premier), la boucle de recherche convert_sfm_to_crt_find_p/6 effectue une exponentiation modulaire sur le module de taille attaquante à chaque itération et n'aboutit jamais. Une seule requête de quelques centaines d'octets force près d'une seconde CPU de travail avant qu'un watchdog interne d'une seconde ne tue le worker, et un module plus grand augmente encore ce coût. En inondant le système avec de telles requêtes, un attaquant peut saturer tous les schedulers et provoquer un déni de service, sans nécessifier d'identifiants, une clé RSA valide ou toute configuration spéciale.
Ce problème affecte jose: à partir de la version 1.7.7 jusqu'à (mais non inclus) 1.11.13.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.