首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

程序员的复仇:11行代码如何让Nodejs社区鸡飞狗跳

两天前,一名NPM(Nodejs Package Manager)社区的贡献者Azer Koçulu出于对NPM管理层的怨愤,不声不响删除了自己在NPM上面的全部代码,其中就包含只有11行代码的“Left-pad...其中就包括流行组件“left-pad”。这个组件只有11行,功能很简单,就是在给定的字符串左边重复插入给定的字符,以达到需要的字符串长度。...Facebook、Spotify以及Netflix等著名公司大型软件项目中都用 到了Babel这个模块,而Bel本来这个模块又调用了“left-pad”这个模块。...据NPM官方博客,“left-pad”删除后, 受到影响的模块达到数千个。 这就像飞机的发动机突然掉了一颗螺丝,点火时候系统就肯定会报错,但是你却很难定位为题的出处。...以外发生4个多小时后,NPM社区管理员决定出手,把“left-pad”这个名字从Azer Koçulu手中夺了回来,重新写了一个“left-pad”函数,终于才抚平了千万程序员躁动的心。

2K60

当程序员变身为黑客,现役程序员表示:我太难了!

2016 年的“left-pad 库”事件让我们看到,对第三方软件越来越多的依赖是如何让互联网面临风险的。...1 “left-pad 库”事件 left-pad 是一个简单的程序,它可以用某些字符(通常是 0 或空格),来“填充”左侧的文本值,直到它达到指定的大小为止。...然而,有成千上万的开发人员在他们的代码中包含了这个库,他们中的许多人在不知情的情况下包含了一个包含 left-pad 的不同库。...这一事件始于一个名为 npm 的流行 JavaScript 库管理工具中取消了 left-pad 库。当时,所有依赖 left-pad 的项目都崩溃了。...从安全角度来看是这样的:如果 left-pad 的维护者没有取消发布库,而是增加一个这样“功能”:将 left-pad 的填充信息记录发送到他们控制的服务器上,或者更糟糕的是,如果是试图安装一些更全面的监控恶意软件呢

90820
领券