CVE-2022-4450

Source
https://cve.org/CVERecord?id=CVE-2022-4450
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-4450.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2022-4450
Aliases
Downstream
Related
Published
2023-02-08T19:04:04Z
Modified
2026-09-16T08:19:04Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
Summary
Double free after calling PEM_read_bio_ex
Details

The function PEM_read_bio_ex() reads a PEM file from a BIO and parses and decodes the "name" (e.g. "CERTIFICATE"), any header data and the payload data. If the function succeeds then the "name_out", "header" and "data" arguments are populated with pointers to buffers containing the relevant decoded data. The caller is responsible for freeing those buffers. It is possible to construct a PEM file that results in 0 bytes of payload data. In this case PEM_read_bio_ex() will return a failure code but will populate the header argument with a pointer to a buffer that has already been freed. If the caller also frees this buffer then a double free will occur. This will most likely lead to a crash. This could be exploited by an attacker who has the ability to supply malicious PEM files for parsing to achieve a denial of service attack.

The functions PEM_read_bio() and PEM_read() are simple wrappers around PEM_read_bio_ex() and therefore these functions are also directly affected.

These functions are also called indirectly by a number of other OpenSSL functions including PEM_X509_INFO_read_bio_ex() and SSL_CTX_use_serverinfo_file() which are also vulnerable. Some OpenSSL internal uses of these functions are not vulnerable because the caller does not free the header argument if PEM_read_bio_ex() returns a failure code. These locations include the PEM_read_bio_TYPE() functions as well as the decoders introduced in OpenSSL 3.0.

The OpenSSL asn1parse command line application is also impacted by this issue.

Database specific
{
    "cna_assigner":  "openssl",
    "osv_generated_from":  "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/4xxx/CVE-2022-4450.json",
    "unresolved_ranges":  [
        {
            "extracted_events":  [
                {
                    "introduced":  "3.0.0"
                },
                {
                    "fixed":  "3.0.8"
                },
                {
                    "introduced":  "1.1.1"
                },
                {
                    "fixed":  "1.1.1t"
                }
            ],
            "source":  "AFFECTED_FIELD"
        }
    ]
}
References

Affected packages

Git / github.com/openssl/openssl

Affected ranges

Type
GIT
Repo
https://github.com/openssl/openssl
Events
Database specific
Show details
{
    "cpe":  "cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*",
    "extracted_events":  [
        {
            "introduced":  "1.1.1"
        },
        {
            "fixed":  "1.1.1t"
        },
        {
            "introduced":  "3.0.0"
        },
        {
            "fixed":  "3.0.8"
        }
    ],
    "source":  "CPE_RANGE"
}

Affected versions

openssl-3.*
openssl-3.0.0
openssl-3.0.1
openssl-3.0.2
openssl-3.0.3
openssl-3.0.4
openssl-3.0.5
openssl-3.0.6
openssl-3.0.7

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2022-4450.json"
vanir_signatures
[
    {
        "deprecated":  false,
        "digest":  {
            "line_hashes":  [
                "28170854778703993674264004058177114599",
                "73132526844288570625317440636111911761",
                "177405411499435185068645597737938634778",
                "224809958623850711330610094965797758930",
                "295554444428855106393106961197201359586"
            ],
            "threshold":  0.9
        },
        "id":  "CVE-2022-4450-c377fa22",
        "signature_type":  "Line",
        "signature_version":  "v1",
        "source":  "https://github.com/openssl/openssl/commit/e04bd3433fd84e1861bf258ea37928d9845e6a86",
        "target":  {
            "file":  "include/openssl/opensslv.h"
        }
    }
]
vanir_signatures_modified
"2026-09-16T08:19:04Z"