
Ce dépôt contient le POC d'une exploitation pour node-jose < 0.11.0
Ce dépôt contient la POC d'un exploit pour node-jose < 0.11.0
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 jetons à l'aide d'une clé intégrée dans le jeton. 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 clé web JSON (JWK) représentant une clé publique peut être intégrée dans l'en-tête d'un JWS. Cette clé publique est ensuite considérée comme fiable pour la vérification. Un attaquant pourrait exploiter cela 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 à l'aide de 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).
⚠️ Pour les étudiants PTL ⚠️
-If you are a student of PentesterLAB, I highly recommend you to try to create the code yourself to exploit this vulnerability!
python 3 -> (À partir de la dernière fusion)
python lib: base64,urllib,rsa,sys
Pour exécuter le script, lancez simplement la commande suivante :
python jwk-node-jose.py "payload" {key-size}
(key-size sans {} )
Ce projet est sous licence MIT - voir le fichier LICENSE.md pour plus de détails