github_osv/GHSA-vgrx-w6rg-8fqf
Forgeable Public/Private Tokens in jwt-simple
Affected versions of the `jwt-simple` package allow users to select what algorithm the server will use to verify a provided JWT. A malicious actor can use this behaviour to arbitrarily modify the contents of a JWT while still passing verification. For the common use case of the JWT, the end result is a complete authentication bypass with minimal effort.
## Recommendation
Update to version 0.3.1 or later.
Additionally, be sure to always specify an algorithm in calls to `.decode()`.
gitlab/npm/jwt-simple/CVE-2016-10555
Forgeable Public/Private Tokens in jwt-simple
Since "algorithm" isn't enforced in jwt.decode()in jwt-simple 0.3.0 and earlier, a malicious user could choose what algorithm is sent sent to the server. If the server is expecting RSA but is sent HMAC-SHA with RSA's public key, the server will think the public key is actually an HMAC private key. This could be used to forge any data an attacker wants.