Описание
Previously, a user operating inside of a malicious Go project that defines a bogus golang.org/fips140 and operates a malicious GOMODPROXY the user chooses to connect to can serve an arbitrary module in its place. We now unpack the trusted ziphash for the bundled golang.org/fips140 module and construct its entry in the GOMODCACHE such that it can be verified by the toolchain.
A flaw was found in the Go toolchain (cmd/go). When a user works inside a malicious Go project that defines a bogus golang.org/fips140 module and connects to an untrusted Go module proxy (GOMODPROXY), the proxy can serve an arbitrary replacement module that still passes local verification. This can lead to arbitrary code execution during Go build or module download operations.
Отчет
This issue is rated Moderate. Exploitation requires a developer to operate inside a maliciously crafted Go project and to use an untrusted module proxy. The golang toolchain is primarily a development and build-time component, and this is not a typical Red Hat product runtime configuration. Successful exploitation can result in arbitrary code execution as the user running the go command. Go versions before 1.24 do not include the bundled golang.org/fips140 module handling and are not affected.
Меры по смягчению последствий
Do not point GOPROXY or related module proxy settings at untrusted proxies, and do not build untrusted Go projects while using a non-default proxy. Prefer the default Go module proxy and checksum database.
Затронутые пакеты
| Платформа | Пакет | Состояние | Рекомендация | Релиз |
|---|---|---|---|---|
| Exploit Intelligence | exploit-intelligence/vulnerability-analysis-rhel9 | Out of support scope | ||
| Migration Toolkit for Applications 8 | mta/mta-go-external-provider-rhel9 | Fix deferred | ||
| Red Hat Enterprise Linux 10 | ubi10/go-toolset | Fix deferred | ||
| Red Hat Enterprise Linux 8 | ubi8/go-toolset | Fix deferred | ||
| Red Hat Enterprise Linux 9 | ubi9/go-toolset | Fix deferred | ||
| Red Hat Hardened Images | golang1.25 | Will not fix | ||
| Red Hat OpenShift Container Platform 4 | openshift4/ose-operator-sdk-rhel8 | Fix deferred | ||
| Red Hat OpenShift Container Platform 4 | openshift4/ose-operator-sdk-rhel9 | Fix deferred | ||
| Red Hat OpenShift Dev Spaces | devspaces/udi-rhel9 | Fix deferred | ||
| Red Hat Enterprise Linux 10 | golang | Fixed | RHSA-2026:86093 | 20.10.2026 |
Показывать по
Дополнительная информация
Статус:
6.7 Medium
CVSS3
Связанные уязвимости
Previously, a user operating inside of a malicious Go project that defines a bogus golang.org/fips140 and operates a malicious GOMODPROXY the user chooses to connect to can serve an arbitrary module in its place. We now unpack the trusted ziphash for the bundled golang.org/fips140 module and construct its entry in the GOMODCACHE such that it can be verified by the toolchain.
Previously, a user operating inside of a malicious Go project that defines a bogus golang.org/fips140 and operates a malicious GOMODPROXY the user chooses to connect to can serve an arbitrary module in its place. We now unpack the trusted ziphash for the bundled golang.org/fips140 module and construct its entry in the GOMODCACHE such that it can be verified by the toolchain.
Previously, a user operating inside of a malicious Go project that def ...
Previously, a user operating inside of a malicious Go project that defines a bogus golang.org/fips140 and operates a malicious GOMODPROXY the user chooses to connect to can serve an arbitrary module in its place. We now unpack the trusted ziphash for the bundled golang.org/fips140 module and construct its entry in the GOMODCACHE such that it can be verified by the toolchain.
6.7 Medium
CVSS3