周下载量过 200 万的 npm 包被注入恶意代码,Vue、Node 项目恐受影响

阅读数:3336 2018 年 11 月 27 日

今天上午,小编在 Twitter 上刷出了这条推文,再翻看国内一些论坛,开发者已经有所讨论,小编在这里给大家整理一下。

这篇推文及其附带的 GitHub 链接大体是说上周 npm 下载量超过 200 万的 package 被注入了恶意代码,黑客利用该恶意代码访问热门 JavaScript 库,目标是 copay(开源比特币钱包)及其衍生产品的用户,以此窃取用户的数字货币。

这个被注入恶意代码的 package 名为event-stream,它是一个用于处理 Node.js 流数据的 JavaScript 软件包,而且 Angular、Vue、Bootstrap、Gatsby 等都在使用 event-stream,所以使用这些库的开发者都应该检查一下自己是否受到了影响。

如果你使用加密货币相关的库,并且运行npm ls event-stream flatmap-stream,出现flatmap-stream@0.1.1,如下所示:

复制代码
$ npm ls event-stream flatmap-stream
...
flatmap-stream@0.1.1
...

则代表你的项目很可能受到了影响。

这个事件的起因是 event-stream 项目的作者由于时间和精力有限,将其维护工作交给了另一位开发者 Right9ctrl,该开发者获得了 event-stream 的控制权,将恶意代码注入。据报道,该恶意程序在默认情况下处于休眠状态,当 BitPay 的 Copay 钱包启动后,就会自动激活,它将会窃取用户钱包内的私钥并发送至 copayapi.host:8080。

目前 npm 已经删除了带有恶意版本的 event-stream,如果你想继续使用 event-stream,可更新到最新版本的 event-stream 4.0.1。

最后,GitHub 的评论区都在争论开源项目作者是否应该对类似事件负责,因为它关乎上万开发者和项目的安全,而此事是作者的失职,对此,你怎么看?

GitHub 链接

https://github.com/dominictarr/event-stream/issues/116

更多内容可关注前端之巅公众号(ID:frontshow)

活动推荐

12 月 7 日北京 ArchSummit 全球架构师峰会上,来自美团、百度、阿里、快手的讲师齐聚一堂,共同分享“打造 Native 体验 Hybrid App 实践”、“定制统一可维护的前端架构”、“10 年双十一前端关键技术”和“同构 Web App 的另一种探索”等前端经验与实践。

详情请戳:
https://bj2018.archsummit.com/schedule?utm_source=wechat&utm_campaign=10&utm_medium=frontshow&utm_content=banner