CVE-2023-29405

Improper sanitization of LDFLAGS with embedded spaces in go command with cgo in cmd/go

Description

The go command may execute arbitrary code at build time when using cgo. This may occur when running "go get" on a malicious module, or when running any other command which builds untrusted code. This is can by triggered by linker flags, specified via a "#cgo LDFLAGS" directive. Flags containing embedded spaces are mishandled, allowing disallowed flags to be smuggled through the LDFLAGS sanitization by including them in the argument of another flag. This only affects usage of the gccgo compiler.

Category

9.8
CVSS
Severity: Critical
CVSS 3.1 •
EPSS 0.33%
Vendor Advisory go.dev
Affected: Go toolchain cmd/go
Affected: Go toolchain cmd/cgo
Published at:
Updated at:

References

Frequently Asked Questions

What is the severity of CVE-2023-29405?
CVE-2023-29405 has been scored as a critical severity vulnerability.
How to fix CVE-2023-29405?
To fix CVE-2023-29405, make sure you are using an up-to-date version of the affected component(s) by checking the vendor release notes. As for now, there are no other specific guidelines available.
Is CVE-2023-29405 being actively exploited in the wild?
As for now, there are no information to confirm that CVE-2023-29405 is being actively exploited. According to its EPSS score, there is a ~0% probability that this vulnerability will be exploited by malicious actors in the next 30 days.
What software or system is affected by CVE-2023-29405?
CVE-2023-29405 affects Go toolchain cmd/go, Go toolchain cmd/cgo.
This platform uses data from the NIST NVD, MITRE CVE, MITRE CWE, First.org and CISA KEV but is not endorsed or certified by these entities. CVE is a registred trademark of the MITRE Corporation and the authoritative source of CVE content is MITRE's CVE web site. CWE is a registred trademark of the MITRE Corporation and the authoritative source of CWE content is MITRE's CWE web site.
© 2025 Under My Watch. All Rights Reserved.