Repository navigation
fix(security): build with Go 1.27.3 to distrust compromised eMudhra intermediates - #56
Merged
Merged
Conversation
…ntermediates CVE-2026-111943: private keys of eight eMudhra intermediate CAs were recoverable from the certificates, allowing impersonation of any site. Go 1.27.3 / 1.26.10 reject chains containing those intermediates in crypto/x509 (SPKI blocklist), so binaries must be rebuilt with it. - go.mod: go 1.27.1 -> 1.27.3 (CI/release workflows follow go.mod via go-version-file, Dockerfile.ci binaries come from CI) - Dockerfile: builder image golang:1.27.1-alpine3.24 -> 1.27.3-alpine3.24 (digest-pinned) - go.sum: fill in missing hashes (additive only, no version changes)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
eMudhra 8 个中级 CA 私钥因密钥生成缺陷可被从证书反推(CVE-2026-111943),持有者可签发任意域名的有效证书做中间人。Go 在 10-19 发布 1.27.3 / 1.26.10,在 crypto/x509 内置这 8 个中级 CA 公钥的 SPKI 拉黑(distrustedSPKIHashes),二进制必须用新版 Go 重编才生效。
openalist 作为客户端连接 80 个网盘上游 API,旧版 Go 不查吊销、不强制 CT,存在被伪造证书劫持的风险。
改动
仓库内无自带 CA 证书包、无自定义 RootCAs,纯工具链问题,无需改代码。运行时镜像 alpine:3.24 的 ca-certificates 在构建时 apk upgrade 即会拿到已修复的 20261020-r0。
验证
后续
合并后建议发一个后端补丁版(如 v3.45.31),让用户拿到重编后的二进制与 Docker 镜像。是否发版由你定。