joserfc PBES2 p2c Unbounded Iteration Count enables Denial of Service (DoS)
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-770.
Summary
joserfc is a Python library that provides an implementation of several JSON Object Signing and Encryption (JOSE) standards. In 1.6.2 and earlier, a resource exhaustion vulnerability in joserfc allows an unauthenticated attacker to cause a Denial of Service (DoS) via CPU exhaustion. When the library decrypts a JSON Web Encryption (JWE) token using Password-Based Encryption (PBES2) algorithms, it reads the p2c (PBES2 Count) parameter directly from the token's protected header. This parameter defines the number of iterations for the PBKDF2 key derivation function. Because joserfc does not validate or bound this value, an attacker can specify an extremely large iteration count (e.g., 2^31 - 1), forcing the server to expend massive CPU resources processing a single token. This vulnerability exists at the JWA layer and impacts all high-level JWE and JWT decryption interfaces if PBES2 algorithms are allowed by the application's policy.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| authlib | joserfc | up to 1.6.2 | — | No fix listed | CNA |
| — | joserfc (PyPI) | before 1.6.3 | 1.6.3 | Patch available | GHSA-w5r5-m38g-f9f9 |
- joserfc Vendorauthlib Affected up to 1.6.2 Fixed in — No fix listed CNA
- joserfc (PyPI) Vendor— Affected before 1.6.3 Fixed in 1.6.3 Patch available GHSA-w5r5-m38g-f9f9
Remediation
- Fix · GHSA-w5r5-m38g-f9f9 joserfc (PyPI) Fixed in 1.6.3 Advisory →
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2026-27932
- 2026-10-03 Alias added: GHSA-w5r5-m38g-f9f9
References
More authlib vulnerabilities
- TI-2026-65772 Insufficient verification of data authenticity in Authlib CVSS 3.1CRITICAL 9.8
- TI-2026-74876 Signature verification bypass in joserfc JWS deserialization CVSS 3.1CRITICAL 9.1
- TI-2026-22305 Authlib JWS JWK Header Injection: Signature Verification Bypass CVSS 3.1CRITICAL 9.1
- TI-2025-40202 Resource allocation without limits in authlib joserfc CVSS 4.0CRITICAL 9.2
- TI-2026-36756 joserfc: HS256/HS384/HS512 verify accepts empty/nil HMAC key (cross-language sibling of CVE-2026-45363) CVSS 4.0HIGH 8.7
- TI-2026-79518 Authlib fix bypass lets attackers forge HS256 tokens with PEM keys CVSS 3.1CRITICAL 9.1
Sources
- CVE-2026-27932 · CVE Program
- CVE-2026-27932 · NVD
- FIRST EPSS
- GHSA-w5r5-m38g-f9f9 · GitHub Advisory Database · CC BY 4.0
- CVE-2026-27932 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences