Discourse 中 npm/gem 依赖项的漏洞修复

抱歉,我之前没有说清楚。

我们当前的构建过程以先前消息中提到的 discourse 基础镜像开始,然后运行一个脚本,该脚本只是支持的安装过程(启动器脚本)的引导程序步骤,但没有运行需要活动 redis/db 连接的步骤。

因此,我假设引导程序步骤会安装 discourse 的所有 ruby 依赖项和 npm 依赖项。漏洞列表中显示的许多版本主要是 discourse 应用程序本身的依赖项。

我还进行了一些挖掘,发现它标记的 golang 依赖项来自一个名为 esbuild 的 npm 依赖项,该依赖项是使用 golang 构建的。它使用的 go 版本有一个标准库漏洞,该漏洞正在被标记。因此,我认为解决这个问题需要重新编译该库,所以我也不确定这是否值得付出努力。

但是,其他漏洞要么是直接的 ruby/npm 依赖项,要么是 discourse 的传递依赖项。我的问题主要是关于在安装这些依赖项之前更新它们的版本。我明白修复这些问题对于 discourse 的开发者来说会很困难。我只是想了解是否有办法检查“升级”是否会导致问题,因为我猜测某些依赖项实际上只在某些代码路径中引起问题。

1 个赞