CVE-2026-9648
CVE-2026-9648
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
9.1
CVE-2026-9648
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
CVE-2026-9648- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
EUVDEUVD-2026-36248
9.1
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
EUVD-2026-36248- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-7jx5-vvgh-vcjw
9.1
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS...
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
GHSA-7jx5-vvgh-vcjw- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
NVD
9.1
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
CVE-2026-9648- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-9648
9.1
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
DEBIAN-CVE-2026-9648- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-9648
9.1
The crypton-x509-validation Haskell library fails to enforce X.509 NameConstraints, allowing TLS clients to accept certificates whose Subject Alternative Names fall outside the issuing CA’s permitted subtrees. This oversight enables an attacker who compromises a name-constrained sub-CA to impersonate domains beyond its intended scope.
- Record
UBUNTU-CVE-2026-9648- CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
Show 11 moreShow less
OSVHSEC-2026-0008 No score
crypton-x509-validation and crypton-x509 do not enforce X.509 Name Constraints
crypton-x509-validation and crypton-x509 do not enforce X.509 Name Constraints
The crypton-x509-validation and crypton-x509 libraries did not
enforce the X.509 Name Constraints extension during certificate
validation. The Name Constraints extension is a critical X.509
extension that restricts the namespace (permitted and excluded
subtrees) for which a CA is authorized to issue certificates.
Without this enforcement, a TLS client would accept certificates with Subject Alternative Names (SANs) that fall outside the issuing CA's permitted subtrees. An attacker with access to a name-constrained sub-CA's private key could therefore issue certificates for domains outside the sub-CA's intended scope, enabling impersonation of arbitrary domains and man-in-the-middle attacks on TLS connections.
The older x509 and x509-validation packages are also affected but
are no longer maintained and have no fix available.
This issue was fixed in crypton-x509-validation-1.9.1 and
crypton-x509-1.9.1.
- Record
HSEC-2026-0008- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11077-1 No score
ghc-aws-0.25.2-1.1 on GA media
These are all security issues fixed in the ghc-aws-0.25.2-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11077-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11078-1 No score
ghc-crypton-asn1-encoding-0.10.0-1.1 on GA media
These are all security issues fixed in the ghc-crypton-asn1-encoding-0.10.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11078-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11079-1 No score
ghc-crypton-asn1-parse-0.10.0-1.1 on GA media
These are all security issues fixed in the ghc-crypton-asn1-parse-0.10.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11079-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11080-1 No score
ghc-crypton-asn1-types-0.4.1-1.1 on GA media
These are all security issues fixed in the ghc-crypton-asn1-types-0.4.1-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11080-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11081-1 No score
ghc-crypton-pem-0.3.0-1.1 on GA media
These are all security issues fixed in the ghc-crypton-pem-0.3.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11081-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11082-1 No score
ghc-crypton-x509-1.9.1-1.1 on GA media
These are all security issues fixed in the ghc-crypton-x509-1.9.1-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11082-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11083-1 No score
ghc-crypton-x509-store-1.9.0-1.1 on GA media
These are all security issues fixed in the ghc-crypton-x509-store-1.9.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11083-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11084-1 No score
ghc-crypton-x509-system-1.9.0-1.1 on GA media
These are all security issues fixed in the ghc-crypton-x509-system-1.9.0-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11084-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11085-1 No score
ghc-crypton-x509-validation-1.9.1-1.1 on GA media
These are all security issues fixed in the ghc-crypton-x509-validation-1.9.1-1.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11085-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11087-1 No score
git-annex-10.20260601-2.1 on GA media
These are all security issues fixed in the git-annex-10.20260601-2.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11087-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
haskell-crypton-x509Debian:13 |
All versions, plus listed versions 1.7.7-11.7.7-2 |
None known |
haskell-crypton-x509Debian:14 |
All versions, plus listed versions 1.7.7-11.7.7-2 |
None known |
haskell-crypton-x509-validationDebian:13 |
All versions, plus listed versions 1.6.12-31.6.14-1 |
None known |
haskell-crypton-x509-validationDebian:14 |
All versions, plus listed versions 1.6.12-31.6.14-1 |
None known |
crypton-x509-validationHackage |
1.6.12 up to 1.9.1, plus listed versions 1.6.131.6.141.8.01.9.0 |
1.9.1 |
crypton-x509Hackage |
1.7.6 up to 1.9.1, plus listed versions 1.7.71.8.01.9.0 |
1.9.1 |
x509-validationHackage |
1.4.0 and later, plus listed versions 1.4.11.4.21.4.31.4.41.4.5 Show 18 moreShow less1.4.61.4.71.4.81.5.01.5.11.5.21.6.01.6.11.6.101.6.111.6.121.6.21.6.31.6.41.6.51.6.71.6.81.6.9 |
None known |
x509Hackage |
1.4.0 and later, plus listed versions 1.4.11.4.101.4.111.4.121.4.13 Show 25 moreShow less1.4.21.4.31.4.41.4.51.4.61.4.71.4.81.4.91.5.01.5.0.11.5.11.6.01.6.11.6.21.6.31.6.41.6.51.7.01.7.11.7.21.7.31.7.41.7.51.7.61.7.7 |
None known |
haskell-crypton-x509-validationUbuntu:24.04:LTS |
All versions, plus listed versions 1.6.12-11.6.12-21.6.12-2build1 |
None known |
haskell-crypton-x509-validationUbuntu:25.10 |
All versions, plus listed versions 1.6.12-3build1 |
None known |
Show 12 moreShow less
| Package | Affected | Fixed |
|---|---|---|
haskell-crypton-x509-validationUbuntu:26.10 |
All versions, plus listed versions 1.6.14-1build1 |
None known |
haskell-crypton-x509-validationUbuntu:26.04:LTS |
All versions, plus listed versions 1.6.12-3build11.6.14-1build1 |
None known |
ghc-awsopenSUSE:Tumbleweed |
before 0.25.2-1.1 | 0.25.2-1.1 |
ghc-crypton-asn1-encodingopenSUSE:Tumbleweed |
before 0.10.0-1.1 | 0.10.0-1.1 |
ghc-crypton-asn1-parseopenSUSE:Tumbleweed |
before 0.10.0-1.1 | 0.10.0-1.1 |
ghc-crypton-asn1-typesopenSUSE:Tumbleweed |
before 0.4.1-1.1 | 0.4.1-1.1 |
ghc-crypton-pemopenSUSE:Tumbleweed |
before 0.3.0-1.1 | 0.3.0-1.1 |
ghc-crypton-x509openSUSE:Tumbleweed |
before 1.9.1-1.1 | 1.9.1-1.1 |
ghc-crypton-x509-storeopenSUSE:Tumbleweed |
before 1.9.0-1.1 | 1.9.0-1.1 |
ghc-crypton-x509-systemopenSUSE:Tumbleweed |
before 1.9.0-1.1 | 1.9.0-1.1 |
ghc-crypton-x509-validationopenSUSE:Tumbleweed |
before 1.9.1-1.1 | 1.9.1-1.1 |
git-annexopenSUSE:Tumbleweed |
before 10.20260601-2.1 | 10.20260601-2.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-9648 is a critical vulnerability (CVSS 9.1) in Haskell Programming Language Crypton-certificate, published June 3, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.22%, the 12th percentile. Fixed in crypton-x509-validation 1.9.1.
References
github.com/kazu-yamamoto/crypton-certificate/pull/30
github.com/kazu-yamamoto/crypton-certificate/pull/30/changes/f4b77edf6ead77f4a886da40e41eab20f0180e39
hackage.haskell.org/package/crypton-x509-validation-1.9.1/revisions
github.com/haskell/security-advisories/pull/332
kb.cert.org/vuls/id/862559
nvd.nist.gov/vuln/detail/CVE-2026-9648