答案 0 :(得分:1)
没有算法。只有人。
npm审核的作用是查看您使用的软件包以及哪个版本,并将其与npm的漏洞数据库进行比较。这是该数据库的Web界面:https://www.npmjs.com/advisories
如果单击任何“问题”,您将看到3条信息:问题说明,建议的修复程序和报告问题所在位置的链接。
关于npm如何确定问题的严重性,事实并非如此。人们确定问题的严重性。
几乎所有的工作都是由志愿者完成的。这是开源的承诺之一:只要有足够多的眼睛看着您的非隐藏代码错误,就可以发现它。
答案 1 :(得分:1)
npm审核是用于查找npm软件包漏洞的安全模块, 漏洞数据库可从以下网站获得: https://www.npmjs.com/advisories
漏洞格式如下:
{
"id": <vulnerability id>,
"created_at": <creation date>,
"updated_at": <update date>,
"title": <vulnerability title>,
"author": {
"name": <contributor name>,
"website": <contributor website>,
"username": <contributor username>
},
"module_name": <product name>,
"publish_date": <publication date>,
"cves": [
<cve name (if existing)>
],
"vulnerable_versions": <vulnerable version(s)>,
"patched_versions": <fix version(s)>,
"overview": <vulnerability description>,
"recommendation": <vendor advisory>,
"references": [
<source list>
],
"cvss_vector": <CVSS vector in format AV:x/AC:x/PR:x/UI:x/S:x/C:x/I:x/A:x>,
"cvss_score": <criticity score (between 0 and 10)>,
"coordinating_vendor": <editor information>
}
npm审核会将软件包信息与所有漏洞进行匹配,并返回匹配的漏洞。
关于得分, 使用了CVSS评分,您可以在这里找到文档: https://www.first.org/cvss/specification-document