Luc*_*nze 12 security dependencies dependabot
Dependabot 首先报告并撤回了一个软件包中的安全问题。没有给出撤回的依据,只是说该软件包“不再容易受到攻击”。这是没有意义的。原始 CVE 仍然存在,并且仍然引用受影响的代码。
经过调查,我发现给定的包在yarn.lock中存在两次,一次是在包含漏洞的版本中,后来是在包含补丁的版本中:
ansi-regex@^2.0.0:
version "2.1.1"
ansi-regex@^5.0.0:
version "5.0.0"````
I'd be grateful for any way to make sense of this.
Run Code Online (Sandbox Code Playgroud)
如果您由于自己在不同的软件包中的“不再容易受到攻击”错误而遇到这个问题:您可能仍然容易受到攻击。
根据 Dependabot 维护者之一的说法,(疑似)“不再容易受到攻击”的最常见原因是当您使用同一依赖项的多个版本时,其中一个版本容易受到攻击,但不是最低版本。维护者的帖子部分说道:
这是我目前的理解:
- 警报由清单解析代码触发,该清单解析代码是与 dependentabot-core 解析代码不同的代码路径。因此,如果警报清单解析代码认为存储库仍然容易受到攻击,则警报将持续存在。
- npm 允许 dep 树中存在依赖项的多个版本...并且这些版本在运行时在代码中使用...最新的版本不会取代旧的版本。因此,如果存在这些问题,您仍然很容易受到攻击。
- dependentabot-core 有一个已知的错误,它只更新依赖项的最低版本...因此 Dependabot 可能会尝试创建 PR,然后报告 npm 不再容易受到攻击,而实际上更高版本的依赖项也容易受到攻击,并且仍然在树上。npm中跟踪的错误报告不再容易受到多个版本依赖项的影响。第5741章
- 警报是根据 GitHub 咨询数据库中的信息生成的。因此,如果该数据库列出了所有 > 0.16.5 的版本都存在漏洞,但维护人员刚刚推送了解决该问题的 v0.17.0,那么在更新咨询数据库之前,警报不会消失。值得庆幸的是,您可以向咨询数据库提交 PR 来修复不正确的版本说明符。
所以我怀疑这些病例大多数都是#5741的症状。
当存在影响某些版本的依赖项但不影响最低版本的漏洞时。在这种情况下,Dependabot 会错误地报告不需要安全更新。
| 归档时间: |
|
| 查看次数: |
3308 次 |
| 最近记录: |