
Questo repository contiene il POC di un exploit per node-jose < 0.11.0
Questa repository contiene il POC di un exploit per node-jose < 0.11.0
Una vulnerabilità nella libreria open source node-jose di Cisco, precedente alla versione 0.11.0, potrebbe consentire a un attaccante remoto non autenticato di firmare nuovamente token utilizzando una chiave incorporata nel token stesso. La vulnerabilità è dovuta al fatto che node-jose segue lo standard JSON Web Signature (JWS) per i JSON Web Token (JWT). Tale standard specifica che una JSON Web Key (JWK) che rappresenta una chiave pubblica può essere incorporata nell'header di un JWS. Questa chiave pubblica viene quindi considerata attendibile per la verifica. Un attaccante potrebbe sfruttare questo aspetto forgiando oggetti JWS validi, rimuovendo la firma originale, aggiungendo una nuova chiave pubblica all'header e firmando l'oggetto con la chiave privata (di proprietà dell'attaccante) associata alla chiave pubblica incorporata in tale header JWS. (https://nvd.nist.gov/vuln/detail/CVE-2018-0114).
⚠️ Per gli studenti di 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 -> (Stating from the last merge)
python lib: base64,urllib,rsa,sys
Per eseguire lo script basta usare il seguente comando:
python jwk-node-jose.py "payload" {key-size}
(key-size senza {} )
Questo progetto è rilasciato sotto la licenza MIT - consulta il file LICENSE.md per i dettagli