Skip to content
Heist/ feed
Unrated

Out of bounds write in PKCS12_get_friendlyname() UTF-8 conversion

Type: advisorySource: Official CVE List1 source record

Issue summary: Calling PKCS12_get_friendlyname() function on a maliciously crafted PKCS#12 file with a BMPString (UTF-16BE) friendly name containing non-ASCII BMP code point can trigger a one byte write before the allocated buffer. Impact summary: The out-of-bounds write can cause a memory corruption which can have various consequences including a Denial of Service. The OPENSSL_uni2utf8() function performs a two-pass conversion of a PKCS#12 BMPString (UTF-16BE) to UTF-8. In the second pass, when emitting UTF-8 bytes, the helper function bmp_to_utf8() incorrectly forwards the remaining UTF-16 source byte count as the destination buffer capacity to UTF8_putc(). For BMP code points above U+07FF, UTF-8 requires three bytes, but the forwarded capacity can be just two bytes. UTF8_putc() then returns -1, and this negative value is added to the output length without validation, causing the length to become negative. The subsequent trailing NUL byte is then written at a negative offset, causing write outside of heap allocated buffer. The vulnerability is reachable via the public PKCS12_get_friendlyname() API when parsing attacker-controlled PKCS#12 files. While PKCS12_parse() uses a different code path that avoids this issue, PKCS12_get_friendlyname() directly invokes the vulnerable function. Exploitation requires an attacker to provide a malicious PKCS#12 file to be parsed by the application and the attacker can just trigger a one zero byte write before the allocated buffer. For that

Announced Group revision 1
Original source ↗

CVE-2025-69419

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2025-69419

OpenSSL

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "vendor": "OpenSSL",
    "product": "OpenSSL",
    "versions": [
      {
        "status": "affected",
        "version": "3.6.0",
        "lessThan": "3.6.1",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "3.5.0",
        "lessThan": "3.5.5",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "3.4.0",
        "lessThan": "3.4.4",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "3.3.0",
        "lessThan": "3.3.6",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "3.0.0",
        "lessThan": "3.0.19",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "1.1.1",
        "lessThan": "1.1.1ze",
        "versionType": "custom"
      }
    ],
    "defaultStatus": "unaffected"
  }
]
Related CVEs
CVE-2025-69419

Source reference: /cveMetadata/cveId

Publisher severity

No explicit severity was provided.

Event
#27132 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement