Platform
nodejs
Component
jsonwebtoken
Opgelost in
9.0.0
CVE-2022-23539 is een beveiligingsprobleem in de jsonwebtoken bibliotheek. Versies tot en met 8.5.1 kunnen verkeerd geconfigureerd worden, waardoor verouderde, onveilige sleuteltypes gebruikt worden voor handtekeningverificatie. Dit kan leiden tot verificatiefouten en mogelijk misbruik. De kwetsbaarheid treft jsonwebtoken versies <=8.5.1. Een fix is beschikbaar in versie 9.0.0.
CVE-2022-23539 in de jsonwebtoken bibliotheek maakt het mogelijk om signaturen te verifiëren met verouderde, onveilige sleuteltypes als de configuratie onjuist is. Dit betekent dat, bijvoorbeeld, DSA-sleutels gebruikt kunnen worden met het RS256 algoritme, waardoor de integriteit en authenticiteit van JWT-tokens wordt aangetast. Aangetaste versies zijn die kleiner dan of gelijk aan 8.5.1. De CVSS is beoordeeld op 8.1, wat een hoog risico aangeeft. Deze kwetsbaarheid is vooral zorgwekkend voor applicaties die JWT gebruiken voor authenticatie en autorisatie, aangezien een aanvaller mogelijk tokens kan vervalsen en ongeautoriseerde toegang tot beschermde resources kan krijgen. De combinatie van een EC-sleutel met de algoritmen ES256, ES384 en ES512 is niet getroffen.
Een aanvaller kan deze kwetsbaarheid uitbuiten door de jsonwebtoken bibliotheek verkeerd te configureren om het gebruik van DSA-sleuteltypes met het RS256 algoritme toe te staan. Dit zou de aanvaller in staat stellen vervalste JWT-tokens met DSA-sleutels te creëren, die door de applicatie als geldig zouden worden geaccepteerd als deze de kwetsbare bibliotheekversie gebruikt. Het succes van de exploitatie hangt af van de onjuiste configuratie van de bibliotheek en het vermogen van de aanvaller om DSA-sleutels te genereren. De exploitatie kan leiden tot ongeautoriseerde toegang tot beschermde resources, diefstal van vertrouwelijke gegevens of zelfs de overname van de applicatie.
Exploit Status
EPSS
0.07% (22% percentiel)
CVSS-vector
De oplossing om deze kwetsbaarheid te mitigeren is om de jsonwebtoken bibliotheek te updaten naar versie 9.0.0 of hoger. Deze versie corrigeert het probleem door het gebruik van onveilige sleuteltypes met specifieke algoritmen te beperken. Controleer bovendien de configuratie van uw applicatie om ervoor te zorgen dat alleen veilige en compatibele algoritmen en sleuteltypes worden gebruikt. Overweeg om aanvullende validaties in uw code te implementeren om te garanderen dat ontvangen JWT-tokens geldig zijn en niet zijn gemanipuleerd. Voer grondige tests uit na de update om te bevestigen dat de kwetsbaarheid is opgelost en de functionaliteit van de applicatie onbeïnvloed is. Controleer regelmatig de afhankelijkheden van uw project op nieuwe kwetsbaarheden en pas de benodigde beveiligingsupdates toe.
Actualice la biblioteca jsonwebtoken a la versión 9.0.0 o superior para validar las combinaciones de tipo de clave asimétrica y algoritmo. Si necesita usar combinaciones inválidas, configure la opción `allowInvalidAsymmetricKeyTypes` en `true` en las funciones `sign()` y/o `verify()`.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
Een JWT (JSON Web Token) is een open standaard voor het veilig overdragen van informatie als een JSON-object. Het wordt vaak gebruikt voor authenticatie en autorisatie.
De update corrigeert een beveiligingskwetsbaarheid die het aanvallers mogelijk zou maken om JWT-tokens te vervalsen en ongeautoriseerde toegang te krijgen.
Als u niet direct kunt updaten, controleer dan de configuratie van uw applicatie en zorg ervoor dat alleen veilige algoritmen en sleuteltypes worden gebruikt.
Controleer de versie van de jsonwebtoken bibliotheek in uw project. Als deze kleiner of gelijk is aan 8.5.1, bent u kwetsbaar.
Er zijn tools voor beveiligingsanalyse van afhankelijkheden die deze kwetsbaarheid in uw projecten kunnen detecteren.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.