
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-27932 is a resource exhaustion vulnerability in joserfc, a Python library implementing JSON Object Signing and Encryption (JOSE) standards, that allows unauthenticated attackers to cause a Denial of Service (DoS) via CPU exhaustion. The flaw affects all joserfc versions up to and including 1.6.2, with version 1.6.3 containing the fix. It was published by the GitHub Advisory Database on February 28, 2026, and assigned CVE-2026-27932 on March 3, 2026. The vulnerability carries a CVSS v3.1 base score of 7.5 (High) (Github Advisory, joserfc Advisory).
The root cause is CWE-770 (Allocation of Resources Without Limits or Throttling): the PBES2HSAlgKeyEncryption.decrypt_cek() function in src/joserfc/_rfc7518/jwe_algs.py reads the p2c (PBES2 Count) parameter directly from the attacker-controlled JWE protected header and passes it without validation to PBKDF2HMAC as the iterations argument. An attacker can set p2c to an arbitrarily large integer (e.g., 2^31 - 1), causing the server to perform billions of PBKDF2 iterations per token. Critically, the DoS is triggered during the decryption phase — before any JWT claim validation (e.g., exp, iss, aud) or signature verification — making JWT policy-level defenses ineffective if PBES2 algorithms are permitted. A public proof-of-concept is included in the advisory, demonstrating that 10 million iterations causes approximately 5 seconds of thread blocking per token (joserfc Advisory, Github Advisory).
Successful exploitation results in complete availability loss for the affected service, with no impact on confidentiality or integrity. An unauthenticated attacker can send a small number of crafted JWE/JWT tokens to exhaust all server CPU resources, causing each worker thread or process to block for a duration proportional to the p2c value — potentially minutes or hours per token. Sending multiple such tokens in rapid succession can render the service entirely unavailable to legitimate users. All high-level JWE and JWT decryption interfaces in joserfc are affected when PBES2 algorithms (e.g., PBES2-HS256+A128KW) are included in the application's algorithm policy (joserfc Advisory).
A public proof-of-concept exploit is available in the GitHub Security Advisory and has also been indexed on Sploitus (PACKETSTORM:216669). The attack requires no authentication, no user interaction, and is network-accessible with low complexity, making it trivially exploitable at scale. There is no confirmed evidence of in-the-wild exploitation at this time. The EPSS score is approximately 0.033–0.048%, indicating a currently low but non-negligible probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog (Github Advisory, joserfc Advisory).
PBES2-HS256+A128KW) enabled in its decryption policy.p2c value in the protected header. The header {"alg": "PBES2-HS256+A128KW", "enc": "A128CBC-HS256", "p2s": "<base64url_salt>", "p2c": 2147483647} is Base64url-encoded and used as the token header. The remaining token segments (encrypted key, IV, ciphertext, tag) can be dummy values since the DoS occurs before decryption succeeds.p2c value and passes it directly to PBKDF2HMAC, blocking the worker thread for the duration of the computation. With p2c = 10,000,000, this takes approximately 5 seconds per token./auth, /token, /api/*) containing JWE compact tokens with unusually large p2c values in the Base64url-decoded protected header; high request rate from a single or small set of source IPs.Upgrade joserfc to version 1.6.3 or later, which introduces a validate_p2c() function that enforces a maximum p2c value of 300,000 and raises a ValueError for out-of-bounds values (patch commit). If immediate patching is not possible, disable PBES2 algorithms entirely in the application's JWE/JWT algorithm allowlist if password-based encryption is not required. Additionally, implement rate limiting on token decryption endpoints and consider adding application-level input validation to reject tokens with p2c values exceeding a safe threshold (e.g., 300,000) before passing them to joserfc. OpenSUSE has also released a security update for the python-joserfc package (Github Advisory, joserfc Advisory).
The vulnerability was reported by researchers Jaynornj and Pr00fOf3xpl0it and patched promptly by the joserfc maintainer (lepture) with commit 696a961. The advisory was picked up by automated CVE tracking accounts on Bluesky and Nitter shortly after publication. OpenSUSE issued a security announcement for its python-joserfc package, and Tenable released Nessus detection plugins (IDs 300928 and 301412). No significant broader media coverage or notable researcher commentary beyond the advisory itself has been identified (joserfc Advisory, Github Advisory).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."