From 1eadbdd9fadca31c02b6f0aebfbbab4d8c6cf716 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Tue, 6 Sep 2022 22:33:13 +0200 Subject: [PATCH] Update to go 1.19.1 to address CVE-2022-27664, CVE-2022-32190 From the mailing list: We have just released Go versions 1.19.1 and 1.18.6, minor point releases. These minor releases include 2 security fixes following the security policy: - net/http: handle server errors after sending GOAWAY A closing HTTP/2 server connection could hang forever waiting for a clean shutdown that was preempted by a subsequent fatal error. This failure mode could be exploited to cause a denial of service. Thanks to Bahruz Jabiyev, Tommaso Innocenti, Anthony Gavazzi, Steven Sprecher, and Kaan Onarlioglu for reporting this. This is CVE-2022-27664 and Go issue https://go.dev/issue/54658. - net/url: JoinPath does not strip relative path components in all circumstances JoinPath and URL.JoinPath would not remove `../` path components appended to a relative path. For example, `JoinPath("https://go.dev", "../go")` returned the URL `https://go.dev/../go`, despite the JoinPath documentation stating that `../` path elements are cleaned from the result. Thanks to q0jt for reporting this issue. This is CVE-2022-32190 and Go issue https://go.dev/issue/54385. Release notes: go1.19.1 (released 2022-09-06) includes security fixes to the net/http and net/url packages, as well as bug fixes to the compiler, the go command, the pprof command, the linker, the runtime, and the crypto/tls and crypto/x509 packages. See the Go 1.19.1 milestone on the issue tracker for details. https://github.com/golang/go/issues?q=milestone%3AGo1.19.1+label%3ACherryPickApproved Signed-off-by: Sebastiaan van Stijn --- .github/workflows/.windows.yml | 13 +++++-------- Dockerfile | 2 +- Dockerfile.e2e | 2 +- Dockerfile.simple | 2 +- Dockerfile.windows | 2 +- 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/.github/workflows/.windows.yml b/.github/workflows/.windows.yml index 3969f2ba58..7b782efc6d 100644 --- a/.github/workflows/.windows.yml +++ b/.github/workflows/.windows.yml @@ -13,10 +13,7 @@ on: default: false env: - GO_VERSION: 1.19 - # FIXME: temporarily using a separate var for this, as go-setup-action expects SemVer - # see https://github.com/actions/setup-go/tree/v3.2.0#supported-version-syntax - GO_VERSION_SEMVER: 1.19.0 + GO_VERSION: 1.19.1 GOTESTLIST_VERSION: v0.2.0 TESTSTAT_VERSION: v0.1.3 WINDOWS_BASE_IMAGE: mcr.microsoft.com/windows/servercore @@ -190,7 +187,7 @@ jobs: name: Set up Go uses: actions/setup-go@v3 with: - go-version: ${{ env.GO_VERSION_SEMVER }} + go-version: ${{ env.GO_VERSION }} - name: Download artifacts uses: actions/download-artifact@v3 @@ -218,7 +215,7 @@ jobs: name: Set up Go uses: actions/setup-go@v3 with: - go-version: ${{ env.GO_VERSION_SEMVER }} + go-version: ${{ env.GO_VERSION }} - name: Install gotestlist run: @@ -390,7 +387,7 @@ jobs: name: Set up Go uses: actions/setup-go@v3 with: - go-version: ${{ env.GO_VERSION_SEMVER }} + go-version: ${{ env.GO_VERSION }} - name: Test integration if: matrix.test == './...' @@ -480,7 +477,7 @@ jobs: name: Set up Go uses: actions/setup-go@v3 with: - go-version: ${{ env.GO_VERSION_SEMVER }} + go-version: ${{ env.GO_VERSION }} - name: Download artifacts uses: actions/download-artifact@v3 diff --git a/Dockerfile b/Dockerfile index d49ef8da6d..918310796e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,7 +2,7 @@ ARG CROSS="false" ARG SYSTEMD="false" -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.19.1 ARG DEBIAN_FRONTEND=noninteractive ARG VPNKIT_VERSION=0.5.0 diff --git a/Dockerfile.e2e b/Dockerfile.e2e index 915b05abf6..4a98c61d9f 100644 --- a/Dockerfile.e2e +++ b/Dockerfile.e2e @@ -1,4 +1,4 @@ -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.19.1 FROM golang:${GO_VERSION}-alpine AS base ENV GO111MODULE=off diff --git a/Dockerfile.simple b/Dockerfile.simple index 789e96f264..93bbd3eab8 100644 --- a/Dockerfile.simple +++ b/Dockerfile.simple @@ -5,7 +5,7 @@ # This represents the bare minimum required to build and test Docker. -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.19.1 ARG BASE_DEBIAN_DISTRO="bullseye" ARG GOLANG_IMAGE="golang:${GO_VERSION}-${BASE_DEBIAN_DISTRO}" diff --git a/Dockerfile.windows b/Dockerfile.windows index a3ddfdaa93..9afaec9759 100644 --- a/Dockerfile.windows +++ b/Dockerfile.windows @@ -165,7 +165,7 @@ FROM microsoft/windowsservercore # Use PowerShell as the default shell SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] -ARG GO_VERSION=1.19 +ARG GO_VERSION=1.19.1 ARG GOTESTSUM_VERSION=v1.8.1 ARG GOWINRES_VERSION=v0.2.3 ARG CONTAINERD_VERSION=v1.6.8