Haskell TLS stack bypasses X.509 NameConstraints
CVE-2026-9648 allows attackers with compromised sub-CA keys to impersonate any domain in Haskell TLS clients due to missing NameConstraints enforcement.
Sourcekb.cert.org — open the original
What to check
- Applies to
- The 1 CVE named below. Whether you run an affected version is not assessed: check the versions the source lists.
- Exploitation
- No exploitation in the wild and no public exploit is recorded for the CVEs named.
A critical vulnerability in the Haskell TLS software stack allows attackers to bypass X.509 NameConstraints validation, enabling certificate impersonation attacks. The crypton-x509-validation library fails to enforce RFC 5280 NameConstraints, which restrict which domains a certificate authority can issue certificates for. This allows an attacker who compromises a name-constrained sub-CA to create certificates for domains outside its permitted scope, tricking Haskell clients into accepting them.
The vulnerability is particularly concerning for enterprise, academic, and financial systems that commonly use Haskell for backend services including fraud detection and risk modeling. An attacker exploiting this flaw could set up a malicious web server with a fraudulent certificate, intercept connections from vulnerable Haskell clients, and capture credentials and sensitive data transmitted during the session. Industries using delegated PKI structures, typical in banking and financial sectors, face elevated risk.
Version 1.9.1 of crypton-x509-validation has been released to address the vulnerability. All prior versions are vulnerable and should be updated immediately. While successful exploitation requires considerable setup and victim interaction, the potential impact on financial and enterprise systems warrants urgent patching.
Mentioned in this report
Source reporting: https://kb.cert.org/vuls/id/862559
Free public brief. Slack alerts on the vendors you run come with the paid plans, and a new account gets three days of them, no card.
What this brief leaves out
This page is the free tier: the write-up, the severity, the names. In the app the same report carries live profiles of the CVEs it names. The paid plans add the security research and news reporting the free tier leaves out.
It sits in a corpus of 16,436 reports from 149 sources, 661 of them written in the last seven days, and it grows through the day.
A new account starts with three days of all of it, no card, then keeps the government and CERT reporting free. Slack alerts are a paid-plan feature: name the vendors you run and Slack hears about the reports that touch them, not the rest of the week's. Nothing is charged unless you subscribe.
Create a free account What it costs