CVE-2025-30144
published 2025-03-19CVE-2025-30144: fast-jwt provides fast JSON Web Token (JWT) implementation. Prior to 5.0.6, the fast-jwt library does not properly validate the iss claim based on the RFC…
PriorityP339medium6.5CVSS 3.1
AVNACHPRNUINSUCLIHAN
EPSS
0.59%
48.0th percentile
fast-jwt provides fast JSON Web Token (JWT) implementation. Prior to 5.0.6, the fast-jwt library does not properly validate the iss claim based on the RFC 7519. The iss (issuer) claim validation within the fast-jwt library permits an array of strings as a valid iss value. This design flaw enables a potential attack where a malicious actor crafts a JWT with an iss claim structured as ['https://attacker-domain/', 'https://valid-iss']. Due to the permissive validation, the JWT will be deemed valid. Furthermore, if the application relies on external libraries like get-jwks that do not independently validate the iss claim, the attacker can leverage this vulnerability to forge a JWT that will be accepted by the victim application. Essentially, the attacker can insert their own domain into the iss array, alongside the legitimate issuer, and bypass the intended security checks. This issue is fixed in 5.0.6.
Affected
3 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| nearform | fast-jwt | < 5.0.6 | 5.0.6 |
| nearform | fast-jwt | >= 0 < 6.3.0 | 6.3.0 |
| nearform | fast-jwt | >= 0 < 5.0.6 | 5.0.6 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
fast-jwt : Silent claim-validator bypass when JWT payload is a JSON array
ghsa·2026-10-08
CVE-2026-107723 [HIGH] CWE-1287 fast-jwt : Silent claim-validator bypass when JWT payload is a JSON array
fast-jwt : Silent claim-validator bypass when JWT payload is a JSON array
### Summary
`fast-jwt`'s `createVerifier` silently skips **all** configured claim validators (`exp`, `nbf`, `iss`, `aud`, `sub`, `jti`, `nonce`) when a validly-signed JWT carries a JSON array as its payload instead of an object. The verifier reports success while having enforced only the signature. This breaks the library's documented `allowedIss` / `allowedAud` / `allowedSub` / expiry / replay-protection guarantees and violates RFC 7519 §7.2 step 10, which requires the JWT Claims Set to be a JSON object.
### Details
The decoder validates the **header** is a non-array object but the **payload** check is missing the `Array.isArray` guard:
```javascript
// src/decoder.js:49 — header check (correct)
if (!header || ty
GHSA
Fast-JWT Improperly Validates iss Claims
ghsa·2025-03-19
CVE-2025-30144 [MEDIUM] CWE-290 Fast-JWT Improperly Validates iss Claims
Fast-JWT Improperly Validates iss Claims
### Summary
The `fast-jwt` library does not properly validate the `iss` claim based on the RFC https://datatracker.ietf.org/doc/html/rfc7519#page-9.
#### Details
The `iss` (issuer) claim validation within the fast-jwt library permits an array of strings as a valid `iss` value. This design flaw enables a potential attack where a malicious actor crafts a JWT with an `iss` claim structured as `['https://attacker-domain/', 'https://valid-iss']`. Due to the permissive validation, the JWT will be deemed valid.
Furthermore, if the application relies on external libraries like `get-jwks` that do not independently validate the `iss` claim, the attacker can leverage this vulnerability to forge a JWT that will be accepted by the victim application. Essentia
OSV
Fast-JWT Improperly Validates iss Claims
osv·2025-03-19
CVE-2025-30144 [MEDIUM] Fast-JWT Improperly Validates iss Claims
Fast-JWT Improperly Validates iss Claims
### Summary
The `fast-jwt` library does not properly validate the `iss` claim based on the RFC https://datatracker.ietf.org/doc/html/rfc7519#page-9.
#### Details
The `iss` (issuer) claim validation within the fast-jwt library permits an array of strings as a valid `iss` value. This design flaw enables a potential attack where a malicious actor crafts a JWT with an `iss` claim structured as `['https://attacker-domain/', 'https://valid-iss']`. Due to the permissive validation, the JWT will be deemed valid.
Furthermore, if the application relies on external libraries like `get-jwks` that do not independently validate the `iss` claim, the attacker can leverage this vulnerability to forge a JWT that will be accepted by the victim application. Essentia
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2025-03-19
Published