无法部署应用程序,因为存在漏洞需要人工审核

couldn't deploy the app because of vulnerabilities need manual review

我想部署我的应用程序但是有 3 个漏洞我不知道如何解决它们。我使用了 npm audit fix 我还通过手动更新解决了一些漏洞 them.so 这是有人帮助我的手动审查:

  Manual Review
             Some vulnerabilities require your attention to resolve

          Visit https://go.npm.me/audit-guide for additional guidance


  Moderate        Regular Expression Denial of Service

  Package         browserslist

  Patched in      >=4.16.5

  Dependency of   react-scripts

  Path            react-scripts > react-dev-utils > browserslist

  More info       https://npmjs.com/advisories/1747


  Moderate        Regular expression denial of service

  Package         glob-parent

  Patched in      >=5.1.2

  Dependency of   react-scripts

  Path            react-scripts > webpack > watchpack > watchpack-chokidar2 >
                  chokidar > glob-parent

  More info       https://npmjs.com/advisories/1751


  Moderate        Regular expression denial of service

  Package         glob-parent

  Patched in      >=5.1.2

  Dependency of   react-scripts

  Path            react-scripts > webpack-dev-server > chokidar > glob-parent

  More info       https://npmjs.com/advisories/1751

found 3 moderate severity vulnerabilities in 2195 scanned packages
  3 vulnerabilities require manual review. See the full report for details.

给出了很好的解释。

通常,您会按顺序尝试这些解决方案:

  • npm audit fix(听起来你已经这样做了)
  • npm audit fix --force
  • npm i react-scripts(存在漏洞的包的父包)
  • npm i browserslist@4.16.5 glob-parent@5.1.2(漏洞包本身)

但是,我们可以看到(在我写这篇文章的时候)问题没有在 react-dev-utils' package.json 中解决。此外,package.json 使用确切的版本(无插入符号)。 这两个事实意味着上面列出的这些解决方案中的 none 行得通。

您有两个选择:

  • 克隆 create-react-app repo,自己修复版本并使用克隆版本而不是真实版本
  • 等待 create-react-app 修复它,此时上述解决方案之一应该可以工作

我强烈建议后一种方法。

也许@DanAbramov 撰写的这篇文章对您来说会很有趣https://overreacted.io/npm-audit-broken-by-design/