- https://github.com/golang/go/issues?q=milestone%3AGo1.24.5+label%3ACherryPickApproved - full diff: https://github.com/golang/go/compare/go1.24.4...go1.24.5 This minor releases include 1 security fixes following the security policy: - cmd/go: unexpected command execution in untrusted VCS repositories Various uses of the Go toolchain in untrusted VCS repositories can result in unexpected code execution. When using the Go toolchain in directories fetched using various VCS tools (such as directly cloning Git or Mercurial repositories) can cause the toolchain to execute unexpected commands, if said directory contains multiple VCS configuration metadata (such as a '.hg' directory in a Git repository). This is due to how the Go toolchain attempts to resolve which VCS is being used in order to embed build information in binaries and determine module versions. The toolchain will now abort attempting to resolve which VCS is being used if it detects multiple VCS configuration metadata in a module directory or nested VCS configuration metadata (such as a '.git' directoy in a parent directory and a '.hg' directory in a child directory). This will not prevent the toolchain from building modules, but will result in binaries omitting VCS related build information. If this behavior is expected by the user, the old behavior can be re-enabled by setting GODEBUG=allowmultiplevcs=1. This should only be done in trusted repositories. Thanks to RyotaK (https://ryotak.net) of GMO Flatt Security Inc for reporting this issue. This is CVE-2025-4674 and https://go.dev/issue/74380. View the release notes for more information: https://go.dev/doc/devel/release#go1.24.5 Signed-off-by: Paweł Gronowski <pawel.gronowski@docker.com>
21 lines
669 B
Docker
21 lines
669 B
Docker
# syntax=docker/dockerfile:1
|
|
|
|
ARG GO_VERSION=1.24.5
|
|
|
|
FROM golang:${GO_VERSION}-alpine AS generated
|
|
ENV GOTOOLCHAIN=local
|
|
RUN go install github.com/dmcgowan/quicktls@master
|
|
WORKDIR /tmp/gencerts/notary
|
|
RUN --mount=type=bind,source=e2e/testdata/notary,target=/tmp/gencerts/notary,rw <<EOT
|
|
set -eu
|
|
mkdir -p ../notary-evil /out
|
|
quicktls -exp 87600h -org=Docker -with-san notary-server notaryserver evil-notary-server evilnotaryserver localhost 127.0.0.1
|
|
cat ca.pem >> notary-server.cert
|
|
mv ca.pem root-ca.cert
|
|
cp notary-server.cert notary-server.key root-ca.cert ../notary-evil
|
|
cp -r /tmp/gencerts/notary* /out/
|
|
EOT
|
|
|
|
FROM scratch
|
|
COPY --from=generated /out /
|