593 matches found
The vulnerability of the PyJWT.decode() function in the implementation of the PyJWT library allows attackers to bypass existing security mechanisms.
The vulnerability of the PyJWT.decode function in the PyJWT library is related to modifications to the expected data. Exploiting this vulnerability allows a remote attacker to bypass existing security mechanisms...
CVE-2026-103001
PyJWT is a Python implementation of JSON Web Token standards. From 2.11.0 through 2.13.0, PyJWT's PyJWT.mergeoptions method can modify a caller-supplied mutable options mapping when verifysignature is false. If an application reuses that same mapping for a later decode or decodecomplete call and...
PYSEC-2026-4141 PyJWT: Unauthenticated RecursionError DoS in pre-verification payload parse (PyJWKClient.get_signing_key_from_jwt / verify_signature=False)
Summary PyJWKClient.getsigningkeyfromjwttoken — the first step of the JWKS verification flow documented in docs/usage.rst — must decode a token's payload before its signature can be checked, via jwt.apijwt.decodecompletetoken, options="verifysignature": False. That call parses the payload with...
PYSEC-2026-4146 PyJWT.decode() reintroduces options-dict mutation, enabling silent claim-verification bypass on dict reuse
Summary PyJWT.decode/decodecomplete mutates a caller-supplied options dict in place whenever verifysignature is falsy, adding verifyexp/verifynbf/verifyiat/verifyaud/verifyiss/verifysub/verifyjti keys directly onto that object. If application code reuses the same options dict across calls a confi...
PyJWT: Unauthenticated RecursionError DoS in pre-verification payload parse (PyJWKClient.get_signing_key_from_jwt / verify_signature=False)
SummaryPyJWKClient.getsigningkeyfromjwttoken — the first step of the JWKSverification flow documented in docs/usage.rst — must decode a token'spayload before its signature can be checked, viajwt.apijwt.decodecompletetoken, options="verifysignature": False.That call parses the payload with...
PyJWT.decode() reintroduces options-dict mutation, enabling silent claim-verification bypass on dict reuse
SummaryPyJWT.decode/decodecomplete mutates a caller-supplied options dict in place whenever verifysignature is falsy, adding verifyexp/verifynbf/verifyiat/verifyaud/verifyiss/verifysub/verifyjti keys directly onto that object. If application code reuses the same options dict across calls a config...
PyJWT: Uncaught RecursionError in jwt.decode() on deeply nested token header
Packagepyjwt PyPI Affected versionstested & verified on: 2.13.0. Every version whose PyJWS.load translates only ValueError is affected DescriptionPyJWS.looad jwt/apijws.py:337 splits the compact token, base64url decodes the header segment and hands it to json.loads before verifysignature runs. Th...
PyJWT: Asymmetric-PEM detection bypass: whitespace/line-ending-mutated public keys skip the HS/asymmetric confusion guard
Prerequisites both conditions must hold; both are deployment properties, not attacker-controlled at request time:- The jwt.decode allow-list mixes an HMAC algorithm with an asymmetric one, e.g. algorithms="ES256", "HS256" the RFC 8725 footgun the guard exists to backstop.- The verification key is...
PyJWT: PyJWK accepts empty HMAC keys, bypassing PyJWT's empty-key validation
SummaryA service that verifies HS256 tokens using an empty oct JWK through PyJWK, including a PyJWK obtained from PyJWKSet, can therefore accept attacker-generated tokens as authenticated.PyJWT 2.13.0 rejects an empty HMAC key when it is supplied through the raw str/bytes key path, but accepts th...
PyJWT: PyJWKClient still amplifies unauthenticated JWKS fetches on unknown kid values (incomplete fix of CVE-2026-48524)
SummaryCVE-2026-48524 GHSA-fhv5-28vv-h8m8, "PyJWKClient unbounded JWKS endpoint requests via attacker-controlled kid values DoS" was fixed in 2.13.0 by stopping fetchdata from clearing the cache on a fetch error. That closed one amplification path but did not add the mitigation the advisory's tit...
PyJWT: Malformed RSA JWK aborts parsing of an entire JWK Set
SummaryA malformed RSA JWK inside a JWK Set aborts parsing of the entire set instead of being skipped, because RSAAlgorithm.fromjwk can raise a plain ValueError that isn't caught by PyJWKSet's per-key error-skipping logic. Affected component / version- Package: PyJWT PyPI, ecosystem pip- Files:...
PyJWT accepts public JWK containers as HMAC secrets
SummaryPyJWT 2.13.0 contains an incomplete defense against algorithm confusion whenan application mixes symmetric and asymmetric algorithms in one verificationpath. A public RSA, EC, or OKP JWK can be accepted as an HMAC secret when itis wrapped in a JWKS object, nested in an array, or represente...
PyJWT: ReDoS vulnerability when calling the `is_pem_format` function.
SummaryThere is a Re-DoS vulnerability in the ispemformat function which results in a intesive CPU usage if an attacker is been able to provide a custom certificate. DetailsThe problem is that the lazy quantifier .+? will always first try to match as little as possible until it finds a ---- END...
PyJWT BOM Bypass
Affected Package- Package: PyJWT pyjwt on PyPI- Repository: https://www.google.com/url?q=https://github.com/jpadilla/pyjwt=gmail=1781794518474000=E- Affected version: 2.13.0- Vulnerability class: Algorithm confusion / patch bypass--- Root CausePyJWT 2.13.0 introduced a guard in...
PyJWT: Public keys in DER form are accepted as HMAC secrets, bypassing the CVE-2022-29217 guard
SummaryHMACAlgorithm.preparekey blocks asymmetric keys from being used as HMAC secrets by searching for text markers only. It looks for -----BEGIN and for an ssh- prefix. The same key in DER form is binary ASN.1 and has neither marker, so it passes the check and is used as an HMAC secret.An...
PyJWT: Non-canonical signature segments enable raw-token revocation bypass
SummaryPyJWT 2.13.0 accepts compact JWS signature segments containing characters thatare not in the Base64URL alphabet. Appending !!!! to a valid signature doesnot change the decoded signature bytes or authenticated claims, but it changesthe serialized token and its SHA-256 hash. An application...
PyJWT: PyJWKClient follows redirects when fetching JWKS
SummaryPyJWT 2.13.0 PyJWKClient followed HTTP redirects while fetching a JWKS,without validating the redirect destination. A configured trusted endpointcould therefore redirect the client to a different host. ImpactWhen an application uses PyJWKClient with caller-supplied request headers andan...
CLSA-2026-1790843991 TuxCare security update for pyjwt (6 CVEs)
TuxCare rebuilt pyjwt to address 6 CVEs. Fixed in 2.8.0.post4+tuxcare...
CLSA-2026-1790839846 TuxCare security update for pyjwt (6 CVEs)
TuxCare rebuilt pyjwt to address 6 CVEs. Fixed in 2.10.1.post5+tuxcare...
Rocky Linux 9 [CIQ] Security Update: fence-agents-aliyun / fence-agents-all / fence-agents-amt-ws / etc Multiple Vulnerabilities (crlsa-2026_13672)
The Rocky Linux 9 host has packages installed that are affected by multiple vulnerabilities as referenced in the CIQ crlsa-202613672 advisory. cryptography: cryptography Subgroup Attack Due to Missing Subgroup Validation for SECT Curves CVE-2026-26007 pyjwt: PyJWT accepts unknown crit header...