VORANT. Threat Intelligence Research Create a free account

Haskell TLS stack bypasses X.509 NameConstraints

Published Vorant ratingroutine vulnerability Financial ServicesEducation

Vorant's rating weighs the evidence in the report: confirmed exploitation, victims claimed, CVSS and EPSS, and how many sources agree. It rates the report, not your assets.

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

Vulnerabilities CVE-2026-9648

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