当我运行npm install
它说found 33 vulnerabilities (2 low, 31 moderate) run
npm
audit fixto fix them, or
npm auditfor details
。
但是,npm audit fix
输出up to date in 11s fixed 0 of 33 vulnerabilities in 24653 scanned packages 33 vulnerabilities required manual review and could not be updated
这是否review
意味着它不应该由用户修复?
当我运行npm audit
它时,它会给我表的列表,类似于此:
┌───────────────┬──────────────────────────────────────────────────────────────┐
│ Low │ Prototype Pollution │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Package │ lodash │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Patched in │ >=4.17.5 │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Dependency of │ browser-sync [dev] │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ Path │ browser-sync > easy-extender > lodash │
├───────────────┼──────────────────────────────────────────────────────────────┤
│ More info │ https://nodesecurity.io/advisories/577 │
└───────────────┴──────────────────────────────────────────────────────────────┘
在此示例中,链接页面的补救部分说Update to version 4.17.5 or later.
。但是,/node_modules/browser-sync/package.json
其中有几行:
"devDependencies": {
"lodash-cli": "4.17.5",
}
不再有lodash依赖项。因此它应该已经是v4.17.5。我还检查了/node_modules/lodash/lodash.json
哪var VERSION = '4.17.10';
条线。在/node_modules/lodash/package.json
有这些线路:
"_from": "lodash@^4.17.4",
"_id": "lodash@4.17.10",
我认为该版本显示在“ _id”中,而不是在“ _from”中,因此版本是正确的,但漏洞仍会出现在审核列表中。
我仍然是node.js的新手,这些消息使我非常困惑。有什么办法可以手动修复它或摆脱那些消息,我无能为力?
lodash-cli
in devDependencies
不会影响browser- sync
项目的工作方式,devDependencies
将软件包作为依赖项安装时将被忽略。
什么audit
报告说的是,这是easy-extender
有lodash
依赖性:
browser-sync > easy-extender > lodash
它取决于Lodash 3,而该问题已在Lodash 4中得到解决。可以通过分叉easy- extender
,更新和安装它(而不是NPM公共注册表中的软件包)来解决此问题。但是这种依赖性没有真正的问题。
audit
报告重要性应手动评估。即使嵌套的依赖项具有安全风险,也并不意味着已使用引入此风险的功能。这也不意味着即使使用它,也会由于使用方式而带来实际风险。
browser-sync
是未在生产中使用的开发工具,没有太多可以利用其漏洞的方案。和 原型污染
是不是所有漏洞,只是一个通知,一包不遵循良好的做法,可以忽略不计。
通常,这是修复报告的漏洞的方法:
多数情况下,预计您不会超越健全性检查标准。
patch-package
可以帮助就地修补嵌套的依赖关系,但这不会影响audit
报告。
我开始学习react,并通过运行以下程序创建了我的第一个应用程序: npx创建-反应-应用程序我的应用程序 应用程序建成后,我在终端上收到一个警告,上面写着: 22个漏洞(9个中度,13个高度) 我试图通过运行以下命令来修复它: “npm审核修复程序” 但它返回了这个: npm错误!代码ERE解决npm错误!ERESOLVE无法解析依赖关系树npm错误!npm错误!发现:类型-fest@0.21.
在我创建了一个新的Angular 12.0.3项目后,立即检测到8个高漏洞和40个中等漏洞。 当尝试使用修复问题时,没有任何变化。将漏洞减少到9个中度漏洞和7个高度漏洞,但当我尝试运行项目时,由于版本不匹配,会显示以下错误: 我已经尝试按照此答案中描述的解决方案修复漏洞,但这破坏了项目。 此外,我使用angle-cli的v11-lts创建了一个项目,但同样的问题伴随着不同的漏洞: 有没有办法,修复
Checkmarx在我的Controller类中为以下方法提供了XSS漏洞。具体来说:此元素的值(ResultsVO)随后在代码中流动,而没有经过适当的清理或验证,最终在方法中显示给用户: ResultsVO对象有很多String属性,我只是想知道是否有一种优雅的方法来编码它们以防止此漏洞。
当我运行npm start时,我看到错误。 我尝试过这个方法,但没有成功:https://techoverflow.net/2019/04/01/how-to-fix-npm-err-missing-script-start/ {“private”:true,“scripts”:{“dev”:“npm运行development”,“development”:“cross-env node_env=
我们应该处理的XML消息的格式如下: 收到的例外: javax。xml。绑定解组异常:意外元素(uri:,本地:“ns0:MessageType”)。预期的元素是 上述异常发生在com中。xmlprocessor。MessageParser类。上述课程中的代码过去是这样的(并且已经工作了很长时间): 事实证明,这会给你带来XXE的坏情况。所以我们尝试了许多非常相似的东西DocumentBuilde