Issue summary: OpenSSL CMS decryption sizes the key-unwrap output buffer based on querying the unwrapped key size, but the AES-WRAP-PAD unwrap primitive can write and cleanse more bytes than that query reports, causing an 8-byte out-of-bounds heap write.
Impact summary: An attacker who supplies a crafted CMS message can trigger a deterministic 8-byte out-of-bounds heap write when the victim decrypts it with CMS_decrypt(), corrupting the heap and typically resulting in a Denial of Service.
CWE: CWE-787: Out-of-bounds Write
Description: The key-wrap OID is potentially attacker-controlled on the wire. CMS unwrapping allows both id-aesNNN-wrap-pad and id-aesNNN-wrap ciphers. An attacker can take a legitimate message and change a single OID byte to select the padded variant while leaving the message otherwise valid. Since the unwrap key is derived from the recipient's private operation (ECDH key agreement or ML-KEM decapsulation), the RFC 5649 integrity check cannot pass, and the decryption fails with integrity failure.
The write is a fixed-size (8-byte), fixed-value (zero) heap overflow immediately past the allocation, requires no special configuration, and is reachable from the public CMS_decrypt() function. The consequence is a heap corruption leading to a Denial of Service. The fix in the CMS code sizes the unwrap output buffer for the worst case so a failed unwrap cannot write past the allocation.
FIPS impact: no
As the CMS code lives outside the FIPS module boundary, no FIPS modules are affected by this CVE.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63072.json",
"cwe_ids": [
"CWE-787"
],
"cna_assigner": "openssl"
}{
"source": [
"AFFECTED_FIELD",
"REFERENCES"
],
"extracted_events": [
{
"introduced": "4.0.0"
},
{
"fixed": "4.0.2"
},
{
"introduced": "3.6.0"
},
{
"fixed": "3.6.4"
},
{
"introduced": "3.5.0"
},
{
"fixed": "3.5.8"
},
{
"introduced": "3.4.0"
},
{
"fixed": "3.4.7"
},
{
"introduced": "3.0.0"
},
{
"fixed": "3.0.22"
},
{
"introduced": "1.1.1"
},
{
"fixed": "1.1.1zi"
}
]
}
[
{
"id": "CVE-2026-63072-055aceb1",
"target": {
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208136681009025530992181983177450609462",
"67492296196001728152399820960887368767",
"88888296945704491112425341945148345197",
"77490842245204716087942480681456086748",
"167791123496514995312111627585598185110",
"58809577220617132767517088028514660857",
"207631790121528015800023699476018421649",
"256562552210483298504173461767217798440"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/87784ad619af36b8807c2044b3940006fccc1e42",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-08cbc8d9",
"target": {
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208136681009025530992181983177450609462",
"67492296196001728152399820960887368767",
"86119493663496307471447645762303651773",
"103971948677565821055656542659370118987",
"34529704455751087727912697608663393448",
"19398002998227456220659388596547811",
"207631790121528015800023699476018421649",
"256562552210483298504173461767217798440"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9530a5fd1aacaeccdced4478ea2340a480613335",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-2eb41dcb",
"target": {
"file": "crypto/cms/cms_kemri.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"190181369754425626514088426314121489343",
"302983512749972924364577970277620573998",
"300247287928641771380098240730580468045",
"26618932074692139943363891828533656326",
"137036785119351147396437308987354428173",
"284265881093827514920610416597873339521",
"207631790121528015800023699476018421649",
"72083095091851580583601949470712484947"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/2a3dac874c8057c1f0186849bf1ede1ae7b6b756",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-37741858",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kemri.c"
},
"deprecated": false,
"digest": {
"function_hash": "316413486422965383581191612484836649227",
"length": 1055.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/2a3dac874c8057c1f0186849bf1ede1ae7b6b756",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-48232a5e",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kemri.c"
},
"deprecated": false,
"digest": {
"function_hash": "316413486422965383581191612484836649227",
"length": 1055.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9530a5fd1aacaeccdced4478ea2340a480613335",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-563f42ed",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"function_hash": "209945243013429542813762455339476825228",
"length": 951.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/a0c8ec557d9cac078f032d76cdf684fe743eb382",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-7dad758a",
"target": {
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208136681009025530992181983177450609462",
"67492296196001728152399820960887368767",
"86119493663496307471447645762303651773",
"103971948677565821055656542659370118987",
"34529704455751087727912697608663393448",
"19398002998227456220659388596547811",
"207631790121528015800023699476018421649",
"256562552210483298504173461767217798440"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/2a3dac874c8057c1f0186849bf1ede1ae7b6b756",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-8b81eab8",
"target": {
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208136681009025530992181983177450609462",
"67492296196001728152399820960887368767",
"88888296945704491112425341945148345197",
"77490842245204716087942480681456086748",
"167791123496514995312111627585598185110",
"58809577220617132767517088028514660857",
"207631790121528015800023699476018421649",
"256562552210483298504173461767217798440"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9ec2f6d2ae2bcad907cf7ee38584855bafe4979a",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-947c82fa",
"target": {
"file": "crypto/cms/cms_kemri.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"190181369754425626514088426314121489343",
"302983512749972924364577970277620573998",
"300247287928641771380098240730580468045",
"26618932074692139943363891828533656326",
"137036785119351147396437308987354428173",
"284265881093827514920610416597873339521",
"207631790121528015800023699476018421649",
"72083095091851580583601949470712484947"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9530a5fd1aacaeccdced4478ea2340a480613335",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-9fd87151",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"function_hash": "209945243013429542813762455339476825228",
"length": 951.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/87784ad619af36b8807c2044b3940006fccc1e42",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-a9f7e2b1",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"function_hash": "209945243013429542813762455339476825228",
"length": 951.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9ec2f6d2ae2bcad907cf7ee38584855bafe4979a",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-c1235256",
"target": {
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"208136681009025530992181983177450609462",
"67492296196001728152399820960887368767",
"88888296945704491112425341945148345197",
"77490842245204716087942480681456086748",
"167791123496514995312111627585598185110",
"58809577220617132767517088028514660857",
"207631790121528015800023699476018421649",
"256562552210483298504173461767217798440"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/a0c8ec557d9cac078f032d76cdf684fe743eb382",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-c377fa22",
"target": {
"file": "include/openssl/opensslv.h"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"28170854778703993674264004058177114599",
"73132526844288570625317440636111911761",
"177405411499435185068645597737938634778",
"224809958623850711330610094965797758930",
"295554444428855106393106961197201359586"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/e04bd3433fd84e1861bf258ea37928d9845e6a86",
"signature_type": "Line"
},
{
"id": "CVE-2026-63072-dd096520",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"function_hash": "115190944145237027672058340203765188425",
"length": 980.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/2a3dac874c8057c1f0186849bf1ede1ae7b6b756",
"signature_type": "Function"
},
{
"id": "CVE-2026-63072-fd4e40aa",
"target": {
"function": "cms_kek_cipher",
"file": "crypto/cms/cms_kari.c"
},
"deprecated": false,
"digest": {
"function_hash": "115190944145237027672058340203765188425",
"length": 980.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/9530a5fd1aacaeccdced4478ea2340a480613335",
"signature_type": "Function"
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-63072.json"
"2026-08-30T08:17:27Z"