CVE-2021-3450

HIGHCVSS 7.4/10EPSS 18.34%

Last modified

CVE-2021-3450 is a high-severity vulnerability rated 7.4/10 on the CVSS scale. The X509_V_FLAG_X509_STRICT flag enables additional security checks of the certificates present in a certificate chain. It is not set by default. EPSS estimates a 18.34% chance of exploitation in the next 30 days.

Description

The X509_V_FLAG_X509_STRICT flag enables additional security checks of the certificates present in a certificate chain. It is not set by default. Starting from OpenSSL version 1.1.1h a check to disallow certificates in the chain that have explicitly encoded elliptic curve parameters was added as an additional strict check. An error in the implementation of this check meant that the result of a previous check to confirm that certificates in the chain are valid CA certificates was overwritten. This effectively bypasses the check that non-CA certificates must not be able to issue other certificates. If a "purpose" has been configured then there is a subsequent opportunity for checks that the certificate is a valid CA. All of the named "purpose" values implemented in libcrypto perform this check. Therefore, where a purpose is set the certificate chain will still be rejected even when the strict flag has been used. A purpose is set by default in libssl client and server certificate verification routines, but it can be overridden or removed by an application. In order to be affected, an application must explicitly set the X509_V_FLAG_X509_STRICT verification flag and either not set a purpose for the certificate verification or, in the case of TLS client or server applications, override the default purpose. OpenSSL versions 1.1.1h and newer are affected by this issue. Users of these versions should upgrade to OpenSSL 1.1.1k. OpenSSL 1.0.2 is not impacted by this issue. Fixed in OpenSSL 1.1.1k (Affected 1.1.1h-1.1.1j).

Metrics

CVSS 3.1
7.4/10

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

EPSS Probability
18.34%

96.9th percentile

Probability of exploitation in the next 30 days. Learn more

Weakness Enumeration

Affected Software

VendorProductVersions
OpensslOpenssl>= 1.1.1h, < 1.1.1k
FreebsdFreebsd12.2
NetappSantricity Smi-S Provider FirmwareAll versions
NetappStoragegrid FirmwareAll versions
WindriverLinuxAll versions
WindriverLinux17.0
WindriverLinux18.0
WindriverLinux19.0
NetappCloud Volumes Ontap MediatorAll versions
NetappOncommand Workflow AutomationAll versions
NetappOntap Select Deploy Administration UtilityAll versions
NetappStoragegridAll versions
FedoraprojectFedora34
TenableNessus<= 8.13.1
TenableNessus Agent>= 8.2.1, <= 8.2.3
TenableNessus Network Monitor5.11.0
TenableNessus Network Monitor5.11.1
TenableNessus Network Monitor5.12.0
TenableNessus Network Monitor5.12.1
TenableNessus Network Monitor5.13.0
OracleCommerce Guided Search11.3.2
OracleEnterprise Manager For Storage Management13.4.0.0
OracleGraalvm19.3.5
OracleGraalvm20.3.1.2
OracleGraalvm21.0.0.2
OracleJd Edwards Enterpriseone Tools< 9.2.6.0
OracleJd Edwards World Securitya9.4
OracleMysql Connectors<= 8.0.23
OracleMysql Enterprise Monitor<= 8.0.23
OracleMysql Server<= 5.7.33
OracleMysql Server>= 8.0.15, <= 8.0.23
OracleMysql Workbench<= 8.0.23
OraclePeoplesoft Enterprise Peopletools>= 8.57, <= 8.59
OracleSecure Backup< 18.1.0.1.0
OracleSecure Global Desktop5.6
OracleWeblogic Server12.2.1.4.0
OracleWeblogic Server14.1.1.0.0
McafeeWeb Gateway8.2.19
McafeeWeb Gateway9.2.10
McafeeWeb Gateway10.1.1
McafeeWeb Gateway Cloud Service8.2.19
McafeeWeb Gateway Cloud Service9.2.10
McafeeWeb Gateway Cloud Service10.1.1
SonicwallSma100 Firmware< 10.2.1.0-17sv
SonicwallCapture Client< 3.6.24
SonicwallEmail Security< 10.0.11
SonicwallSonicos<= 7.0.1-r1456
NodejsNode.Js>= 10.0.0, < 10.24.1
NodejsNode.Js>= 12.0.0, < 12.22.1
NodejsNode.Js>= 14.0.0, < 14.16.1

Showing 50 of 51 affected configurations. See NVD for the full list.

References

Timeline

Published
Last Modified
Status
Modified

Frequently Asked Questions

What is CVE-2021-3450?
The X509_V_FLAG_X509_STRICT flag enables additional security checks of the certificates present in a certificate chain. It is not set by default. Starting from OpenSSL version 1.1.1h a check to disallow certificates in the chain that have explicitly encoded elliptic curve parameters was added as an additional strict check. An error in the implementation of this check meant that the result of a previous check to confirm that certificates in the chain are valid CA certificates was overwritten. This effectively bypasses the check that non-CA certificates must not be able to issue other certificates. If a "purpose" has been configured then there is a subsequent opportunity for checks that the certificate is a valid CA. All of the named "purpose" values implemented in libcrypto perform this check. Therefore, where a purpose is set the certificate chain will still be rejected even when the strict flag has been used. A purpose is set by default in libssl client and server certificate verification routines, but it can be overridden or removed by an application. In order to be affected, an application must explicitly set the X509_V_FLAG_X509_STRICT verification flag and either not set a purpose for the certificate verification or, in the case of TLS client or server applications, override the default purpose. OpenSSL versions 1.1.1h and newer are affected by this issue. Users of these versions should upgrade to OpenSSL 1.1.1k. OpenSSL 1.0.2 is not impacted by this issue. Fixed in OpenSSL 1.1.1k (Affected 1.1.1h-1.1.1j).
How severe is CVE-2021-3450?
CVE-2021-3450 has a CVSS score of 7.4/10 (HIGH severity). The EPSS model estimates a 18.34% probability of exploitation in the next 30 days.
How do I fix CVE-2021-3450?
Check the vendor references and advisories linked above for patched versions and mitigation guidance. You can also run a Strix scan to test if your systems are affected.

Are you affected by CVE-2021-3450?

Run a free Strix scan to check your systems for this vulnerability.

Scan your code now

Source: NVD / NIST