If an X.509 certificate contains a malformed policy constraint and policy processing is enabled, then a write lock will be taken twice recursively. On some operating systems (most widely: Windows) this results in a denial of service when the affected process hangs. Policy processing being enabled on a publicly facing server is not considered to be a common setup.
Policy processing is enabled by passing the -policy'
argument to the command line utilities or by calling the
X509VERIFYPARAMset1policies()' function.
Update (31 March 2023): The description of the policy processing enablement was corrected based on CVE-2023-0466.
[
{
"id": "CVE-2022-3996-383cac48",
"signature_type": "Line",
"signature_version": "v1",
"digest": {
"line_hashes": [
"279575523795296330294593989038263856970",
"328228967788405492778462705417817613235",
"48604254952751100308328289785600103687",
"106056911410713250346668559786984267083",
"172779517063998759931966698215728748829",
"58100369142781113603802418888053424532",
"45598401082326268789446081927995096398"
],
"threshold": 0.9
},
"deprecated": false,
"source": "https://github.com/openssl/openssl/commit/7725e7bfe6f2ce8146b6552b44e0d226be7638e7",
"target": {
"file": "crypto/x509/pcy_map.c"
}
},
{
"id": "CVE-2022-3996-c5cfac45",
"signature_type": "Function",
"signature_version": "v1",
"digest": {
"length": 1370.0,
"function_hash": "251752733737737008454248314611164806237"
},
"deprecated": false,
"source": "https://github.com/openssl/openssl/commit/7725e7bfe6f2ce8146b6552b44e0d226be7638e7",
"target": {
"function": "ossl_policy_cache_set_mapping",
"file": "crypto/x509/pcy_map.c"
}
}
]