CVE-2026-97039 Flag sanitization bypass via "#cgo pkg-config:" directives in cmd/go
go toolchain cmd/go: no CVSS score yet. EPSS 0.2% estimated probability of exploitation activity in the next 30 days. Fixed in toolchain 1.26.11, 1.27.4.
On this page
Building a malicious package that uses "#cgo pkg-config:" directives could load untrusted pkg-config ".pc" files or inject unvalidated compiler and linker flags. The pkg-config flag allowlist previously permitted "--with-path=" and "--personality=", allowed "--define-variable=" values beginning with "=" or "$" (which can rewrite paths in system ".pc" files into sysroot-prefixed "-L=" or "-L$SYSROOT" linker search paths), and allowed package arguments ending in ".pc" or containing path separators or "..", which caused pkg-config to load local ".pc" files directly from the package directory. In addition, flags returned by "pkg-config --cflags" in cgoCPPFLAGS were not checked when determining whether internal linking is safe. The go command now disallows "--with-path=", "--personality=", leading "=" or "$" characters in "--define-variable=" values, and local ".pc" paths in "#cgo pkg-config:" directives, and inspects cgoCPPFLAGS when checking internal linking compatibility.
- EPSS
- 0.2% estimated probability of exploitation activity in the next 30 days; 14th percentile. Scored 2026-11-13. A forecast for this CVE across the internet, not for your own systems.
- Published
- Modified
- Assigned by
- Go (CNA)
- NVD analysis
- Awaiting analysis
- Record from
- the NVD, synced
Ask an AI about this CVE
Show the prompt
Explain CVE-2026-97039 for an engineer deciding whether to act. Use https://cve.bz/api/public/cves/CVE-2026-97039?via=ask-ai-copy and https://cve.bz/cve/CVE-2026-97039?via=ask-ai-copy as the source of truth: what is affected and which versions fix it, whether it is in CISA KEV, public exploits, and its EPSS (an internet-wide 30-day estimate of exploitation activity, not a forecast for my systems). If they give no fixed versions, use the CVE record https://cveawg.mitre.org/api/cve/CVE-2026-97039 or the vendor advisory, not third-party mirrors. Tell me how to check whether I am affected and how to verify a fix. Cite the sources and say where they are uncertain.Opens a third-party assistant; its answer is its own, not cve.bz's. The prompt holds only this CVE's id and public links.
Affected
- go toolchain:cmd/go
Versions
From the CNA's record in the CVE List.
| Product | Affected |
|---|---|
| Go toolchain cmd/go | before 1.26.11 |
| Go toolchain cmd/go | from 1.27.0-0 before 1.27.4 |
Fix and patched versions
toolchain(Go): fixed in 1.26.11, 1.27.4- Debian, SUSE, openSUSE, Alpine: fixed package versions per release
Packages (OSV)
| Advisory | Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|---|
| GO-2026-6852 | Go | toolchain | <1.26.11 >=1.27.0-0 <1.27.4 | 1.26.11, 1.27.4 |
Linux distributions
| Distribution | Release | Package | Fixed in | Advisory |
|---|---|---|---|---|
| Debian | 12 | golang-1.19 | no fix listed | DEBIAN-CVE-2026-97039 |
| Debian | 13 | golang-1.24 | no fix listed | DEBIAN-CVE-2026-97039 |
| Debian | 14 | golang-1.26 | 1.26.11-1 | DEBIAN-CVE-2026-97039 |
| Debian | 14 | golang-1.27 | 1.27.4-1 | DEBIAN-CVE-2026-97039 |
| Ubuntu | 14.04:LTS | golang-1.10 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 16.04:LTS | golang-1.6, golang-1.10 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 18.04:LTS | golang-1.8, golang-1.9, golang-1.10 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 20.04:LTS | golang-1.13, golang-1.14, golang-1.18 and 3 more | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 22.04:LTS | golang-1.17, golang-1.18, golang-1.20 and 6 more | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 24.04:LTS | golang-1.21, golang-1.22, golang-1.23 and 3 more | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 26.04:LTS | golang-1.23, golang-1.24, golang-1.25 and 1 more | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | 26.10 | golang-1.26, golang-1.27 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | Pro:16.04:LTS | golang-1.13, golang-1.18 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | Pro:18.04:LTS | golang-1.13, golang-1.16, golang-1.18 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | Pro:20.04:LTS | golang-1.16 | no fix listed | UBUNTU-CVE-2026-97039 |
| Ubuntu | Pro:22.04:LTS | golang-1.13 | no fix listed | UBUNTU-CVE-2026-97039 |
| SUSE | Linux Enterprise High Performance Computing 15 SP4-ESPOS, Linux Enterprise High Performance Computing 15 SP4-LTSS, Linux Enterprise High Performance Computing 15 SP5-ESPOS and 8 more | go1.26 | 1.26.11-150000.1.39.1 | SUSE-SU-2026:5227-1 |
| SUSE | Linux Enterprise High Performance Computing 15 SP4-ESPOS, Linux Enterprise High Performance Computing 15 SP4-LTSS, Linux Enterprise High Performance Computing 15 SP5-ESPOS and 8 more | go1.27 | 1.27.4-150000.1.18.1 | SUSE-SU-2026:5226-1 |
| openSUSE | Tumbleweed | go1.26 | 1.26.11-1.1 | openSUSE-SU-2026:12529-1 |
| Alpine | v3.24 | go | 1.26.11-r0 | ALPINE-CVE-2026-97039 |
| Azure Linux | 3 | gcc | no fix listed | AZL-113390 |
| Azure Linux | 3 | golang | no fix listed | AZL-113423 AZL-113456 |
| Azure Linux | 3 | python-tensorboard | no fix listed | AZL-113600 |
| Azure Linux | 3 | tensorflow | no fix listed | AZL-113648 |
From the distributions' data via OSV.dev: the Debian Security Tracker; Ubuntu Security Notices © Canonical Ltd., CC BY-SA 4.0; SUSE security data, CC BY 4.0; the Alpine secdb, CC BY-SA 4.0; Microsoft's Azure Linux vulnerability data, MIT. Modified: reformatted and linked to CVE records. Credits. On the distributions' own pages: Debian · Ubuntu · SUSE · openSUSE · Alpine.