CVE-2026-48057: Botan: directoryName nameConstraint bypass via multi-AVA RDN flattening in matches_dn
Botan is a C++ cryptography library. Prior to 3.13.0, Botan's X.509 Distinguished Name decoder flattens the Attribute-Value Assertions in each Relative Distinguished Name and loses multi-value RDN grouping before DN name-constraint enforcement. An attacker controlling a name-constrained intermediate CA can issue a certificate with a multi-value RDN whose first Common Name matches the permitted constraint and whose second Common Name is attacker-chosen, causing the constraint check to accept the flattened first value. If the certificate contains no subjectAlternativeName extension, the second Common Name can then be accepted as a hostname; Botan does not fall back to Common Name hostname matching when any subjectAlternativeName is present. The exposure is limited to deployments using DN name constraints, which are uncommon outside internal PKIs, and to certificates without a subjectAlternativeName. This issue is fixed in version 3.13.0.
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Botanto a version that resolves this vulnerability.Fixed in 3.13.0
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
Exposure is limited to deployments that use Botan DN name constraints, which are uncommon outside internal PKIs. The affected certificate must also omit the subjectAlternativeName extension.
What access does an attacker need to exploit the bypass?
The attacker must control a name-constrained intermediate CA. They can then issue a certificate containing a multi-value RDN with a permitted first Common Name and an attacker-chosen second Common Name.
Why does the absence of subjectAlternativeName matter?
Botan does not use Common Name hostname matching when a subjectAlternativeName is present. Without that extension, the attacker-chosen second Common Name may be accepted as the hostname after the name-constraint check accepts the flattened first value.
What version fixes the issue?
Upgrade Botan to version 3.13.0 or later. Versions prior to 3.13.0 are affected under the described deployment and certificate conditions.