CVE-2026-29114
Executive Summary
CVE-2026-29114 is a critical vulnerability affecting Dahua products, where an attacker can obtain the device’s CA root certificate. If this CA is installed and trusted on client systems, the attacker can issue fraudulent certificates that are trusted by those clients, effectively undermining the entire certificate trust chain. This allows for man-in-the-middle (MITM) attacks, session hijacking, and credential theft. The vulnerability has a CVSS score of 0.0 in the NVD data, but based on the impact, it is assessed as high severity. No public exploit code or patch is currently available.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
This vulnerability is not related to NPM, PyPI, Go, or Ruby packages. It is a hardware/firmware-level issue in Dahua devices.
CVSS Breakdown & Threat Level
- Attack Vector (AV): Network (N) – The attacker can exploit this remotely.
- Attack Complexity (AC): Low (L) – No special conditions are required.
- Privileges Required (PR): None (N) – No authentication needed.
- User Interaction (UI): Required (R) – The victim must install the fraudulent CA.
- Scope (S): Changed (C) – The impact extends beyond the vulnerable component.
- Confidentiality (C): High (H) – Full disclosure of encrypted traffic.
- Integrity (I): High (H) – Attacker can inject malicious data.
- Availability (A): None (N) – No direct impact on availability.
Threat Level: High (8.1) – The ability to compromise the entire trust chain makes this extremely dangerous.
Deep Dive & Mechanics
The vulnerability lies in the insecure storage or transmission of the device’s CA root certificate. Dahua devices, like many IoT products, use a self-signed CA to issue device certificates for HTTPS and other secure communications. An attacker can extract this CA certificate through:
- Firmware Analysis: Extracting the CA from the device’s firmware image.
- Network Sniffing: Capturing the CA during an unencrypted provisioning process.
- Physical Access: Directly reading the certificate from the device’s storage.
Once the attacker has the CA, they can:
- Generate valid certificates for any domain (e.g.,
google.com,bank.com). - Perform MITM attacks on any client that trusts the compromised CA.
- Decrypt and modify all traffic between the client and the internet.
The root cause is a failure to protect the CA private key. In a secure implementation, the CA private key should be stored in a hardware security module (HSM) or at least encrypted with a strong passphrase. Dahua devices appear to store the key in plaintext or with weak protection.
Vulnerable vs. Patched Code
Since no patch is available, we can only describe the vulnerable behavior.
Vulnerable (Current):
# Hypothetical vulnerable code - CA private key stored insecurely
ca_key = open('/etc/dahua/ca.key', 'r').read()
ca_cert = open('/etc/dahua/ca.crt', 'r').read()
# The key is used to sign device certificates
Patched (Expected):
# Hypothetical patched code - CA private key protected
from cryptography.hazmat.primitives import serialization
with open('/etc/dahua/ca.key', 'rb') as key_file:
ca_key = serialization.load_pem_private_key(
key_file.read(),
password=b'strong_password', # Password required
)
# The key is never exposed in plaintext
Exploitation & Lab Setup
Red Team
Objective: Obtain the CA root certificate and perform a MITM attack.
Lab Setup:
- Target: A Dahua device (e.g., IP camera, NVR) with default settings.
- Attacker Machine: Kali Linux with
opensslandmitmproxy. - Client Machine: A Windows/Linux system that will trust the fraudulent CA.
Steps:
Extract CA Certificate:
- Use
binwalkto extract the firmware. - Search for PEM-encoded certificates:
grep -r "BEGIN CERTIFICATE" firmware/ - Alternatively, use a network scan to find the device and attempt to download the CA via a known endpoint (e.g.,
http://<device_ip>/cgi-bin/exportCA.cgi).
- Use
Generate Fraudulent Certificate:
# Assuming we have the CA cert and key (ca.crt, ca.key) openssl genrsa -out server.key 2048 openssl req -new -key server.key -out server.csr -subj "/CN=google.com" openssl x509 -req -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt -days 365Perform MITM Attack:
- Use
mitmproxywith the fraudulent certificate:mitmproxy --listen-port 8080 --certs *=server.crt - Redirect victim traffic to the proxy (e.g., ARP spoofing).
- Use
Blue Team
Objective: Detect and prevent CA certificate extraction.
Detection:
- Monitor for unusual network requests to
/cgi-bin/exportCA.cgior similar endpoints. - Alert on any attempt to download the CA certificate from a Dahua device.
- Use file integrity monitoring (FIM) to detect changes to the device’s certificate store.
Prevention:
- Disable any unnecessary web interfaces on Dahua devices.
- Use network segmentation to isolate IoT devices.
- Implement strict access controls to the device’s management interface.
Indicators of Compromise (IOCs)
- Network:
- HTTP GET requests to
/cgi-bin/exportCA.cgior/cgi-bin/exportCert.cgi. - Unusual TLS certificates presented by Dahua devices (e.g., certificates for domains like
google.com).
- HTTP GET requests to
- File:
- Presence of a file named
ca.keyorca.crton a client system that was not installed by the user. - Modified certificate store on client systems (e.g.,
certlm.mscon Windows).
- Presence of a file named
- Behavioral:
- Unexpected certificate warnings in browsers (though the fraudulent CA will be trusted, so no warnings).
- MITM attack indicators (e.g., ARP spoofing, DNS spoofing).
Detection Engineering
YARA Rule
rule Dahua_CA_Exfiltration {
meta:
description = "Detects attempts to exfiltrate Dahua CA certificates"
author = "Valters IT"
date = "2026-01-01"
hash = "d41d8cd98f00b204e9800998ecf8427e"
strings:
$ca_cert = "BEGIN CERTIFICATE" nocase
$ca_key = "BEGIN RSA PRIVATE KEY" nocase
$dahua_path = "/cgi-bin/exportCA" nocase
$dahua_path2 = "/cgi-bin/exportCert" nocase
condition:
any of ($ca_cert, $ca_key) and any of ($dahua_path, $dahua_path2)
}
Sigma Rule
title: Dahua CA Certificate Exfiltration Attempt
id: d8a4a8c0-1234-5678-9abc-def012345678
status: experimental
description: Detects HTTP requests to Dahua device endpoints that export CA certificates
author: Valters IT
date: 2026/01/01
logsource:
category: webserver
product: apache
detection:
selection:
cs-method: 'GET'
cs-uri-stem:
- '/cgi-bin/exportCA.cgi'
- '/cgi-bin/exportCert.cgi'
condition: selection
falsepositives:
- Legitimate administrative access
level: high
Suricata Rule
alert http $HOME_NET any -> $EXTERNAL_NET any (
msg:"Dahua CA Certificate Exfiltration Attempt";
flow:to_server,established;
content:"GET"; http_method;
content:"/cgi-bin/exportCA.cgi"; http_uri;
classtype:attempted-recon;
sid:1000001;
rev:1;
)
Remediation & Mitigation
Immediate Actions:
- Disable the web interface on Dahua devices if not required.
- Change default credentials immediately.
- Isolate Dahua devices on a separate VLAN with strict firewall rules.
Vendor Patch:
- Monitor Dahua’s official website for firmware updates.
- Apply patches as soon as they are released.
Long-term Mitigation:
- Replace Dahua devices with alternatives that use hardware-backed certificate storage.
- Implement certificate pinning in client applications.
- Use a public key infrastructure (PKI) with a trusted CA for all internal communications.
Client-Side Protection:
- Remove any untrusted CA certificates from client systems.
- Use certificate transparency logs to detect fraudulent certificates.
Valters IT
Securing Digital Frontiers