查看原文
其他

哪些NPM仓库更易遭供应链攻击?研究员给出了预测指标

Ben Dickson 代码卫士 2022-06-21

 聚焦源代码安全,网罗国内外最新资讯!

编译:代码卫士



专栏·供应链安全

数字化时代,软件无处不在。软件如同社会中的“虚拟人”,已经成为支撑社会正常运转的最基本元素之一,软件的安全性问题也正在成为当今社会的根本性、基础性问题。


随着软件产业的快速发展,软件供应链也越发复杂多元,复杂的软件供应链会引入一系列的安全问题,导致信息系统的整体安全防护难度越来越大。近年来,针对软件供应链的安全攻击事件一直呈快速增长态势,造成的危害也越来越严重。


为此,我们推出“供应链安全”栏目。本栏目汇聚供应链安全资讯,分析供应链安全风险,提供缓解建议,为供应链安全保驾护航。


注:以往发布的部分供应链安全相关内容,请见文末“推荐阅读”部分。



现代软件开发中使用的开源包越来越多,其遭受供应链攻击的几率也越来越大。


攻击者可通过多种方法感染开源包并分发恶意代码,投毒数百万程序。美国北卡罗莱纳州立大学 (NCSU) 和微软公司的研究员提供了保护软件供应链的一种新方法。他们使用基于数据的实证方法预测哪些开源包更易成为攻击目标。

这项研究针对的是NPM仓库中的163万个程序包,除了开源软件供应链中的六个弱点指标。据此行动可帮助维护人员和用户更好地做出安全决策并保护软件免受潜在的供应链攻击。


NPM 供应链中的薄弱链条


NCSU 大学的博士生兼论文第一作者 Nusrat Zahan 指出,“学术界和业界的安全研究员正在积极调查生态系统中的攻击以提出解决方案;这些方法似乎基于特定的恶意攻击实例中(如 typosquatting、依赖混淆)。因此这些方法在阻止恶意代码分发方面尤其有效。但最近发生的攻击活动表明开箱即用的 exploit 策略将一而再再而三地出现。”

Zahan 提醒称,“任何特别的解决方案均不足以阻止我们尚未见到过的攻击。”

研究发现了六个关键指标,表明NPM程序包可能会被恶意人员攻陷:

1、 2818名维护人员的域名已过期。攻击者可购买过期域名并借此劫持维护人员的账户,除非部署了双因素认证机制。

2、 约2% (33,000个) 的程序包中包含安装脚本。安装脚本在程序包安装前、中、后自动运行。这些安装脚本如遭攻陷,则可导致攻击者在主机设备上执行恶意活动,如传输用户数据、下载恶意payload、执行反向 shell 或删除文件和目录。

3、 约59%的程序包未维护的状态已持续两年。另外,44%的维护人员不再活跃的状态已持续两年的时间。不在维护状态的程序包遭攻陷但未被检测出的几率更大。不活跃的维护人员可能会遭账户劫持攻击且不会被注意到。

4、一些程序包(占比较少)拥有太多的维护人员,增加了至少一个维护人员账户被攻陷的可能性。

5、某些程序包的贡献人员太多,使维护人员难以为所有变更打标签。攻击者可通过社工伪装成受信任贡献人员,为后续偷偷注入恶意代码做准备。

6、 前1%的维护人员超负荷,平均拥有180个程序包。这些维护人员遭攻击的可能性更大,原因有二:第一,这些维护人员更容易忽视对某些特定程序包做出的变更;第二,如这些维护人员的账户被攻陷,则可被用于访问很多个程序包。


后续步骤


Zahan 指出,“如果查看不用的供应链攻击,就常常会发现攻击者使用我们此前未注意到的新技术提出解决方案。我们的研究旨在推动实践者们采用最佳安全事件而不是等待攻击发生。”

经过对数百名NPM 程序包维护人员的调查,研究人员协同发布了自己的研究成果。多数参与人员认可前三个指标的严重性,并对接受这些方面的潜在问题感兴趣。

