1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

科技 数千开发者的npm账户在使用域名已过期的电子邮件地址

本帖由 漂亮的石头2022-02-15 发布。版面名称:新闻聚焦

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    488,354
    赞:
    47
    去年,微软和北卡罗莱纳州立大学的研究人员,分析了上传到 npm 上的 1630101 个库的元数据。结果发现,数以千计的 JavaScript 开发者账户,正在使用域名已过期的电子邮件地址,意味着他们的项目很容易被劫持。在 2818 名项目维护者使用的电子邮件地址中,某些已过期的域名已挂在 GoDaddy 等网站上待售。

    [​IMG]

    NPM 是“节点包管理器”(Node Package Manager)的缩写​

    研究人员指出,别有用心的攻击者可购买这些域名,在其电子邮件服务器上重新注册维护者的地址,然后重置维护者的账户密码、以接管受害者的 npm 包。

    这类攻击得逞的隐患很大,因为 npm 门户不会对账户所有者强制执行 2FA 双因素身份验证。意味着一旦被攻击者重置密码,他们就可肆意篡改相关软件包。


    共计 2818 个维护者账户在管理 8494 个包,其中平均有 2.43 个直接依赖项,表明特定攻击可波及数以万计的其它下游项目。

    所有者可能会觉察到其账户被劫持,但考虑到许多 npm 库和账户要么长期被冷落(高达 58.7% 未得到维护)、要么就是已被遗弃(44.3%),情况并不容乐观。

    研究团队将它们的发现通报给了 npm 安全团队,但并未说明对方给出了怎样的回应。

    截止 The Record 发稿时,发给 npm 上属的 GitHub 的电子邮件,暂未看到退件回执。


    庆幸的是,在研究结果于 2021 年 12 月发布的前几天,npm 已宣布一项新计划,声称要逐渐让开发者账户强制执行双因素身份验证。

    该过程将分多个阶段进行,且本月初注册的前百名维护者账户都已落实 2FA 方案。欲知详情,还请翻阅《npm 供应链中的薄弱环节》一文。

    以下是研究团队的一些其它发现:


    ● 33249 个软件包(2.2%)使用了安装脚本,或被滥用于执行恶意命令、且违反 npm 的最佳安全实践。

    ● 排名前 1% 的软件包(14941 个),平均有 32.4 名维护者 —— 这为针对不活跃 / 疏于照顾的开发者账户进行的攻击敞开了大门。

    ● 389 个软件包,平均有 40 名贡献者 —— 这为意外植入的安全漏洞、或让项目充斥潜在恶意代码而留下了隐患。

    ● 前 1% 维护者,平均管理着 180.3 个软件包;而直接依赖的包数量,平均为 4010 个 —— 意味着某些开发者可能可能过劳,或没有太多精力来彻底维护或审查软件包的变更。
     
正在加载...