AZL-113648: CVE-2026-97039 affecting package tensorflow 2.16.1-11

Published Nov 11, 2026
·
Updated

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.

Affected Software

1 affected component
azure-linux/tensorflow<=2.16.1-11

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

What would an attacker need to exploit this issue?

An attacker would need to cause a Go build to process a malicious package containing #cgo pkg-config directives. The malicious directives could reference local or otherwise untrusted .pc files or pass previously permitted pkg-config options and arguments that influence compiler or linker flags.

2

Are builds without cgo pkg-config directives affected?

The described issue is specific to packages using #cgo pkg-config directives and to cgo compiler flags returned by pkg-config. The provided information does not indicate impact for builds that do not process these cgo/pkg-config inputs.

3

What mitigations are available if an update cannot be applied immediately?

Avoid building untrusted Go packages that use #cgo pkg-config directives, particularly packages that include local .pc paths, path separators, .. components, or pkg-config options such as --with-path=, --personality=, and manipulated --define-variable= values. Restrict the build environment so untrusted package directories and pkg-config files cannot affect builds.

4

How can I identify potentially affected source packages?

Inspect Go source for #cgo pkg-config directives. Prioritize directives containing .pc arguments, path separators, .., --with-path=, --personality=, or --define-variable= values beginning with = or $, and review pkg-config-generated cgo CPPFLAGS used during builds.

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