我在rails
应用程序的yarn.lock文件中有一个针对js-yaml的高sev git hub安全漏洞。
Remediation
Upgrade js-yaml to version 3.13.1 or later. For example:
js-yaml@^3.13.1:
version "3.13.1"
我已经运行了yarn upgrade js-yaml
它更新了我的包中的版本.json:"js-yaml": "^3.13.1",
但是,该问题仍然显示在github中。
我还尝试删除 yarn.lock 并运行yarn install
以及使用重复数据删除工具yarn-deduplicate ./yarn.lock
(在其他情况下对我有用(。然而,尊贵仍然存在。
这就是js-yaml在我的yarn.lock文件中的样子:
js-yaml@^3.12.0, js-yaml@^3.13.1:
version "3.13.1"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
dependencies:
argparse "^1.0.7"
esprima "^4.0.0"
js-yaml@~3.7.0:
version "3.7.0"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80"
integrity sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=
dependencies:
argparse "^1.0.7"
esprima "^2.6.0"
我想知道:
如何解决此特定问题
使 yarn.lock 文件保持最新以避免安全漏洞的最佳实践是什么?似乎我不是唯一一个在
yarn upgrade
时遇到重复问题的人(EG https://github.com/yarnpkg/yarn/issues/3967(也许我可以做一些不同的事情?
我刚刚遇到了同样的情况。如果你运行yarn why js-yaml
你可能会发现js-yaml是一个嵌套的依赖项,所以当你升级js-yaml时,还有另一个依赖项(例如我的是css-loader(需要旧版本的js-yaml。一种解决方案(尽管这可能不是最好的,但很抱歉(是运行升级:yarn upgrade js-yaml@version
然后将 js-yaml 添加为分辨率将更改推送到 github,漏洞错误应该会消失。有关解决方案的信息,请参阅此链接。