Skip to content

openssl-src contains `NULL` dereference during PKCS7 data verification

High severity GitHub Reviewed Published Feb 8, 2023 to the GitHub Advisory Database • Updated Feb 5, 2024

Package

cargo openssl-src (Rust)

Affected versions

>= 300.0.0, < 300.0.12

Patched versions

300.0.12

Description

A NULL pointer can be dereferenced when signatures are being verified on PKCS7 signed or signedAndEnveloped data. In case the hash algorithm used for the signature is known to the OpenSSL library but the implementation of the hash algorithm is not available the digest initialization will fail. There is a missing check for the return value from the initialization function which later leads to invalid usage of the digest API most likely leading to a crash. The unavailability of an algorithm can be caused by using FIPS enabled configuration of providers or more commonly by not loading the legacy provider.

PKCS7 data is processed by the SMIME library calls and also by the time stamp (TS) library calls. The TLS implementation in OpenSSL does not call these functions however third party applications would be affected if they call these functions to verify signatures on untrusted data.

References

Published by the National Vulnerability Database Feb 8, 2023
Published to the GitHub Advisory Database Feb 8, 2023
Reviewed Feb 8, 2023
Last updated Feb 5, 2024

Severity

High
7.5
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weaknesses

CVE ID

CVE-2023-0401

GHSA ID

GHSA-vrh7-x64v-7vxq
Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.