OpenSSL 3.0.0-3.0.7 - Buffer Overflow in X.509 Certificate Name Constraint Checking
Title source: llmExploitation Summary
EIP tracks 2 public exploits for CVE-2022-3786. PoCs published by rbowes-r7, WhatTheFuzz.
AI-analyzed exploit summary This PoC demonstrates CVE-2022-3786, an OpenSSL vulnerability related to punycode processing in the `ossl_a2ulabel` function. The exploit triggers a buffer overflow by passing a maliciously crafted domain name with excessive periods, leading to a denial-of-service (DoS) condition.
Description
A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Note that this occurs after certificate chain signature verification and requires either a CA to have signed a malicious certificate or for an application to continue certificate verification despite failure to construct a path to a trusted issuer. An attacker can craft a malicious email address in a certificate to overflow an arbitrary number of bytes containing the `.' character (decimal 46) on the stack. This buffer overflow could result in a crash (causing a denial of service). In a TLS client, this can be triggered by connecting to a malicious server. In a TLS server, this can be triggered if the server requests client authentication and a malicious client connects.
Exploits (2)
This PoC demonstrates CVE-2022-3786, an OpenSSL vulnerability related to punycode processing in the `ossl_a2ulabel` function. The exploit triggers a buffer overflow by passing a maliciously crafted domain name with excessive periods, leading to a denial-of-service (DoS) condition.
This repository contains a functional fuzzing harness and proof-of-concept for CVE-2022-3786, a buffer overrun vulnerability in OpenSSL's punycode decoder. It includes a Dockerized environment, fuzzing scripts, and a confirmation test to verify the vulnerability.
References (5)
Scores
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H