CVE-2026-53939
Last modified
CVE-2026-53939 is a critical-severity vulnerability rated 9.1/10 on the CVSS scale. OpenIDC/cjose is a C library implementing the Javascript Object Signing and Encryption (JOSE). In versions 0.6.1 through 0.6.2.5, when cjose encrypts a JWE using an AES-CBC-HMAC content-encryption algorithm (`A128CBC-HS256`, `A192CBC-HS384`, or `A256CBC-HS512`) together with any key-management algorithm that generates a fresh content-encryption key (CEK), the CEK is all zero bytes instead of being randomly generated. EPSS estimates a 0.20% chance of exploitation in the next 30 days.
Description
OpenIDC/cjose is a C library implementing the Javascript Object Signing and Encryption (JOSE). In versions 0.6.1 through 0.6.2.5, when cjose encrypts a JWE using an AES-CBC-HMAC content-encryption algorithm (`A128CBC-HS256`, `A192CBC-HS384`, or `A256CBC-HS512`) together with any key-management algorithm that generates a fresh content-encryption key (CEK), the CEK is all zero bytes instead of being randomly generated. The resulting JWE is therefore encrypted and authenticated under a fixed, publicly known key, so anyone who obtains the JWE can recover the plaintext and forge or modify the content. This is fixed in version 0.6.2.6 by `_cjose_jwe_set_cek_aes_cbc()` generating the CEK from `RAND_bytes`. A regression test asserts that the `encrypted_key` differs across two encryptions for each AES-CBC-HMAC variant. Until upgrading, for data encrypted with cjose, three options are available. Use an AES-GCM `enc` (`A128GCM` / `A192GCM` / `A256GCM`) instead of an AES-CBC-HMAC `enc`, use `alg=dir` with a caller-supplied CEK, or avoid using cjose for JWE encryption with the affected algorithm pair. These are mitigations for new ciphertexts only; data already encrypted under the zero key remains compromised and should be re-encrypted (and any secrets it contained rotated).
Metrics
Weakness Enumeration
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| OpenIDC | cjose | >= 0.6.1, < 0.6.2.6 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-53939?
How severe is CVE-2026-53939?
How do I fix CVE-2026-53939?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-53931NocoDB is software for building databases as spreadsheets. P…6.9
- CVE-2026-53932laravel-backup-restore restores database backups made with s…8
- CVE-2026-53933Maravel, a PHP framework oriented towards dependency injecti…6.9
- CVE-2026-53935Cilium is a networking, observability, and security solution…6.9
- CVE-2026-53937MCP Kotlin SDK is the Kotlin Multiplatform software developm…6.2
- CVE-2026-53938OpenIDC/cjose is a C library implementing the Javascript Obj…8.2
- CVE-2026-5394An authenticated administrative user who can import or save …7
- CVE-2026-53940Conda is a system-level binary package and environment manag…8.8
- CVE-2026-53941Inspektor Gadget is a set of tools and framework for data co…6.9
- CVE-2026-53943Ghost is a Node.js content management system. From until 6.…9.6
- CVE-2026-53944Ghost is a Node.js content management system. From 6.0.9 unt…5.8
- CVE-2026-53945Ghost is a Node.js content management system. From 6.0.9 unt…4
Are you affected by CVE-2026-53939?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
