【发布时间】:2021-01-27 10:20:01
【问题描述】:
当我在自己发布的某个包中发现安全漏洞时,如何标记一系列易受攻击的版本,以便下游消费者在运行npm audit 时收到通知?
【问题讨论】:
标签: javascript node.js security npm npm-audit
当我在自己发布的某个包中发现安全漏洞时,如何标记一系列易受攻击的版本,以便下游消费者在运行npm audit 时收到通知?
【问题讨论】:
标签: javascript node.js security npm npm-audit
本质上,您不会标记一系列易受攻击的版本本身。相反,您可以通过 “报告恶意软件” 按钮将它/它们直接报告给 NPM,该按钮可以在特定的 npm 包页面www.npmjs.com 上找到。然后 npm 安全团队对报告进行分类,并在数据库中对其进行标记。然后在运行npm audit 命令时相应地通知用户。
更多详情请参阅 npm 博客中的this post。虽然 npm 博客已停产,但 AFAIK 报告安全漏洞的过程大致相同。
下面引用的是有关您需要向 NPM 提供的有关漏洞的信息的相关部分...
来源: https://blog.npmjs.org/post/179430064885/writing-quality-vulnerability-reports.html
为了让我们确保快速有效地处理报告的漏洞,我们需要您,我们的社区,为我们提供可操作的详细信息。以下是您的安全报告的一些基本注意事项:
质量安全报告中应包含哪些内容
- 您遇到漏洞的包名称和版本。示例:标记@1.0.0 或标记@*
- 漏洞及其影响的简短描述。 示例:“如果用户能够控制对函数 foo 的输入,那么用户就能够执行命令,为攻击者提供与运行应用程序的用户相同的访问权限。”李>
- 您遇到漏洞的环境的详细信息。 示例:“在 OSX 上使用 node.js 6.0.0 可以利用此漏洞,但未使用任何其他平台或 Node.js 版本进行测试。”
- 可证明的概念证明或重现相同结果的步骤。这有助于 npm 安全团队有效地对问题进行分类(参见下面的示例)。
- 任何可能有助于 npm 安全团队或维护者更好地理解的特定参考、代码 sn-ps 或文档(参见下面的示例)。
什么不应该报告
- 没有可操作上下文的报告对于我们的团队进行充分处理非常耗时。这些请求应该以问题的形式提交给包维护者。
- npm audit 的输出 - 由于 npm 安全团队已经知道这些缺陷,最好直接联系维护人员以更新依赖版本。
- 一般功能要求
- 堆栈跟踪或错误,但未说明它们对安全的影响。
【讨论】: