Skip to content

Commit 99c43e8

Browse files
security: patch CVE-2026-111943 (#1382)
* security: patch CVE-2026-111943 (eMudhra CA compromise) Bump Go to 1.26.10 and upgrade Alpine ca-certificates-bundle to 20261020-r0. * security: patch volume-workspace image, lib go.mod, changelog for CVE-2026-111943
1 parent 2fc111e commit 99c43e8

8 files changed

Lines changed: 15 additions & 11 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ All notable changes to `src-cli` are documented in this file.
1515

1616
### Changed
1717

18+
- Updated Go to 1.26.10 and the Alpine `ca-certificates-bundle` in Docker images to 20261020-r0 to stop trusting the compromised eMudhra CAs ([CVE-2026-111943](https://emudhra.we-have-a-problem.com/)).
1819
- HTTP requests now fail instead of hanging forever if the server does not start responding within 1 minute. Set the `SRC_RESPONSE_HEADER_TIMEOUT` environment variable to change this timeout, or to `0` to disable it. Responses that stream data for a long time (for example, large search job results) are not affected.
1920
- `src search-jobs logs` and `src search-jobs results` now use the standard API client, gaining proxy support, `-insecure-skip-verify`, and cross-host redirect protection, and now report an error on non-200 responses instead of writing the error page into the output.
2021
- The command list in `src help` is now generated from the registered commands instead of being maintained by hand. `src debug`, `src snapshot`, and `src lsp` now appear in it; aliases are shown after each description.

‎Dockerfile‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,18 @@
44
#
55
# Nothing fancy here: we copy in the source code and build on the Alpine Go
66
# image. Refer to .dockerignore to get a sense of what we're not going to copy.
7-
FROM golang:1.26.5-alpine3.23@sha256:622e56dbc11a8cfe87cafa2331e9a201877271cbff918af53d3be315f3da88cc AS builder
7+
FROM golang:1.26.10-alpine3.23@sha256:a07f231c19b03e6106cf442f02a5bcf262147e744d15b7b5e4b6d81d420c70a0 AS builder
88

99
COPY . /src
1010
WORKDIR /src
1111
RUN go build ./cmd/src
1212

1313
# This stage should be kept in sync with Dockerfile.release.
14-
FROM alpine:3.22@sha256:4b7ce07002c69e8f3d704a9c5d6fd3053be500b7f1c69fc0d80990c2ad8dd412
14+
FROM alpine:3.22@sha256:5291449c3df73caf6ed85e649dec1b9e818b39a5d8c871e97afc13e9cd5e8fa8
1515

1616
# needed for `src code-intel upload` and `src actions exec`
17-
RUN apk add --no-cache git
17+
# ca-certificates-bundle >= 20261020-r0 drops the eMudhra roots (CVE-2026-111943).
18+
RUN apk add --no-cache git && apk upgrade --no-cache ca-certificates-bundle
1819

1920
COPY --from=builder /src/src /usr/bin/
2021
ENTRYPOINT ["/usr/bin/src"]

‎Dockerfile.release‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,11 @@
22
# suitable for testing, since it depends on a src binary being at the project
33
# root _and_ that src binary being runnable on Alpine. To test this, refer to
44
# the main Dockerfile, which should have an identical second stage.
5-
FROM alpine:3.22@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6c8c44de311d1
5+
FROM alpine:3.22@sha256:5291449c3df73caf6ed85e649dec1b9e818b39a5d8c871e97afc13e9cd5e8fa8
66

77
# needed for `src code-intel upload` and `src actions exec`
8-
RUN apk add --no-cache git
8+
# ca-certificates-bundle >= 20261020-r0 drops the eMudhra roots (CVE-2026-111943).
9+
RUN apk add --no-cache git && apk upgrade --no-cache ca-certificates-bundle
910

1011
COPY src /usr/bin/
1112
ENTRYPOINT ["/usr/bin/src"]

‎dev/vendor-lib.sh‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ echo "Creating go.mod file..."
136136
cat > "$DEST_LIB/go.mod" <<EOF
137137
module github.com/sourcegraph/sourcegraph/lib
138138
139-
go 1.26.5
139+
go 1.26.10
140140
EOF
141141

142142
# Create README.md

‎docker/batch-change-volume-workspace/Dockerfile‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
# image that we use to run curl, git, and unzip against a Docker volume when
33
# using the volume workspace.
44

5-
FROM alpine:3.22@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6c8c44de311d1
5+
FROM alpine:3.22@sha256:5291449c3df73caf6ed85e649dec1b9e818b39a5d8c871e97afc13e9cd5e8fa8
66

7-
RUN apk add --update git unzip
7+
# ca-certificates-bundle >= 20261020-r0 drops the eMudhra roots (CVE-2026-111943).
8+
RUN apk add --update git unzip && apk upgrade --no-cache ca-certificates-bundle

‎go.mod‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/sourcegraph/src-cli
22

3-
go 1.26.5
3+
go 1.26.10
44

55
require (
66
cloud.google.com/go/storage v1.50.0

‎lib/go.mod‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
module github.com/sourcegraph/sourcegraph/lib
22

3-
go 1.26.5
3+
go 1.26.10
44

55
require (
66
github.com/Masterminds/semver v1.5.0

‎mise.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
[tools]
2-
golang = "1.26.5"
2+
golang = "1.26.10"
33
shfmt = "3.8.0"
44
shellcheck = "0.10.0"

0 commit comments

Comments
 (0)