{"affected":[{"defaultStatus":"unaffected","ecosystem":"https://pkg.go.dev","packageName":"cmd/go","product":"cmd/go","source":"CNA: Go","vendor":"Go toolchain","versions":[{"lessThan":"1.26.11","status":"affected","version":"0","versionType":"semver"},{"lessThan":"1.27.4","status":"affected","version":"1.27.0-0","versionType":"semver"}]}],"cveId":"CVE-2026-97037","cwes":["CWE-94"],"description":"Building a malicious package that uses cgo could cause arbitrary code execution at link time by passing linker script files to the host linker via \"#cgo LDFLAGS\". Split \"-Wl,\" flags that consume a following argument (such as \"-Wl,-rpath\", \"-Wl,--just-symbols\", and \"-Wl,-undefined\") previously accepted a bare second argument without a \"-Wl,\" prefix, which the compiler driver passes directly to the linker as a positional input file. Additionally, when using GNU ld.bfd, flags such as \"-framework\", \"-Wl,-framework\", \"-Wl,-undefined\", \"-Wl,--just-symbols\", \"-Wl,-R\", \"-Wl,-subsystem\", and (on non-Darwin platforms) \"-Wl,-sectcreate\" could cause ld.bfd to interpret their arguments as linker scripts if they named a regular file on disk. The go command now requires a \"-Wl,\" prefix on the second token of split \"-Wl,\" flags (except \"-Wl,-R\"), verifies that these flags do not reference linker script files, and disallows bare \"-Wl,--warn-backrefs-exclude\".","epss":null,"exploits":[],"kev":null,"metrics":[],"modifiedAt":1794366796142,"publishedAt":1794366796142,"references":[{"source":"CNA: Go","tags":[],"url":"https://go.dev/cl/862150"},{"source":"CNA: Go","tags":[],"url":"https://go.dev/issue/82573"},{"source":"CNA: Go","tags":[],"url":"https://groups.google.com/g/golang-announce/c/iY8TY0wWgbM"},{"source":"CNA: Go","tags":[],"url":"https://pkg.go.dev/vuln/GO-2026-6854"}],"remediation":[],"revision":"e89c2239cb9b8444a552714ee9d9f76b7728b5cf0ff2719120c48c3d5b565b2c","sources":[{"modifiedAt":1794366796142,"name":"CNA: Go","retrievedAt":1794370195757,"url":"https://www.cve.org/CVERecord?id=CVE-2026-97037"}],"ssvc":null,"status":"published","title":"Linker script injection via split -Wl, flags and Darwin or symbol linker flags in cgo in cmd/go","updatedAt":1794370195757}