首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Snyk漏洞扫描不识别过度嵌套包依赖项

Snyk漏洞扫描不识别过度嵌套包依赖项
EN

Stack Overflow用户
提问于 2022-11-10 20:00:26
回答 1查看 42关注 0票数 2

我正在我的项目上运行snyk test命令,以识别第三方库中的漏洞,并在react@5.0.1->@svgr/webpack“中发现了以下漏洞:"^5.5.0”

nth-check@1.0.2

  • Regular

  • 正则表达式拒绝服务(ReDoS) -表达式拒绝服务(ReDoS) - loader-utils@2.0.3

为了缓解这种情况,我在我的package.json中添加了依赖覆盖(或者在我的例子中是项目使用纱线时的依赖项解析),如下所示,将嵌套的依赖项替换为非易受攻击的版本:

代码语言:javascript
复制
  "resolutions": {
    "loader-utils": "^2.0.3",
    "nth-check": "2.0.1",
    "@svgr/webpack": "^6.2.1"
  },

还安装了纱线。我在项目包中确认,随着这些更改,最新版本的加载器-utils和nth-check正在安装中。我还检查了VS代码上的Snyk扩展,它似乎解决了漏洞问题。

但是,当我在github操作管道中运行snyk test时,如下所示:

代码语言:javascript
复制
      - name: Run Snyk test scan
        uses: snyk/actions/node@master
        with:
          command: test
          args: --severity-threshold=high --fail-on=all

它仍然报告nth-check和加载器-utils上的漏洞。我的假设是,这是因为Snyk操作在运行代码分析之前确实安装了依赖项。相反,它将检查package.json文件并逐层展开依赖项,从而使它认为我仍然将易受攻击的依赖项作为react脚本包中的嵌套依赖项,而实际上,package.json中的resolutions部分会覆盖这些依赖项。

是否有一种方法可以避免这种情况或迫使snyk考虑嵌套依赖覆盖?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-14 18:27:58

经过一些研究,我发现Snyk本身并不存在这样的问题。问题在于我们的冷嘲热讽。扫描被配置为在我们的主分支中的package.json上运行,而修复是在一个单独的分支上。一旦我们更新了snyk扫描以在正确的package.json上运行,它就会发现问题已经解决。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74394691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档