Safeguard
Vulnerability Analysis•

CVE-2026-34582: Botan TLS 1.3 Client Auth Bypass

CVE-2026-34582 is a critical TLS 1.3 client authentication bypass in Botan before 3.11.1. Upgrade to 3.11.1, rebuild linked programs and review mTLS.

Safeguard Security Team
3 min read

CVE-2026-34582 is a critical flaw in Botan, a C++ cryptography library. NVD scores it 9.1. Before version 3.11.1, a TLS 1.3 server could accept application data before the client finished the handshake, which lets a client skip certificate authentication. Upgrade to Botan 3.11.1 or later.

What's affected

Botan versions before 3.11.1. The fixed release is 3.11.1.

The issue matters for servers that use Botan's TLS 1.3 implementation and require client certificates. Servers that do not ask for client certificates do not rely on this check.

How to check if you're exposed

Check the Botan version you build against or ship. The command line tool can print it:

botan version

Also check vendored copies and distribution packages, since many programs bundle Botan. Red Hat has a tracking entry for this CVE, which is useful if you consume Botan through a Linux distribution. Then ask which of your services terminate TLS 1.3 with Botan and require client certificates.

What to do now

  1. Upgrade Botan to 3.11.1 or later and rebuild every program that links it statically.
  2. List services that use Botan for TLS 1.3 with mutual TLS, and treat those as first priority.
  3. Until the upgrade ships, do not rely on client certificates alone for access to sensitive services that run on affected builds. Add an application layer check.
  4. Review logs for sessions that carried application data without a completed client certificate exchange, if your logging records it.

Why it matters

The weaknesses are CWE-166 (improper handling of missing special element) and CWE-841 (improper enforcement of behavioral workflow). In plain terms, the handshake has an order, and the library let a step run before an earlier required step finished.

According to the record, a client can leave out Certificate, CertificateVerify and Finished entirely and send application data records instead. That defeats client authentication, which is the whole point of mutual TLS. No privileges or user interaction are needed in the vector.

The record does not flag this CVE as listed in CISA's Known Exploited Vulnerabilities catalog, and I found no statement that it is exploited.

Try it yourself

Not every copy of Botan in your estate is reachable from a TLS listener. This walkthrough shows how reachability narrows the list.

Click through it at your own pace, or open it full screen.

Quick check

Does this affect TLS clients using Botan?

The record describes a server that tries to enforce client authentication. Check the advisory for any client side effect before you assume you are unaffected.

Does a firewall or proxy in front of the server help?

Only if it terminates TLS itself and enforces the client certificate there. If the TLS session ends at a Botan based server, the protection depends on the fix.

Sources

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.