{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "OpenSSL",
          "vendor": "OpenSSL",
          "versions": [
            {
              "lessThan": "4.0.2",
              "status": "affected",
              "version": "4.0.0",
              "versionType": "semver"
            },
            {
              "lessThan": "3.6.4",
              "status": "affected",
              "version": "3.6.0",
              "versionType": "semver"
            },
            {
              "lessThan": "3.5.8",
              "status": "affected",
              "version": "3.5.0",
              "versionType": "semver"
            },
            {
              "lessThan": "3.4.7",
              "status": "affected",
              "version": "3.4.0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "reporter",
          "value": "Filipe Casal (Trail of Bits)"
        },
        {
          "lang": "en",
          "type": "reporter",
          "value": "Brandon Luo"
        },
        {
          "lang": "en",
          "type": "reporter",
          "value": "TrendAI Zero Day Initiative"
        },
        {
          "lang": "en",
          "type": "remediation developer",
          "value": "Filipe Casal (Trail of Bits)"
        }
      ],
      "datePublic": "2026-08-25T13:36:16+02:00",
      "descriptions": [
        {
          "lang": "en",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "Issue summary: OpenSSL CMP response validation passed an unexpected response<br>sender distinguished name directly as the format string to `ERR_raise_data()`.<br><br>Impact summary: A malicious or intercepted CMP endpoint can crash a CMP client<br>that enforces an expected sender or uses a pinned server certificate whose<br>subject becomes the default expected sender.<br><br>CWE: CWE-134 (Use of Externally-Controlled Format String)<br><br>Description: When validating a received CMP message, ossl_cmp_msg_check_update()<br>converts the peer-supplied sender distinguished name with X509_NAME_oneline()<br>and passes it directly as the format argument to ERR_raise_data(). Percent<br>characters survive the conversion, so a sender DN such as \"CN=%s%n\" reaches<br>BIO_vsnprintf() as an attacker-controlled format string with no matching variadic<br>arguments. This path is only reached when the caller configures an expected<br>sender or pins a server certificate, which is the normal configuration for a<br>CMP client validating server responses.<br><br>Since the attacker controls the format string but none of the variadic<br>arguments, such specifiers as %s and %n dereference or write through unrelated<br>stack contents and crash the client. The reliable consequence is a denial of<br>service, when the response comes from a malicious or intercepted CMP endpoint.<br>There is no controlled memory write, arbitrary-address read, or reliable path<br>to remote code execution.<br><br>FIPS impact: no<br><br>No FIPS modules are affected by this issue, as the CMP protocol<br>implementation is outside the OpenSSL FIPS module boundary."
            }
          ],
          "value": "Issue summary: OpenSSL CMP response validation passed an unexpected response\nsender distinguished name directly as the format string to `ERR_raise_data()`.\n\nImpact summary: A malicious or intercepted CMP endpoint can crash a CMP client\nthat enforces an expected sender or uses a pinned server certificate whose\nsubject becomes the default expected sender.\n\nCWE: CWE-134 (Use of Externally-Controlled Format String)\n\nDescription: When validating a received CMP message, ossl_cmp_msg_check_update()\nconverts the peer-supplied sender distinguished name with X509_NAME_oneline()\nand passes it directly as the format argument to ERR_raise_data(). Percent\ncharacters survive the conversion, so a sender DN such as \"CN=%s%n\" reaches\nBIO_vsnprintf() as an attacker-controlled format string with no matching variadic\narguments. This path is only reached when the caller configures an expected\nsender or pins a server certificate, which is the normal configuration for a\nCMP client validating server responses.\n\nSince the attacker controls the format string but none of the variadic\narguments, such specifiers as %s and %n dereference or write through unrelated\nstack contents and crash the client. The reliable consequence is a denial of\nservice, when the response comes from a malicious or intercepted CMP endpoint.\nThere is no controlled memory write, arbitrary-address read, or reliable path\nto remote code execution.\n\nFIPS impact: no\n\nNo FIPS modules are affected by this issue, as the CMP protocol\nimplementation is outside the OpenSSL FIPS module boundary."
        }
      ],
      "metrics": [
        {
          "format": "other",
          "other": {
            "content": {
              "text": "Low"
            },
            "type": "https://openssl-library.org/policies/general/security-policy/"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-134",
              "description": "Use of Externally-Controlled Format String",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "orgId": "00000000-0000-4000-9000-000000000000",
        "shortName": "openssl"
      },
      "references": [
        {
          "name": "OpenSSL Advisory",
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://openssl-library.org/news/secadv/20260825.txt"
        },
        {
          "name": "4.0.2 git commit",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/openssl/openssl/commit/7eb2e3ec9d1d4f35c8022fccd4b03398b3f33e21"
        },
        {
          "name": "3.6.4 git commit",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/openssl/openssl/commit/6a0acc072b4d37a7cac1252a29c1ce1f00c5ec29"
        },
        {
          "name": "3.5.8 git commit",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/openssl/openssl/commit/0cc20b322639919aa423e90799d9a57c3b4b76ca"
        },
        {
          "name": "3.4.7 git commit",
          "tags": [
            "patch"
          ],
          "url": "https://github.com/openssl/openssl/commit/a7e5a6eea8fd3ccca6b6fbba031a5fbf8a3d93b4"
        }
      ],
      "source": {
        "discovery": "UNKNOWN"
      },
      "title": "Untrusted Sender DN Used as Format String in CMP Response Validation",
      "x_generator": {
        "engine": "Vulnogram 0.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "00000000-0000-4000-9000-000000000000",
    "cveId": "CVE-2026-63073",
    "requesterUserId": "00000000-0000-4000-9000-000000000000",
    "serial": 1,
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.1"
}
