AZL-113471: CVE-2026-97036 affecting package golang 1.27.4-1

Published Nov 11, 2026
·
Updated

On Darwin, building a malicious package that uses cgo could cause arbitrary code execution when using the Apple linker due to passing "-l tolibrary <path>" in a "#cgo LDFLAGS" directive. The Apple linker recombines the separated arguments "-l" and "tolibrary" into "-ltolibrary", which loads an arbitrary LTO plugin dynamic library at link time. The go command now disallows "-l" followed by "tolibrary" in "#cgo LDFLAGS", rejects "-lazylibrary", "-lazyframework", "-loadhidden", "-library", and "-library-path", and checks recombined "-l" arguments against disallowed linker flags and patterns.

Affected Software

1 affected component
azure-linux/golang>=1.27.0<=1.27.4-1

Event History

Nov 11, 2026
Advisory Published
via OSV·05:19 AM
Data Sourced
via OSV·05:19 AM
DescriptionAffected Software

Child vulnerabilities

Contains the following vulnerabilities.

Frequently Asked Questions

1

Who is exposed to this issue?

The issue applies on Darwin systems when building a malicious package that uses cgo. Builds that do not use the Apple linker or do not process attacker-controlled cgo linker flags are not described as affected.

2

What must an attacker control to exploit it?

An attacker needs to supply or cause a build to use a malicious cgo package containing a #cgo LDFLAGS directive with the separated arguments "-l to_library <path>". The Apple linker can recombine these into "-lto_library" and load an arbitrary LTO plugin dynamic library during linking.

3

How can I tell whether a build may have been vulnerable?

Review cgo-enabled packages built on Darwin for #cgo LDFLAGS containing "-l" followed by "to_library", or other linker options now rejected by the go command: "-lazy_library", "-lazy_framework", "-load_hidden", "-library", and "-library-path". Also check whether build inputs included untrusted or malicious packages.

4

What mitigation is available in the updated package?

The updated go command disallows "-l" followed by "to_library", rejects the listed linker flags, and checks recombined "-l" arguments against disallowed flags and patterns. Until the update is deployed, avoid building untrusted cgo packages on Darwin.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203