CVE-2026-53938 OpenIDC/cjose has a heap buffer overflow in AES Key Wrap decryption (A128KW/A192KW/A256KW)

High 8.2 Published Updated

A remote attacker can trigger a heap buffer overflow in the cjose library via crafted JWE messages, causing crashes or potential code execution.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-53938?

CVE-2026-53938 is a high-severity memory corruption vulnerability in OpenIDC cjose, published on 8 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

OpenIDC/cjose is a C library implementing the Javascript Object Signing and Encryption (JOSE). Prior to version 0.6.2.5, cjose's JWE decryption path for the AES Key Wrap key-management algorithms (`alg` = `A128KW`, `A192KW`, `A256KW`) does not validate the length of the attacker-supplied `encrypted_key` (JWE Encrypted Key) before unwrapping it into a fixed-size, heap-allocated Content Encryption Key (CEK) buffer. A remote, unauthenticated attacker who can submit a crafted JWE to an application that decrypts it with an AES-KW symmetric key can trigger an out-of-bounds heap write, corrupting the heap. This leads at minimum to a crash (denial of service) and, depending on the heap layout and allocator, may be leverageable for further memory-corruption impact. `cjose_jwe_import()` / `cjose_jwe_decrypt()` are pre-authentication entry points: they parse and process fully attacker-controlled input. Upgrade to cjose 0.6.2.5 to receive a patch. If upgrading is not immediately possible, reject the AES Key Wrap algorithms (`A128KW`/`A192KW`/`A256KW`) for untrusted JWEs at the application layer.

Weakness: CWE-787, CWE-122

Which versions are affected by CVE-2026-53938?

Linux distribution packages (40)
cjose AlmaLinux:10All versions0.6.2.2-7.el10_2.1
cjose-devel AlmaLinux:10All versions0.6.2.2-7.el10_2.1
cjose AlmaLinux:9All versions0.6.1-17.el9_8.1
cjose-devel AlmaLinux:9All versions0.6.1-17.el9_8.1
cjose Red Hat:enterprise_linux:10.2All versions0:0.6.2.2-7.el10_2.1
cjose-debuginfo Red Hat:enterprise_linux:10.2All versions0:0.6.2.2-7.el10_2.1
cjose-debugsource Red Hat:enterprise_linux:10.2All versions0:0.6.2.2-7.el10_2.1
cjose-devel Red Hat:enterprise_linux:10.2All versions0:0.6.2.2-7.el10_2.1
cjose Red Hat:enterprise_linux_eus:10.0All versions0:0.6.2.2-7.el10_0.1
cjose-debuginfo Red Hat:enterprise_linux_eus:10.0All versions0:0.6.2.2-7.el10_0.1
cjose-debugsource Red Hat:enterprise_linux_eus:10.0All versions0:0.6.2.2-7.el10_0.1
cjose-devel Red Hat:enterprise_linux_eus:10.0All versions0:0.6.2.2-7.el10_0.1
cjose Red Hat:rhel_aus:8.4::appstreamAll versions0:0.6.1-3.module+el8.4.0+24972+63eee48e.1
cjose-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:0.6.1-3.module+el8.4.0+24972+63eee48e.1
cjose-debugsource Red Hat:rhel_aus:8.4::appstreamAll versions0:0.6.1-3.module+el8.4.0+24972+63eee48e.1
cjose-devel Red Hat:rhel_aus:8.4::appstreamAll versions0:0.6.1-3.module+el8.4.0+24972+63eee48e.1
mod_auth_openidc Red Hat:rhel_aus:8.4::appstreamAll versions0:2.4.9.4-1.module+el8.4.0+24868+593d10ef.3
mod_auth_openidc-debuginfo Red Hat:rhel_aus:8.4::appstreamAll versions0:2.4.9.4-1.module+el8.4.0+24868+593d10ef.3
mod_auth_openidc-debugsource Red Hat:rhel_aus:8.4::appstreamAll versions0:2.4.9.4-1.module+el8.4.0+24868+593d10ef.3
cjose Red Hat:rhel_aus:8.6::appstreamAll versions0:0.6.1-3.module+el8.6.0+24971+334c209b.1
cjose-debuginfo Red Hat:rhel_aus:8.6::appstreamAll versions0:0.6.1-3.module+el8.6.0+24971+334c209b.1
cjose-debugsource Red Hat:rhel_aus:8.6::appstreamAll versions0:0.6.1-3.module+el8.6.0+24971+334c209b.1
cjose-devel Red Hat:rhel_aus:8.6::appstreamAll versions0:0.6.1-3.module+el8.6.0+24971+334c209b.1
mod_auth_openidc Red Hat:rhel_aus:8.6::appstreamAll versions0:2.4.9.4-1.module+el8.6.0+24867+df0294a5.3
mod_auth_openidc-debuginfo Red Hat:rhel_aus:8.6::appstreamAll versions0:2.4.9.4-1.module+el8.6.0+24867+df0294a5.3
mod_auth_openidc-debugsource Red Hat:rhel_aus:8.6::appstreamAll versions0:2.4.9.4-1.module+el8.6.0+24867+df0294a5.3
cjose Red Hat:rhel_e4s:8.8::appstreamAll versions0:0.6.1-3.module+el8.8.0+24970+620d53ef.1
cjose-debuginfo Red Hat:rhel_e4s:8.8::appstreamAll versions0:0.6.1-3.module+el8.8.0+24970+620d53ef.1
cjose-debugsource Red Hat:rhel_e4s:8.8::appstreamAll versions0:0.6.1-3.module+el8.8.0+24970+620d53ef.1
cjose-devel Red Hat:rhel_e4s:8.8::appstreamAll versions0:0.6.1-3.module+el8.8.0+24970+620d53ef.1
mod_auth_openidc Red Hat:rhel_e4s:8.8::appstreamAll versions0:2.4.9.4-1.module+el8.8.0+24885+7d8e9f68.3
mod_auth_openidc-debuginfo Red Hat:rhel_e4s:8.8::appstreamAll versions0:2.4.9.4-1.module+el8.8.0+24885+7d8e9f68.3
mod_auth_openidc-debugsource Red Hat:rhel_e4s:8.8::appstreamAll versions0:2.4.9.4-1.module+el8.8.0+24885+7d8e9f68.3
cjose Red Hat:rhel_e4s:9.2::appstreamAll versions0:0.6.1-13.el9_2.1
cjose-debuginfo Red Hat:rhel_e4s:9.2::appstreamAll versions0:0.6.1-13.el9_2.1
cjose-debugsource Red Hat:rhel_e4s:9.2::appstreamAll versions0:0.6.1-13.el9_2.1
cjose Red Hat:rhel_e4s:9.4::appstreamAll versions0:0.6.1-16.el9_4.1
cjose-debuginfo Red Hat:rhel_e4s:9.4::appstreamAll versions0:0.6.1-16.el9_4.1
cjose-debugsource Red Hat:rhel_e4s:9.4::appstreamAll versions0:0.6.1-16.el9_4.1
cjose Red Hat:rhel_eus:9.6::appstreamAll versions0:0.6.1-17.el9_6.1

How do I fix CVE-2026-53938?

Upgrade to a fixed version.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-53938 being exploited?

There is no known exploitation of CVE-2026-53938 in the wild and no public exploit code.

Sources

Also known as ALSA-2026:79122, ALSA-2026:90812, AZL-101093, DEBIAN-CVE-2026-53938, GHSA-75r7-f5cv-g3wj, RHSA-2026:73017 and 9 more.

Is CVE-2026-53938 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free