Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在使用时仅检查高漏洞;新产品管理审计“;?_Node.js_Npm_Npm Audit - Fatal编程技术网

Node.js 如何在使用时仅检查高漏洞;新产品管理审计“;?

Node.js 如何在使用时仅检查高漏洞;新产品管理审计“;?,node.js,npm,npm-audit,Node.js,Npm,Npm Audit,当我使用新的npm 6执行npm安装时 我收到一条消息,告诉我有一些漏洞: [!]发现75个漏洞[4867个已审计包] 严重程度:66低| 4中等| 5高 运行npm审计了解更多详细信息 我运行了npm审计,但得到了一个截断的漏洞列表 如何仅检查高漏洞列表 谢谢这不是您想要的答案,但它也会这样做: npm audit | grep -B 1 -A 10 High 此软件包可能是您正在寻找的: 它允许您按咨询编号进行筛选,这比按级别筛选要好 $ cat .nsprc { "exceptio

当我使用新的npm 6执行npm安装时 我收到一条消息,告诉我有一些漏洞

[!]发现75个漏洞[4867个已审计包]

严重程度:66低| 4中等| 5高

运行
npm审计
了解更多详细信息

我运行了
npm审计
,但得到了一个截断的漏洞列表

如何仅检查漏洞列表


谢谢

这不是您想要的答案,但它也会这样做:

npm audit | grep -B 1 -A 10 High

此软件包可能是您正在寻找的:

它允许您按咨询编号进行筛选,这比按级别筛选要好

$ cat .nsprc
{
  "exceptions": [
    "https://npmjs.com/advisories/532",
    "https://npmjs.com/advisories/577"
   ]
}
再加上它,你就是黄金

仅计算高值:


这一个对我有用:

仅显示高值

npm audit | grep -E "(High)" -B3 -A10
npm audit | Select-String -Pattern "High" -Context 0,10
显示关键问题和重大问题

npm audit | grep -E "(High | Critical)" -B3 -A10

查看提出此解决方案的讨论。

如果您希望在Powershell中实现此功能,只需使用以下命令(改编自@stayingcool的答案):

仅显示高值

npm audit | grep -E "(High)" -B3 -A10
npm audit | Select-String -Pattern "High" -Context 0,10
同时显示高和临界值

npm audit | Select-String -Pattern "(High | Critical)" -Context 0,10
编辑:我推荐这个(更好的)答案:

虽然没有那么漂亮,但你可以:

npm audit --parseable | grep high
另一个缺点是,任何包含
“高”
的包/问题元数据也将被打印。

标记
--audit level=high
不会更改npm audit的输出

我将其发送到html以用于报告目的,因此希望进一步清理它:

npm audit | grep -E "(High | Critical)" -B3 -A11 --color=always | grep -E '┌|│|├|└' --color=never
但这将失去标题和底部的“发现的漏洞”。我发现只需运行几次npm audit并将所需的位附加到文件中是最简单的

结果是这样的:

npm audit | grep '===' --color=never > temp.txt
npm audit | grep -E "(High | Critical)" -B3 -A11 --color=never | grep -E '┌|│|├|└' --color=never >> temp.txt
npm audit | grep -E "(found|scanned packages)" --color=never >> temp.txt
cat temp.txt
或者作为一个吸引人的单行程序(lol),也可以删除temp.txt文件:

npm audit | grep '=== npm audit' --color=never > temp.txt; npm audit | grep -E "(High | Critical)" -B3 -A11 --color=never | grep -E '┌|│|├|└' --color=never >> temp.txt; npm audit | grep -E "(found|scanned packages)" --color=never >> temp.txt; cat temp.txt; rm temp.txt;
这条线路很难看,但在一系列不同的回购协议中运行良好,前提是您只需要终端中的输出

输出到文件时,npm audit包含无法关闭的ansi颜色代码。这对我的报告来说是个问题!Sed可用于删除它们:

sed -i '' $'s,\x1b\\[[0-9;]*[a-zA-Z],,g' temp.txt

谢谢,但正如你所说,这不是我想要的,一些
High
vulns有一个建议,而这个解决方案忽略了它们。必须有一个
param
audit
来过滤结果或至少逐页显示结果,同时您可以尝试调整
grep
参数。我认为
-b2
应该包括建议。此选项现在已内置到npm中,仅当
grep
可用时,如在*nix system.Works中,请参阅,但-B1足够这似乎不需要,因为
npm install
末尾已列出此概述(并以彩色显示!))参考:“选择字符串:找不到命令”