我正在尝试将javascript程序包发布到内部存储库。现在,当我执行yarn publish
(或npm publish
)时,它会运行nsp check
(这是一个很棒的功能!)来查找项目中任何依赖项中的已知漏洞。它找到一个并错误退出:
[3/4] Publishing...
$ nsp check
(+) 1 vulnerability found
...
│ More Info │ https://nodesecurity.io/advisories/nnn |
...
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/publish for documentation about this command.
我想忽略此漏洞并继续进行发布。我该怎么办?
我知道引入一种忽略漏洞的方法可能会被滥用,但是在这种情况下,我发布的软件包是一个内部工具。我已经研究了依赖项的漏洞,并且在我使用它的上下文中绝对不能利用它。
旁注:该漏洞在一个非常常用的软件包(request@2.87.0
)中嵌套了三层。该漏洞本身已在其最新版本中得到修复,但是由于此依赖关系深达三层,因此我们必须等待每个后续依赖关系升级。我怀疑这将花费一些时间-他们的Github中有一张门票开放了3个月-我不想等待。
答案 0 :(得分:0)
我找到了答案:
在项目顶部添加一个名为.nsprc
的文件。在文件中添加:
{
"exceptions": ["https://nodesecurity.io/advisories/nnn"]
}
URL应与nsp check
命令中显示的漏洞的URL相匹配。