Issue summary: OpenSSL CMP response validation passed an unexpected response
sender distinguished name directly as the format string to ERR_raise_data().
Impact summary: A malicious or intercepted CMP endpoint can crash a CMP client that enforces an expected sender or uses a pinned server certificate whose subject becomes the default expected sender.
CWE: CWE-134 (Use of Externally-Controlled Format String)
Description: When validating a received CMP message, osslcmpmsgcheckupdate() converts the peer-supplied sender distinguished name with X509NAMEoneline() and passes it directly as the format argument to ERRraisedata(). Percent characters survive the conversion, so a sender DN such as "CN=%s%n" reaches BIO_vsnprintf() as an attacker-controlled format string with no matching variadic arguments. This path is only reached when the caller configures an expected sender or pins a server certificate, which is the normal configuration for a CMP client validating server responses.
Since the attacker controls the format string but none of the variadic arguments, such specifiers as %s and %n dereference or write through unrelated stack contents and crash the client. The reliable consequence is a denial of service, when the response comes from a malicious or intercepted CMP endpoint. There is no controlled memory write, arbitrary-address read, or reliable path to remote code execution.
FIPS impact: no
No FIPS modules are affected by this issue, as the CMP protocol implementation is outside the OpenSSL FIPS module boundary.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/63xxx/CVE-2026-63073.json",
"cwe_ids": [
"CWE-134"
],
"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"
}
]
}
[
{
"id": "CVE-2026-63073-19737d85",
"target": {
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"39484352194002273856963273621476505742",
"264475229283889715193643162963376054363",
"233976805636226746805932846648301132473",
"33052479219208484453476762596940682932"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/0cc20b322639919aa423e90799d9a57c3b4b76ca",
"signature_type": "Line"
},
{
"id": "CVE-2026-63073-2bd703f3",
"target": {
"function": "ossl_cmp_msg_check_update",
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"function_hash": "150978737848738791715086307816514515085",
"length": 3349.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/0cc20b322639919aa423e90799d9a57c3b4b76ca",
"signature_type": "Function"
},
{
"id": "CVE-2026-63073-4a8b1127",
"target": {
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"39484352194002273856963273621476505742",
"264475229283889715193643162963376054363",
"233976805636226746805932846648301132473",
"33052479219208484453476762596940682932"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/a7e5a6eea8fd3ccca6b6fbba031a5fbf8a3d93b4",
"signature_type": "Line"
},
{
"id": "CVE-2026-63073-4dae8774",
"target": {
"function": "ossl_cmp_msg_check_update",
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"function_hash": "150978737848738791715086307816514515085",
"length": 3349.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/a7e5a6eea8fd3ccca6b6fbba031a5fbf8a3d93b4",
"signature_type": "Function"
},
{
"id": "CVE-2026-63073-a47d5185",
"target": {
"function": "ossl_cmp_msg_check_update",
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"function_hash": "150978737848738791715086307816514515085",
"length": 3349.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/6a0acc072b4d37a7cac1252a29c1ce1f00c5ec29",
"signature_type": "Function"
},
{
"id": "CVE-2026-63073-a62d3010",
"target": {
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"39484352194002273856963273621476505742",
"264475229283889715193643162963376054363",
"233976805636226746805932846648301132473",
"33052479219208484453476762596940682932"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/7eb2e3ec9d1d4f35c8022fccd4b03398b3f33e21",
"signature_type": "Line"
},
{
"id": "CVE-2026-63073-a7165762",
"target": {
"function": "ossl_cmp_msg_check_update",
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"function_hash": "284563502968061031432008053906106851272",
"length": 3458.0
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/7eb2e3ec9d1d4f35c8022fccd4b03398b3f33e21",
"signature_type": "Function"
},
{
"id": "CVE-2026-63073-bbbdc661",
"target": {
"file": "crypto/cmp/cmp_vfy.c"
},
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"39484352194002273856963273621476505742",
"264475229283889715193643162963376054363",
"233976805636226746805932846648301132473",
"33052479219208484453476762596940682932"
]
},
"signature_version": "v1",
"source": "https://github.com/openssl/openssl/commit/6a0acc072b4d37a7cac1252a29c1ce1f00c5ec29",
"signature_type": "Line"
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-63073.json"
"2026-08-30T08:13:42Z"