安全漏洞响应步骤
简史
2018 年 11 月 27 日左右,所有直接或间接依赖 event-stream 包的用户都收到了一个 npm 安全漏洞公告。这是一次非常有针对性的攻击,只有在安装了 Copay 比特币钱包时才会激活,然后试图窃取钱包内容。
我们有两个项目,即 interactive-examples 和 BoB,依赖于一个名为 npm-run-all 的 npm 包,而该包又依赖于 event-stream 包。
这意味着不仅员工有风险,那些 fork 了这两个代码库中任何一个的人也可能受到影响。幸运的是,受影响的包的维护人员迅速做出反应,发布了更新以解决问题。由于我们针对这些代码库运行了 Renovate 机器人,所以有一个 拉取请求 准备合并。
但这只解决了问题的一部分。我们的用户仍然需要得到通知。
采取的步骤
尤其是 interactive-examples 项目的社区规模相当大,并非所有人都是活跃用户,但我们仍然需要一种方法来联系所有人。第一步是在每个代码库中打开一个问题,详细说明问题。
这本身还不够,因为用户不一定会积极监控问题。因此,我们需要查看该项目的 所有 fork。
然后我们复制了所有这些用户的用户名,并在上述问题中 ping 了他们,例如通过在该问题中 评论。
从问题收到的回复来看,这种做法非常有效,但我们不能就此止步。下一步是在每个开放的拉取请求中发布评论,通知用户问题以及他们的下一步操作。这是一个 示例,展示了我们的回复。
这样一来,我们对以下几点很有信心:我们积极联系,以及 npm 和其他渠道在线报道问题,将确保我们的用户安全。
最后,我们从官方 Twitter 帐户发布了推文,提高人们对该问题的认识。
总结
希望这类事件不会频繁发生。但如果再次发生,以上内容为如何应对提供了可靠的指南。