CVE-2026-56852 Infinite loop on invalid input in golang.org/x/text
An attacker can cause a denial of service by triggering an infinite loop in the Go text normalization library with invalid UTF-8 input.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-56852?
CVE-2026-56852 is a high-severity denial of service vulnerability in golang.org/x/text/unicode/norm, published on 21 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
A norm.Iter can enter an infinite loop when handling input containing invalid UTF-8 bytes.
Weakness: CWE-835
Which versions are affected by CVE-2026-56852?
1 open source package ship an affected version, including golang.org/x/text.
| Package | Affected | Fixed in |
|---|---|---|
golang.org/x/text Go | All versions | 0.39.0 |
Linux distribution packages (39)
rhc Red Hat:enterprise_linux:8::appstream | All versions | 1:0.2.5-11.el8_10 |
rhc-debuginfo Red Hat:enterprise_linux:8::appstream | All versions | 1:0.2.5-11.el8_10 |
rhc-debugsource Red Hat:enterprise_linux:8::appstream | All versions | 1:0.2.5-11.el8_10 |
buildah Red Hat:hummingbird:1 | All versions | 0:1.44.0-3.3.hum1 |
caddy Red Hat:hummingbird:1 | All versions | 0:2.11.4-0.3.hum1 |
cosign Red Hat:hummingbird:1 | All versions | 0:3.1.2-0.3.hum1 |
etcd Red Hat:hummingbird:1 | All versions | 0:3.7.0-0.3.hum1 |
go-fdo-client Red Hat:hummingbird:1 | All versions | 0:1.0.0-2.1.hum1 |
go-fdo-server Red Hat:hummingbird:1 | All versions | 0:1.0.1-0.5.hum1 |
go-fdo-server-manufacturer Red Hat:hummingbird:1 | All versions | 0:1.0.1-0.5.hum1 |
go-fdo-server-owner Red Hat:hummingbird:1 | All versions | 0:1.0.1-0.5.hum1 |
go-fdo-server-rendezvous Red Hat:hummingbird:1 | All versions | 0:1.0.1-0.5.hum1 |
golang1.25 Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.25-bin Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.25-docs Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.25-misc Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.25-src Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.25-tests Red Hat:hummingbird:1 | All versions | 0:1.25.12-1.1.hum1 |
golang1.26 Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
golang1.26-bin Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
golang1.26-docs Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
golang1.26-misc Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
golang1.26-src Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
golang1.26-tests Red Hat:hummingbird:1 | All versions | 0:1.26.5-0.1.1.hum1 |
grype Red Hat:hummingbird:1 | All versions | 0:0.116.0-0.1.hum1 |
hugo Red Hat:hummingbird:1 | All versions | 0:0.164.0-0.1.2.hum1 |
jaeger Red Hat:hummingbird:1 | All versions | 0:2.20.0-0.2.hum1 |
kubernetes1.35 Red Hat:hummingbird:1 | All versions | 0:1.35.6-2.1.hum1 |
kubernetes1.35-client Red Hat:hummingbird:1 | All versions | 0:1.35.6-2.1.hum1 |
kubernetes1.35-kubeadm Red Hat:hummingbird:1 | All versions | 0:1.35.6-2.1.hum1 |
kubernetes1.35-systemd Red Hat:hummingbird:1 | All versions | 0:1.35.6-2.1.hum1 |
kubernetes1.36 Red Hat:hummingbird:1 | All versions | 0:1.36.2-6.1.hum1 |
kubernetes1.36-client Red Hat:hummingbird:1 | All versions | 0:1.36.2-6.1.hum1 |
kubernetes1.36-kubeadm Red Hat:hummingbird:1 | All versions | 0:1.36.2-6.1.hum1 |
kubernetes1.36-systemd Red Hat:hummingbird:1 | All versions | 0:1.36.2-6.1.hum1 |
oauth2-proxy Red Hat:hummingbird:1 | All versions | 0:7.15.3-0.3.hum1 |
opentofu1.10 Red Hat:hummingbird:1 | All versions | 0:1.10.10-0.3.hum1 |
opentofu1.11 Red Hat:hummingbird:1 | All versions | 0:1.11.13-0.2.hum1 |
opentofu1.12 Red Hat:hummingbird:1 | All versions | 0:1.12.5-0.2.hum1 |
How do I fix CVE-2026-56852?
Upgrade golang.org/x/text to 0.39.0 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2026-56852 being exploited?
There is no known exploitation of CVE-2026-56852 in the wild and no public exploit code.
Public exploit code: 1 proofs of concept on GitHub.
Sources
Also known as AZL-93075, AZL-93078, AZL-93081, AZL-93087, AZL-93093, AZL-93099 and 1711 more.