我遇到了一个棘手的情况:我读了Docker Alpine 主页图像每月都会更新,以进行小版本/安全修复。包含 CVE 的软件包不会针对稳定版本 (v3.17.*) 进行更新,但会在该edge
版本上进行更新。
我知道可以通过指定发布版本来更新软件包,例如apk add git --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community
。但我不会这么做,因为edge
它不稳定。
以下是我的真实生活情况:
使用 Docker Alpine 3.17.3,git
软件包版本为2.38.4-r1(患有CVE-2022-23521)修复版本是2.39.1-r0但处于边缘。
我是否应该接受 CI 抱怨的事实并等待稳定版本提供修复?最好的方法是什么?
答案1
此 CVE 可能导致远程代码执行,并被归类为严重。我认为最好使用“不稳定”版本,而不是让您的服务暴露于此。只需检查您要安装的版本上是否存在任何已知漏洞即可。
因为 git 位于主分支(而不是社区),所以您可以像这样安装 edge 版本:
apk add git --repository=https://dl-cdn.alpinelinux.org/alpine/edge/main
从今天起它将安装 git (2.40.1-r0)
还有许多其他选项,例如使用你喜欢的多阶段版本从源代码构建 git,使用不同的发行版,或者找到不包含任何安全问题的旧版本的 git 包 - 它将经过更多测试/稳定