// For flags

CVE-2021-3450

CA certificate check bypass with X509_V_FLAG_X509_STRICT

Severity Score

7.4
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

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).

El flag X509_V_FLAG_X509_STRICT permite llevar a cabo comprobaciones de seguridad adicionales de los certificados presentes en una cadena de certificados. No está establecido por defecto. A partir de la versión 1.1.1h de OpenSSL, se añadió como comprobación estricta adicional la de no permitir certificados en la cadena que tengan parámetros de curva elíptica codificados explícitamente. Un error en la implementación de esta comprobación significaba que el resultado de una comprobación previa para confirmar que los certificados de la cadena son certificados de CA válidos fueron sobrescritos. De este modo, se omite la comprobación de que los certificados que no son de CA no deben poder emitir otros certificados. Si se ha configurado un "purpose", se presenta la posibilidad de comprobar posteriormente que el certificado es una CA válida. Todos los valores de "purpose" implementados en libcrypto llevan a cabo esta comprobación. Por lo tanto, cuando se establece un propósito, la cadena de certificados seguirá siendo rechazada inclusive cuando se haya usado el flag strict. Se establece un propósito por defecto en las rutinas de verificación de certificados de cliente servidor de libssl, pero puede ser anulado o eliminado por una aplicación. Para que se vea afectada, una aplicación debe establecer explícitamente el flag de verificación X509_V_FLAG_X509_STRICT y no establecer un propósito para la verificación de certificados o, en el caso de las aplicaciones de cliente o servidor TLS, anular el propósito por defecto. Este problema afecta a las versiones 1.1.1h y posteriores de OpenSSL. Los usuarios de estas versiones deben actualizar a OpenSSL versión 1.1.1k. OpenSSL versión 1.0.2 no está afectado por este problema. Corregido en OpenSSL versión 1.1.1k (Afectadas versiones 1.1.1h-1.1.1j)

A flaw was found in openssl. The flag that enables additional security checks of certificates present in a certificate chain was not enabled allowing a confirmation step to verify that certificates in the chain are valid CA certificates is bypassed. The highest threat from this vulnerability is to data confidentiality and integrity.

*Credits: Benjamin Kaduk (Akamai), Xiang Ding (Akamai), others at Akamai
CVSS Scores
Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None
Attack Vector
Network
Attack Complexity
Medium
Authentication
None
Confidentiality
Partial
Integrity
Partial
Availability
None
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2021-03-19 CVE Reserved
  • 2021-03-25 CVE Published
  • 2024-05-26 EPSS Updated
  • 2024-09-17 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-295: Improper Certificate Validation
