Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach network service accepting nickname input
-
ExploitSubmit crafted string to precis transform
-
ExecutionTrigger out-of-bounds slice panic
-
ImpactProcess/goroutine crash denies service
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitability requires that the target application actually invoke the golang.org/x/text/secure/precis Nickname profile to transform/enforce attacker-controlled input (e.g., usernames or nicknames) into a short/undersized destination buffer; the panic occurs only on this specific code path. Applications that merely vendor golang.org/x/text without using the precis Nickname profile on untrusted input are not affected. Limiting factors: impact is denial of service only (a Go panic), there is no confidentiality or integrity impact, and the affected versions are golang.org/x/text/secure/precis < 0.41.0 (fixed in 0.41.0). No authentication or user interaction is required where the vulnerable path is reachable (PR:N/UI:N). |
| Impact | The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5) describes a network-reachable, low-complexity, unauthenticated flaw with impact confined to availability only - consistent with CWE-787 manifesting in Go as a runtime panic (out-of-bounds slice) rather than exploitable memory corruption. This is a denial-of-service issue, NOT a code-execution or data-disclosure one, so the 'HIGH' severity reflects crash/availability risk only. Exploitation status: no public exploit identified at time of analysis - the input provides no KEV listing and no POC flag. EPSS is not provided, so probabilistic exploitation likelihood cannot be stated. The signals are internally consistent (network DoS, no confidentiality/integrity impact) with no CVSS-vs-description conflict. Real-world priority is moderate and strongly dependent on reachability: it is a real risk only for services that pass untrusted input through the precis Nickname profile; absent that code path, the library's mere presence is not exploitable. Note the tags 'Buffer Overflow'/'Memory Corruption' overstate the technical nature - in Go this is a bounds-checked panic (abort), not attacker-controlled memory corruption. |
| Exploit ScenarioDerived | An attacker sends a crafted string (e.g., a username/nickname field) to a network service that normalizes it using golang.org/x/text/secure/precis Nickname profile into an undersized destination buffer. The transformation triggers an out-of-bounds slice panic, crashing the goroutine or process and causing a denial of service. No public exploit code has been identified, and the attack is unauthenticated and low-complexity per the CVSS vector. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Denial of service via out-of-bounds slice access in the Nickname profile of golang.org/x/text/secure/precis (all versions before 0.41.0), where transforming crafted input into a short destination buffer triggers a Go runtime panic. The flaw is remotely reachable and unauthenticated (CVSS 3.1 AV:N/AC:L/PR:N/UI:N, base 7.5), but impact is confined to availability (C:N/I:N/A:H) because Go's memory-safe runtime converts the invalid slice access into a panic rather than exploitable memory corruption. Applications are only exposed if they actually invoke the precis Nickname profile on attacker-controlled strings such as usernames or nicknames; projects that merely depend on x/text without hitting that code path are unaffected. No public exploit identified at time of analysis, and vendor-released patch: golang.org/x/text 0.41.0.
RemediationAI
Upgrade to the vendor-released fixed version: golang.org/x/text v0.41.0 (run go get golang.org/x/text@v0.41.0 in each affected module, then go mod tidy and rebuild; use govulncheck to confirm no remaining reachable call paths). Verify that the rebuilt binary actually resolves the patched module version rather than an older one pinned by a transitive dependency or a vendor directory, and roll the new image to all instances that process nicknames. If immediate upgrade is not possible, restrictive compensating controls include enforcing a hard maximum length on any input passed to the precis Nickname profile - rejecting nicknames longer than the destination buffer can hold - and appending an ASCII-only fast path so untrusted strings never reach the transformation when they exceed the safe bound; the trade-off is that legitimately long or non-ASCII nicknames are rejected or degraded, causing user-visible validation failures. Additionally, wrap the transformation call in a deferred recover() and return a validation error instead of propagating the panic, which converts the crash into a handled failure but is a band-aid that still aborts the current request and must not be treated as a substitute for patching. Where the Nickname profile is not required for the application's semantics, avoid applying it to untrusted input entirely. Advisory references: https://pkg.go.dev/vuln/GO-2026-6629, https://go.dev/issue/80112, and the fix at https://go.dev/cl/793360.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in go, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
golang.org/x/text/secure/precis implements the IETF PRECIS framework (RFC 8264/8265/8266) for preparation, enforcement, and comparison of internationalized strings; the Nickname profile uses it to normalize and validate user-facing identifiers such as nicknames and usernames. The underlying defect is classified as CWE-787 (out-of-bounds write), and the affected component is recorded by CPE as cpe:2.3:a:golang.org/x/text:golang.org/x/text/secure/precis, i.e. the secure/precis package distributed as part of the golang.org/x/text module. Because the package's transformation path writes into a caller-supplied or internally sized destination buffer that can be shorter than the transformed output of crafted input, an attacker-supplied string can drive an index past the buffer's bounds. In Go this invalid write/index does not translate into arbitrary memory corruption - the runtime detects the violation and panics with an out-of-bounds slice error, which is why the assessed vector shows no confidentiality or integrity impact and an availability-only (A:H) outcome. The practical effect on a server is a crash or abrupt termination of the goroutine/process handling the request, i.e. a reliable per-request DoS primitive wherever the Nickname profile is applied to untrusted input. The upstream fix is tracked from the Go issue and CL references (https://go.dev/issue/80112, https://go.dev/cl/793360) and is published in the Go vulnerability database as GO-2026-6629. Reported by Go, with patch available from vendor and a fixed version of 0.41.0 per EUVD (EUVD-2026-94532).
Know when Golang Org X Text Secure Precis gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Untrusted input reaches the precis transform remotely without auth (AV:N/PR:N/UI:N/AC:L); the out-of-bounds panic is a crash, so A:H with C:N/I:N.
Primary rating from Vendor (Go).
CVSS VectorVendor: Go
Lifecycle Timeline
4DescriptionCVE.org
The Nickname profile can panic with an out-of-bounds slice error when transforming crafted input into a short destination buffer.
Executive ViewAI
A denial-of-service flaw in golang.org/x/text's Nickname profile can cause Go applications that process attacker-controlled nicknames or usernames to panic and crash, disrupting service for users of those applications. The issue is remotely reachable and unauthenticated, but impact is limited to availability with no data exposure or code execution. No public exploit identified at time of analysis, and leadership should prioritize upgrading affected services to golang.org/x/text 0.41.0 to prevent avoidable outages.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.
EUVD-2026-94532
GHSA-gx9w-9qq8-m485
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB