CWEweakness

CWE-296 Improper Following of a Certificate's Chain of Trust

Low Official page ↗
Abstraction
Base
Structure
Simple
Status
Draft
Likelihood of exploit
Low
Languages
Not Language-Specific
CWE version
5.0

Description

The product does not follow, or incorrectly follows, the chain of trust for a certificate back to a trusted root certificate.

Extended description

There are several ways in which the chain of trust might be broken, including but not limited to: • Any certificate in the chain is self-signed, unless it is the root. • Not every intermediate certificate is checked, starting from the original certificate all the way up to the root certificate. • An intermediate, CA-signed certificate does not have the expected Basic Constraints or other important extensions. • The root certificate has been compromised or authorized to the wrong party.

Common consequences

• Non-Repudiation: Hide Activities — Exploitation of this flaw can lead to the trust of data that may have originated with a spoofed source. • Integrity, Confidentiality, Availability, Access Control: Gain Privileges or Assume Identity, Execute Unauthorized Code or Commands — Data, requests, or actions taken by the attacking entity can be carried out as a spoofed benign entity.

Potential mitigations

• [Architecture and Design] Ensure that proper certificate checking is included in the system design. • [Implementation] Understand, and properly implement all checks necessary to ensure the integrity of certificate trust integrity. • [Implementation] If certificate pinning is being used, ensure that all relevant properties of the certificate are fully validated before the certificate is pinned, including the full chain of trust.

Detection methods

• Automated Static Analysis: Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)

Observed examples

• CVE-2016-2402: Server allows bypass of certificate pinning by sending a chain of trust that includes a trusted CA that is not pinned. • CVE-2008-4989: Verification function trusts certificate chains in which the last certificate is self-signed. • CVE-2012-5821: Chain: Web browser uses a TLS-related function incorrectly, preventing it from verifying that a server's certificate is signed by a trusted certification authority (CA). • CVE-2009-3046: Web browser does not check if any intermediate certificates are revoked. • CVE-2009-0265: Chain: DNS server does not correctly check return value from the OpenSSL EVP_VerifyFinal function allows bypass of validation of the certificate chain. • CVE-2009-0124: Chain: incorrect check of return value from the OpenSSL EVP_VerifyFinal function allows bypass of validation of the certificate chain. • CVE-2002-0970: File-transfer software does not validate Basic Constraints of an intermediate CA-signed certificate. • CVE-2002-0862: Cryptographic API, as used in web browsers, mail clients, and other software, does not properly validate Basic Constraints.

Related

Observed example · CVE (8)

  • CVE-2016-2402 OkHttp before 2.7.4 and 3.x before 3.1.2 allows man-in-the-middle attackers to bypass certificate pinning by sending a certificate chain… vulnerability
  • CVE-2012-5821 Lynx does not verify that the server's certificate is signed by a trusted certification authority, which allows man-in-the-middle attackers… vulnerability
  • CVE-2009-3046 Opera before 10.00 does not check all intermediate X.509 certificates for revocation, which makes it easier for remote SSL servers to… vulnerability
  • CVE-2009-0265 Internet Systems Consortium (ISC) BIND 9.6.0 and earlier does not properly check the return value from the OpenSSL EVP_VerifyFinal… vulnerability
  • CVE-2009-0124 The tqsl_verifyDataBlock function in openssl_cert.cpp in American Radio Relay League (ARRL) tqsllib 2.0 does not properly check the return… vulnerability
  • CVE-2008-4989 The _gnutls_x509_verify_certificate function in lib/x509/verify.c in libgnutls in GnuTLS before 2.6.1 trusts certificate chains in which… vulnerability
  • CVE-2002-0862 The (1) CertGetCertificateChain, (2) CertVerifyCertificateChainPolicy, and (3) WinVerifyTrust APIs within the CryptoAPI for Microsoft… vulnerability
  • CVE-2002-0970 The SSL capability for Konqueror in KDE 3.0.2 and earlier does not verify the Basic Constraints for an intermediate CA-signed certificate,… vulnerability

Child of · CWE (2)

  • CWE-295 Improper Certificate Validation weakness
  • CWE-573 Improper Following of Specification by Caller weakness

Referenced by CVE · weakness (19)

  • CVE-2026-96770 All published s2s-proxy versions through 0.2.2 are affected. vulnerability
  • CVE-2026-73542 Multiple SEIKO EPSON printers and scanners contain revoked root certificates. vulnerability
  • CVE-2026-24066 Slate Digital Connect 1.37.0 for macOS installs a privileged helper tool, com.slatedigital.connect.privileged.helper.tool, which exposes… vulnerability
  • CVE-2026-42789 Improper Following of a Certificate's Chain of Trust vulnerability in Erlang OTP public_key (pubkey_cert module) allows a non-CA… vulnerability
  • CVE-2026-44852 An authenticated remote code execution vulnerability exists in the AOS-8 and AOS-10 web-based management interface. vulnerability
  • CVE-2025-10539 Due to improper TLS certificate validation in the DeskTime Time Tracking App before version 1.3.674, attackers who can position themselves… vulnerability
  • CVE-2026-33779 An Improper Following of a Certificate's Chain of Trust vulnerability in J-Web of Juniper Networks Junos OS on SRX Series allows a PITM to… vulnerability
  • CVE-2026-27134 Strimzi provides a way to run an Apache Kafka cluster on Kubernetes or OpenShift in various deployment configurations. vulnerability
  • CVE-2026-27133 Strimzi provides a way to run an Apache Kafka cluster on Kubernetes or OpenShift in various deployment configurations. vulnerability
  • CVE-2025-48057 Icinga 2 is a monitoring system which checks the availability of network resources, notifies users of outages, and generates performance… vulnerability
  • CVE-2025-22459 Improper certificate validation in Ivanti Endpoint Manager before version 2024 SU1 or before version 2022 SU7 allows a remote… vulnerability
  • CVE-2024-43196 IBM OpenPages with Watson 8.3 and 9.0 application could allow an authenticated user to manipulate data in the Questionnaires application… vulnerability
  • CVE-2025-1146 CrowdStrike uses industry-standard TLS (transport layer security) to secure communications from the Falcon sensor to the CrowdStrike cloud. vulnerability
  • CVE-2021-44532 Node.js < 12.22.9, < 14.18.3, < 16.13.2, and < 17.3.1 converts SANs (Subject Alternative Names) to a string format. vulnerability
  • CVE-2021-23155 Improper validation of the cloud certificate chain in Mobile Client allows man-in-the-middle attack to impersonate the legitimate Command… vulnerability
  • CVE-2021-23162 Improper validation of the cloud certificate chain in Mobile Connect allows man-in-the-middle attack to impersonate the legitimate Command… vulnerability
  • CVE-2021-1566 A vulnerability in the Cisco Advanced Malware Protection (AMP) for Endpoints integration of Cisco AsyncOS for Cisco Email Security… vulnerability
  • CVE-2019-3762 Data Protection Central versions 1.0, 1.0.1, 18.1, 18.2, and 19.1 contains an Improper Certificate Chain of Trust Vulnerability. vulnerability
  • CVE-2019-3890 It was discovered evolution-ews before 3.31.3 does not check the validity of SSL certificates. vulnerability

Referenced by CWE · has member (1)

Referenced by CWE · peer of (1)

  • CWE-370 Missing Check for Certificate Revocation after Initial Check weakness

Referenced by OWASP · mapped cwe (2)

  • A04:2025 Cryptographic Failures Top 10 2025
  • A02:2021 Cryptographic Failures Top 10 2021