CAPEC
References (26)
URL Date SRC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Netapp
Search vendor "Netapp"
Santricity Smi-s Provider Firmware
Search vendor "Netapp" for product "Santricity Smi-s Provider Firmware"
--
Affected
in Netapp
Search vendor "Netapp"
Santricity Smi-s Provider
Search vendor "Netapp" for product "Santricity Smi-s Provider"
--
Safe
Netapp
Search vendor "Netapp"
Storagegrid Firmware
Search vendor "Netapp" for product "Storagegrid Firmware"
--
Affected
in Netapp
Search vendor "Netapp"
Storagegrid
Search vendor "Netapp" for product "Storagegrid"
--
Safe
Sonicwall
Search vendor "Sonicwall"
Sma100 Firmware
Search vendor "Sonicwall" for product "Sma100 Firmware"
< 10.2.1.0-17sv
Search vendor "Sonicwall" for product "Sma100 Firmware" and version " < 10.2.1.0-17sv"
-
Affected
in Sonicwall
Search vendor "Sonicwall"
Sma100
Search vendor "Sonicwall" for product "Sma100"
--
Safe
Openssl
Search vendor "Openssl"
Openssl
Search vendor "Openssl" for product "Openssl"
>= 1.1.1h < 1.1.1k
Search vendor "Openssl" for product "Openssl" and version " >= 1.1.1h < 1.1.1k"
-
Affected
Freebsd
Search vendor "Freebsd"
Freebsd
Search vendor "Freebsd" for product "Freebsd"
12.2
Search vendor "Freebsd" for product "Freebsd" and version "12.2"
-
Affected
Freebsd
Search vendor "Freebsd"
Freebsd
Search vendor "Freebsd" for product "Freebsd"
12.2
Search vendor "Freebsd" for product "Freebsd" and version "12.2"
p1
Affected
Freebsd
Search vendor "Freebsd"
Freebsd
Search vendor "Freebsd" for product "Freebsd"
12.2
Search vendor "Freebsd" for product "Freebsd" and version "12.2"
p2
Affected
Windriver
Search vendor "Windriver"
Linux
Search vendor "Windriver" for product "Linux"
-cd
Affected
Windriver
Search vendor "Windriver"
Linux
Search vendor "Windriver" for product "Linux"
17.0
Search vendor "Windriver" for product "Linux" and version "17.0"
lts
Affected
Windriver
Search vendor "Windriver"
Linux
Search vendor "Windriver" for product "Linux"
18.0
Search vendor "Windriver" for product "Linux" and version "18.0"
lts
Affected
Windriver
Search vendor "Windriver"
Linux
Search vendor "Windriver" for product "Linux"
19.0
Search vendor "Windriver" for product "Linux" and version "19.0"
lts
Affected
Netapp
Search vendor "Netapp"
Cloud Volumes Ontap Mediator
Search vendor "Netapp" for product "Cloud Volumes Ontap Mediator"
--
Affected
Netapp
Search vendor "Netapp"
Oncommand Workflow Automation
Search vendor "Netapp" for product "Oncommand Workflow Automation"
--
Affected
Netapp
Search vendor "Netapp"
Ontap Select Deploy Administration Utility
Search vendor "Netapp" for product "Ontap Select Deploy Administration Utility"
--
Affected
Netapp
Search vendor "Netapp"
Storagegrid
Search vendor "Netapp" for product "Storagegrid"
--
Affected
Fedoraproject
Search vendor "Fedoraproject"
Fedora
Search vendor "Fedoraproject" for product "Fedora"
34
Search vendor "Fedoraproject" for product "Fedora" and version "34"
-
Affected
Tenable
Search vendor "Tenable"
Nessus
Search vendor "Tenable" for product "Nessus"
<= 8.13.1
Search vendor "Tenable" for product "Nessus" and version " <= 8.13.1"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Agent
Search vendor "Tenable" for product "Nessus Agent"
>= 8.2.1 <= 8.2.3
Search vendor "Tenable" for product "Nessus Agent" and version " >= 8.2.1 <= 8.2.3"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Network Monitor
Search vendor "Tenable" for product "Nessus Network Monitor"
5.11.0
Search vendor "Tenable" for product "Nessus Network Monitor" and version "5.11.0"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Network Monitor
Search vendor "Tenable" for product "Nessus Network Monitor"
5.11.1
Search vendor "Tenable" for product "Nessus Network Monitor" and version "5.11.1"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Network Monitor
Search vendor "Tenable" for product "Nessus Network Monitor"
5.12.0
Search vendor "Tenable" for product "Nessus Network Monitor" and version "5.12.0"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Network Monitor
Search vendor "Tenable" for product "Nessus Network Monitor"
5.12.1
Search vendor "Tenable" for product "Nessus Network Monitor" and version "5.12.1"
-
Affected
Tenable
Search vendor "Tenable"
Nessus Network Monitor
Search vendor "Tenable" for product "Nessus Network Monitor"
5.13.0
Search vendor "Tenable" for product "Nessus Network Monitor" and version "5.13.0"
-
Affected
Oracle
Search vendor "Oracle"
Commerce Guided Search
Search vendor "Oracle" for product "Commerce Guided Search"
11.3.2
Search vendor "Oracle" for product "Commerce Guided Search" and version "11.3.2"
-
Affected
Oracle
Search vendor "Oracle"
Enterprise Manager For Storage Management
Search vendor "Oracle" for product "Enterprise Manager For Storage Management"
13.4.0.0
Search vendor "Oracle" for product "Enterprise Manager For Storage Management" and version "13.4.0.0"
-
Affected
Oracle
Search vendor "Oracle"
Graalvm
Search vendor "Oracle" for product "Graalvm"
19.3.5
Search vendor "Oracle" for product "Graalvm" and version "19.3.5"
enterprise
Affected
Oracle
Search vendor "Oracle"
Graalvm
Search vendor "Oracle" for product "Graalvm"
20.3.1.2
Search vendor "Oracle" for product "Graalvm" and version "20.3.1.2"
enterprise
Affected
Oracle
Search vendor "Oracle"
Graalvm
Search vendor "Oracle" for product "Graalvm"
21.0.0.2
Search vendor "Oracle" for product "Graalvm" and version "21.0.0.2"
enterprise
Affected
Oracle
Search vendor "Oracle"
Jd Edwards Enterpriseone Tools
Search vendor "Oracle" for product "Jd Edwards Enterpriseone Tools"
< 9.2.6.0
Search vendor "Oracle" for product "Jd Edwards Enterpriseone Tools" and version " < 9.2.6.0"
-
Affected
Oracle
Search vendor "Oracle"
Jd Edwards World Security
Search vendor "Oracle" for product "Jd Edwards World Security"
a9.4
Search vendor "Oracle" for product "Jd Edwards World Security" and version "a9.4"
-
Affected
Oracle
Search vendor "Oracle"
Mysql Connectors
Search vendor "Oracle" for product "Mysql Connectors"
<= 8.0.23
Search vendor "Oracle" for product "Mysql Connectors" and version " <= 8.0.23"
-
Affected
Oracle
Search vendor "Oracle"
Mysql Enterprise Monitor
Search vendor "Oracle" for product "Mysql Enterprise Monitor"
<= 8.0.23
Search vendor "Oracle" for product "Mysql Enterprise Monitor" and version " <= 8.0.23"
-
Affected
Oracle
Search vendor "Oracle"
Mysql Server
Search vendor "Oracle" for product "Mysql Server"
<= 5.7.33
Search vendor "Oracle" for product "Mysql Server" and version " <= 5.7.33"
-
Affected
Oracle
Search vendor "Oracle"
Mysql Server
Search vendor "Oracle" for product "Mysql Server"
>= 8.0.15 <= 8.0.23
Search vendor "Oracle" for product "Mysql Server" and version " >= 8.0.15 <= 8.0.23"
-
Affected
Oracle
Search vendor "Oracle"
Mysql Workbench
Search vendor "Oracle" for product "Mysql Workbench"
<= 8.0.23
Search vendor "Oracle" for product "Mysql Workbench" and version " <= 8.0.23"
-
Affected
Oracle
Search vendor "Oracle"
Peoplesoft Enterprise Peopletools
Search vendor "Oracle" for product "Peoplesoft Enterprise Peopletools"
>= 8.57 <= 8.59
Search vendor "Oracle" for product "Peoplesoft Enterprise Peopletools" and version " >= 8.57 <= 8.59"
-
Affected
Oracle
Search vendor "Oracle"
Secure Backup
Search vendor "Oracle" for product "Secure Backup"
< 18.1.0.1.0
Search vendor "Oracle" for product "Secure Backup" and version " < 18.1.0.1.0"
-
Affected
Oracle
Search vendor "Oracle"
Secure Global Desktop
Search vendor "Oracle" for product "Secure Global Desktop"
5.6
Search vendor "Oracle" for product "Secure Global Desktop" and version "5.6"
-
Affected
Oracle
Search vendor "Oracle"
Weblogic Server
Search vendor "Oracle" for product "Weblogic Server"
12.2.1.4.0
Search vendor "Oracle" for product "Weblogic Server" and version "12.2.1.4.0"
-
Affected
Oracle
Search vendor "Oracle"
Weblogic Server
Search vendor "Oracle" for product "Weblogic Server"
14.1.1.0.0
Search vendor "Oracle" for product "Weblogic Server" and version "14.1.1.0.0"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway
Search vendor "Mcafee" for product "Web Gateway"
8.2.19
Search vendor "Mcafee" for product "Web Gateway" and version "8.2.19"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway
Search vendor "Mcafee" for product "Web Gateway"
9.2.10
Search vendor "Mcafee" for product "Web Gateway" and version "9.2.10"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway
Search vendor "Mcafee" for product "Web Gateway"
10.1.1
Search vendor "Mcafee" for product "Web Gateway" and version "10.1.1"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway Cloud Service
Search vendor "Mcafee" for product "Web Gateway Cloud Service"
8.2.19
Search vendor "Mcafee" for product "Web Gateway Cloud Service" and version "8.2.19"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway Cloud Service
Search vendor "Mcafee" for product "Web Gateway Cloud Service"
9.2.10
Search vendor "Mcafee" for product "Web Gateway Cloud Service" and version "9.2.10"
-
Affected
Mcafee
Search vendor "Mcafee"
Web Gateway Cloud Service
Search vendor "Mcafee" for product "Web Gateway Cloud Service"
10.1.1
Search vendor "Mcafee" for product "Web Gateway Cloud Service" and version "10.1.1"
-
Affected
Sonicwall
Search vendor "Sonicwall"
Capture Client
Search vendor "Sonicwall" for product "Capture Client"
< 3.6.24
Search vendor "Sonicwall" for product "Capture Client" and version " < 3.6.24"
-
Affected
Sonicwall
Search vendor "Sonicwall"
Email Security
Search vendor "Sonicwall" for product "Email Security"
< 10.0.11
Search vendor "Sonicwall" for product "Email Security" and version " < 10.0.11"
-
Affected
Sonicwall
Search vendor "Sonicwall"
Sonicos
Search vendor "Sonicwall" for product "Sonicos"
<= 7.0.1-r1456
Search vendor "Sonicwall" for product "Sonicos" and version " <= 7.0.1-r1456"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 10.0.0 < 10.24.1
Search vendor "Nodejs" for product "Node.js" and version " >= 10.0.0 < 10.24.1"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 12.0.0 < 12.22.1
Search vendor "Nodejs" for product "Node.js" and version " >= 12.0.0 < 12.22.1"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 14.0.0 < 14.16.1
Search vendor "Nodejs" for product "Node.js" and version " >= 14.0.0 < 14.16.1"
-
Affected
Nodejs
Search vendor "Nodejs"
Node.js
Search vendor "Nodejs" for product "Node.js"
>= 15.0.0 < 15.14.0
Search vendor "Nodejs" for product "Node.js" and version " >= 15.0.0 < 15.14.0"
-
Affected