Inefficient candidate hostname parsing in crypto/x509 (Go standard library crypto/x509)
At a glance
- Source
- NVD
- EPSS
- EPSS 0.59 % · percentile 48 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- Go
- NVD status
- Awaiting Analysis
Description
(*x509.Certificate).VerifyHostname previously called matchHostnames in a loop over all DNS Subject Alternative Name (SAN) entries. This caused strings.Split(host, ".") to execute repeatedly on the same input hostname. With a large DNS SAN list, verification costs scaled quadratically based on the number of SAN entries multiplied by the hostname's label count. Because x509.Verify validates hostnames before building the certificate chain, this overhead occurred even for untrusted certificates.
Weaknesses (CWE)
- CWE-606 — Unchecked Input for Loop Condition
References
- https://go.dev/cl/783621
- https://go.dev/issue/79694
- https://groups.google.com/g/golang-announce/c/tKs3rmcBcKw
- https://pkg.go.dev/vuln/GO-2026-5037
- https://access.redhat.com/security/cve/CVE-2026-27145
- https://bugzilla.redhat.com/show_bug.cgi?id=2484207
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-27145.json
- https://access.redhat.com/errata/RHSA-2026:42079
- https://access.redhat.com/errata/RHSA-2026:42080
- https://access.redhat.com/errata/RHSA-2026:68334
- https://access.redhat.com/errata/RHSA-2026:68335
- https://access.redhat.com/errata/RHSA-2026:53416
- https://access.redhat.com/errata/RHSA-2026:50319
- https://access.redhat.com/errata/RHSA-2026:54757
- https://access.redhat.com/errata/RHSA-2026:57482
- https://access.redhat.com/errata/RHSA-2026:42082
- https://access.redhat.com/errata/RHSA-2026:42150
- https://access.redhat.com/errata/RHSA-2026:42151
- https://access.redhat.com/errata/RHSA-2026:42240
- https://access.redhat.com/errata/RHSA-2026:49703
- https://access.redhat.com/errata/RHSA-2026:49702
- https://access.redhat.com/errata/RHSA-2026:53413
- https://access.redhat.com/errata/RHSA-2026:53374
- https://access.redhat.com/errata/RHSA-2026:54168
- https://access.redhat.com/errata/RHSA-2026:51187
- https://access.redhat.com/errata/RHSA-2026:46394
- https://access.redhat.com/errata/RHSA-2026:46395
- https://access.redhat.com/errata/RHSA-2026:29980
- https://access.redhat.com/errata/RHSA-2026:35832
- https://access.redhat.com/errata/RHSA-2026:34357
- https://access.redhat.com/errata/RHSA-2026:39005
- https://access.redhat.com/errata/RHSA-2026:42946
- https://access.redhat.com/errata/RHSA-2026:39573
- https://access.redhat.com/errata/RHSA-2026:38995
- https://access.redhat.com/errata/RHSA-2026:41930
- https://access.redhat.com/errata/RHSA-2026:61253
- https://access.redhat.com/errata/RHSA-2026:60354
- https://access.redhat.com/errata/RHSA-2026:57649
- https://access.redhat.com/errata/RHSA-2026:53412
- https://access.redhat.com/errata/RHSA-2026:60315
- https://access.redhat.com/errata/RHSA-2026:49712
- https://access.redhat.com/errata/RHSA-2026:53415
- https://access.redhat.com/errata/RHSA-2026:54401
- https://access.redhat.com/errata/RHSA-2026:29981
- https://access.redhat.com/errata/RHSA-2026:34359
- https://access.redhat.com/errata/RHSA-2026:39879
- https://access.redhat.com/errata/RHSA-2026:36317
- https://access.redhat.com/errata/RHSA-2026:54531
- https://access.redhat.com/errata/RHSA-2026:61314
- https://access.redhat.com/errata/RHSA-2026:54500
- +50 more
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | MEDIUM 6.5 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H | CISA-ADP |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | redhat-SADP |
| CVSS 3.1 | MEDIUM 6.5 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H | NVD · 134c704f-9b21-4f2e-91b3-4a467353bcc0 (Secondary) |
| CVSS 3.1 | HIGH 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | NVD · 0b0ca135-0b70-47e7-9f44-1890c2a1c46c (Secondary) |
Advisories
- GO-2026-5037 — Inefficient candidate hostname parsing in crypto/x509
European references
- ENISA EUVD · EUVD-2026-34038
- GCVE · GCVE-0-2026-27145
CERT-FR advisories
- CERTFR-2026-AVI-1385 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1281 — Multiples vulnérabilités dans les produits Splunk · cert.ssi.gouv.fr
- CERTFR-2026-AVI-1249 — Multiples vulnérabilités dans les produits VMware · cert.ssi.gouv.fr
Affected products
| Product | Versions |
|---|---|
| Go standard library · crypto/x509 | affected 0 < 1.25.11 ; affected 1.26.0-0 < 1.26.4 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| CERT-FR (ANSSI) | Licence Ouverte / Etalab 2.0 |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |