
Exploit pour Node-jose < 0.11.0 écrit en Ruby
ruby ./exploit.rb Une vulnérabilité dans la bibliothèque open source Cisco node-jose avant la version 0.11.0 pourrait permettre à un attaquant distant non authentifié de re-signer des tokens en utilisant une clé intégrée dans le token. La vulnérabilité est due au fait que node-jose suit la norme JSON Web Signature (JWS) pour les JSON Web Tokens (JWTs). Cette norme spécifie qu'une JSON Web Key (JWK) représentant une clé publique peut être intégrée dans l'en-tête d'un JWS. Cette clé publique est ensuite utilisée pour la vérification. Un attaquant pourrait exploiter cette faiblesse en forgeant des objets JWS valides en supprimant la signature originale, en ajoutant une nouvelle clé publique dans l'en-tête, puis en signant l'objet en utilisant la clé privée (appartenant à l'attaquant) associée à la clé publique intégrée dans cet en-tête JWS. (https://nvd.nist.gov/vuln/detail/CVE-2018-0114).