专栏首页秋风的笔记这个空的 NPM 包竟然超过 80万次下载!!!

这个空的 NPM 包竟然超过 80万次下载!!!

❝让我告诉你这个不起眼的包,它在过去一年中产生了超过 80 万的下载量。 ❞

这个npm包是-

我们在Runkit尝试打印出它导出的模块,返回的是null,这个npm包就是一个赤裸裸的空包

为什么需要下载它?

❝令人难以置信的是,人们实际上正在下载这个包。并且每个月的下载量都在增加。下图说明了自软件包在 npm 上发布以来的下载次数。 ❞

但是,如果这让您感到惊讶,请等到我告诉你更疯狂的部分。它被用作超过 60个npm包的依赖项。

我们随便打开一个依赖-包的仓库,以black-ts为例子

这个-包安静的躺在dependencies依赖项,而且还是dependencies!!!,突然觉得后背发凉

如果我告诉你,你也将它下载到你的项目中呢?它发生在你甚至不知道的情况下。也许它正静静地坐在你的package.json现在。而你对此一无所知。也许你是 800,000 人中的一员,不信你可以检查一下

❝那么我们为什么会安装它呢? ❞

我们都知道为了安装npm包,我们需要运行以下命令之一。但是,我们写的命令有很多种变体,但不一定都是对的。

npm i package
# or
npm install --save package
# or 
npm i -g package

有时您过早按下空格键,有时您忘记了一个字母。或者,如果你像我一样,有时最终会写出完全不同的东西。关键是,很容易打错字。注意-和g的间距

npm i - g package  // ❌

也就是作者发现了我们这种行为方式,专门搞了这个-包,真是个鬼才

最后作者Dmitry澄清说,虽然该软件包目前没有做任何事情,但他计划扩展它,当人们试图意外安装它时抛出错误消息。虽然这听起来毫无意义,但它最终可以为您节省1kb的包大小。

为什么-包可能是危险的?

虽然-现在没有危险,但如果你的项目中不小心安装到它,然后发布到生产,一旦存在安全漏洞,你的用户数据等等都会被窃取,妥妥的事故

所以一般公司都会配套代码检测工具等安全扫描工具,可以把关项目的安全,但是作为开发还是要提高自己的素养

参考文献

  • https://www.npmjs.com/package/-
  • https://www.npmjs.com/package/black-ts

最后你是否在命令行中输入一些别的误操作而做一些兼容操作呢?欢迎留言。

关注公众号秋风的笔记,一个专注于前端面试、工程化、开源的前端公众号

  • 关注后回复简历获取100+套的精美简历模板
  • 关注后回复好友拉你进技术交流群+面试交流群
  • 欢迎关注秋风的笔记

本文分享自微信公众号 - 秋风的笔记(qiufengnote)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2021-09-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 这个空的 NPM 包竟然超过 80万次下载!!!

    我们在Runkit尝试打印出它导出的模块,返回的是null,这个npm包就是一个赤裸裸的空包

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

    我是攻城师
  • 2019 年开源安全现状调查报告发布

    Snyk 做人发布了2019年开源安全现状调查报告,这是一家针对开源项目提供安全服务的知名公司。

    C4rpeDime
  • 全球最大包管理器npm被GitHub收购,将与GitHub整合,网友:别被微软搞垮

    npm全称Node Package Manager,用JavaScript写成,已有超过10年历史,现在拥有130万个软件包,每月下载量达750亿次。

    量子位
  • Appium+python自动化(二十六)- 烟花一瞬,昙花一现 -Toast提示(超详解)

      今天宏哥在这里首先给小伙伴们和童鞋们分享一个有关昙花的小典故:话说昙花原是一位花神,她每天都开花,四季都灿烂。她还爱上了每天给她浇水除草的年轻人。后来,此事...

    北京-宏哥
  • GitHub喜提npm:最大的包管理工具,JS版的「pip」

    npm 的全称是 Node Package Manager,是一个基于 Node.js 的包管理器,创建初衷是让 JavaScript 开发人员能够更容易地分享...

    机器之心
  • 使用mcpe-ping(mping)在线查询MCBE服务器状态

    因*腐竹的请求,所以CodeHz给了个查询MCBE的接口(不知道是不是他做的)。全名叫mcpe-ping GitHub上有个,估计是CodeHz二开的,原项目:...

    iVampireSP.com
  • NodeJS 应用仓库钓鱼

    前言 城堡总是从内部攻破的。再强大的系统,也得通过人来控制。如果将入侵直接从人这个环节发起,那么再坚固的防线,也都成为摆设。 下面分享一个例子,利用应用仓库,渗...

    逸鹏
  • 分分钟教会你搭建企业级的 npm 私有仓库

    npm 作为一种包管理工具,无论你是泛前端还是大前端都已经离不开它。它的出现方便了万千少年。让我们跨过了 Ctrl+C、Ctrl+V,通过 npm instal...

    lucifer210
  • 分分钟教会你搭建企业级的 npm 私有仓库

    npm 作为一种包管理工具,无论你是泛前端还是大前端都已经离不开它。它的出现方便了万千少年。让我们跨过了 Ctrl+C、Ctrl+V,通过 npm instal...

    政采云前端团队
  • 使用 centOS 7 部署前端项目

    以腾讯云为例,如果是 25 岁以下,可以免学生认证,使用校园优惠套餐。购买地址:云 + 校园[1]

    多云转晴
  • GitHub 2019 年度报告解读:开源生态和技术趋势

    GitHub 最近发布了 2019 年度报告。一年以来,GitHub 用户增长十分迅猛,新增了一千万用户,现在总共有超过四千万用户。在过去一年,GitHub 用...

    ConardLi
  • Hexo+github搭建个人博客-环境搭建篇

    前言:因为本人正在着手维护个人的博客,所以把自己的制作过程记录下来,分享过程中的方法与问题!

    好好学java
  • 月下载量千万的 npm 包被黑客篡改,Vue 开发者可能正在遭受攻击

    早起看手机,结果发现我的微信群炸了,未读消息 999+,大家都在讨论 event-stream 事件。打开 twitter 也是被这个刷屏了。

    葡萄城控件
  • Node.js包管理器Yarn的入门介绍与安装

    FAST, RELIABLE, AND SECURE DEPENDENCY MANAGEMENT. 就在前不久, Facebook 发布了新的 node.js ...

    用户1174387
  • 使用 Docker 高效部署你的前端应用

    Docker 变得越来越流行,它可以轻便灵活地隔离环境,进行扩容,运维管理。对于业务开发者而言,随着持续集成的发展,对代码质量及快速迭代的要求也越来越高。

    前端劝退师
  • 工具资源系列之 github 上各式各样的小徽章从何而来?

    平时大家在在逛 github 时或多或少都看到过项目首页各式各样的小徽章,不知道你是否和我一样好奇这些小徽章都是哪来的呢?

    雪之梦技术驿站
  • conda环境配置

    新租了服务器,想做个简单的服务端,测试以下网络质量。刚开始打算用npm的http-server做一个,无奈出问题了。后来还是觉得干脆装个django

    py3study
  • GitHub收购npm!要为1200万JS开发者提供更安全的开源包

    Npm是Node软件包管理器、npm Registry和npm CLI背后的公司,已经成立超过6年,npm是JavaScript运行时环境Node.js的默认包...

    大数据文摘

扫码关注云+社区

领取腾讯云代金券