ALPINE-CVE-2026-97033: Alpine/go vulnerability

Published Nov 11, 2026
·
Updated

Building a malicious package that uses cgo could cause arbitrary code execution at build time through several compiler and linker flags permitted in "#cgo" directives. Specifically, "--sysroot" in GCC and Clang relocates compiler subprograms, spec files, and CRT startup objects to an attacker-controlled directory; "-target" in Clang falls back to executing target helper tools from the current working directory when not found in PATH; "-isysroot" and "-Wl,-syslibroot" can pass a regular file on disk to GNU ld.bfd, which interprets it as a positional linker script; and "-x" permitted specifying arbitrary compiler input languages beyond those supported by cgo. "--sysroot" and "-target" are now disallowed in "#cgo" flags, "-isysroot" and "-Wl,-syslibroot" are verified not to point to regular files, and "-x" is restricted to the C, C++, Objective-C, and assembler languages supported by cgo.

Affected Software

1 affected componentFixes available
alpine/go<1.26.11-r0
1.26.11-r0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade alpine/go to a version that resolves this vulnerability.

    Fixed in 1.26.11-r0

Event History

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

Frequently Asked Questions

1

Who is exposed to this issue?

Build environments that compile untrusted or malicious Go packages using cgo are exposed. The issue is triggered during package build time, so systems that only run already-built binaries are not described as affected by this data.

2

What does an attacker need to exploit it?

An attacker needs to cause a build of a malicious package containing #cgo directives. Those directives could supply compiler or linker flags that execute attacker-controlled tools or cause attacker-controlled files to be interpreted during compilation or linking.

3

Are the dangerous flags still accepted in #cgo directives?

No. --sysroot and -target are disallowed, while -isysroot and -Wl,-syslibroot are checked to ensure they do not reference regular files. The -x option is limited to C, C++, Objective-C, and assembler languages supported by cgo.

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