研究人员建议,NPM仓库的维护人员可以基于所识别的潜在问题指标,计算并展示风险模型。这类模型将使程序包管理器评估程序包的安全并解决潜在的弱点方面。它还将使程序包用户在将新程序包集成到开发管道前,做出更充分、基于数据的决策并做出比对。

Zahan 总结称,“在选择任何程序包之前,请先考虑程序包的安全。不要只因为其他人也在使用就使用某个程序包。我们和 OpenSSF、Metrics、Scorecard 和 Best Practices Badge 项目一起提出的薄弱链条是测试供应链中程序包风险的良好开头。”


开源卫士试用地址:https://oss.qianxin.com






推荐阅读
在线阅读版:《2021中国软件供应链安全分析报告》全文开源代码是下一轮攻击潮的重灾区
软件开发的三大关键安全趋势和最佳实践
谷歌宣布 Linux Kernel、Kubernetes 0day 漏洞奖励加倍
Apache Cassandra 开源数据库软件修复高危RCE漏洞2021年软件供应链攻击数量激增300%+
热门开源CMS平台 Umbraco 中存在多个安全漏洞,可使账户遭接管
详细分析开源软件项目 Ajax.NET Professional 中的RCE 漏洞(CVE-2021-23758)
SAP 严重漏洞可导致供应链攻击
Apache PLC4X开发者向企业下最后通牒:如不提供资助将停止支持
Apache 软件基金会:顶级项目仍使用老旧软件,补丁作用被削弱
美国商务部发布软件物料清单 (SBOM) 的最小元素(上)
美国商务部发布软件物料清单 (SBOM) 的最小元素(中)
美国商务部发布软件物料清单 (SBOM) 的最小元素(下)
NIST 发布关于使用“行政令-关键软件”的安全措施指南
NIST 按行政令关于加强软件供应链安全的要求,给出“关键软件”的定义及所含11类软件SolarWinds 攻击者再次发动供应链攻击
美国“加强软件供应链安全实践的指南” (SSDF V1.1草案) 解读来了
软件供应链安全现状分析与对策建议
“木马源”攻击影响多数编程语言的编译器,将在软件供应链攻击中发挥巨大作用GitHub 在 “tar” 和 npm CLI 中发现7个高危的代码执行漏洞
流行的 NPM 包依赖关系中存在远程代码执行缺陷
速修复!热门npm 库 netmask 被曝严重的软件供应链漏洞,已存在9年
Npm 恶意包试图窃取 Discord 敏感信息和浏览器文件
微软“照片”应用Raw 格式图像编码器漏洞 (CVE-2021-24091)的技术分析SolarWinds 供应链事件后,美国考虑实施软件安全评级和标准机制
找到软件供应链的薄弱链条
GitHub谈软件供应链安全及其重要性
揭秘新的供应链攻击:一研究员靠它成功入侵微软、苹果等 35 家科技公司开源软件漏洞安全风险分析
开源OS FreeBSD 中 ftpd chroot 本地提权漏洞 (CVE-2020-7468) 的技术分析
集结30+漏洞 exploit,Gitpaste-12 蠕虫影响 Linux 和开源组件等限时赠书|《软件供应链安全—源代码缺陷实例剖析》新书上市
热门开源CI/CD解决方案 GoCD 中曝极严重漏洞,可被用于接管服务器并执行任意代码
GitKraken漏洞可用于盗取源代码,四大代码托管平台撤销SSH密钥
因服务器配置不当,热门直播平台 Twitch 的125GB 数据和源代码被泄露
彪马PUMA源代码被盗,称客户数据不受影响




原文链接

https://portswigger.net/daily-swig/data-study-reveals-predictors-of-supply-chain-attacks-in-npm-repositories


题图:Pixabay License



本文由奇安信编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。




奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的产品线。

    觉得不错,就点个 “在看” 或 "赞” 吧~

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存