软件供应链安全2022年回顾

Gartner认为软件供应链攻击是2022年的主要的威胁来源,有人将2022年称为软件供应链安全元年,是新上任CIO的首要工作,越来越多开发者、安全研究人员在关注软件供应链安全。

我们通过梳理漏洞和开源组件数量变化、相关的漏洞风险事件、法规和标准、产品能力关注点,来对软件供应链安全这一领域进行回顾。

可以看到:

  • 新出现的漏洞和开源组件的数量都在增长
  • 中国有6个针对特定行业的信息安全管理法规中涉及软件供应链,软件供应链安全的标准与指南在加速,美国、新加坡、欧盟、英国也相继发布了软件供应链安全建设计划、指南

我们观察发现在软件供应链安全产品能力上,除了基础功能以外,企业开发者和安全团队更关注:

  • 漏洞治理优先级
  • 漏洞可达性分析
  • 降低修复成本
  • 二进制成分分析
  • 研发流水线集成

我们认为,未来会有更多软件供应链的安全风险暴露到公众视野,针对全链条的治理标准和监管能力会走向成熟,产品能力发展趋势包括:

  • 检测精度不断加深
  • 适用范围越来越广
  • 重视研发体验
  • 集成能力增强

相关的数据及信息基于我们的观察和分析,可能不尽全面,也欢迎读者补充。

漏洞及开源组件增长

在2022年,CVE新公开的漏洞数量为33034个,达到新高。而CNVD公开的漏洞数为10651个,则有所下降。(CNVD的漏洞默认是在收录一年后公开,所以并不能完全反映当前漏洞趋势)

美国网络安全和基础设施安全局(CISA)从2021年11月开始维护一个已知被利用漏洞目录(Known Exploited Vulnerabilities Catalog),在2022年,该目录中的漏洞数量新增了557个,总数达到868个。

软件供应链安全2022年回顾

以java、python、node.js生态为例,从对应的maven中央仓库、pypi仓库、npm仓库中可以看到开源组件数量持续增长。

软件供应链安全2022年回顾

安全漏洞与投毒事件

漏洞是软件供应链安全中关注的首要风险,投毒是近年来越来越频繁出现的攻击方式,因此我们以月为维度梳理了有较大影响的漏洞及投毒事件。

1月-PwnKit漏洞、faker.js/color.js投毒

Qualys公司安全研究人员在Linux内核polkit组件pkexec中发现了存在12 年之久的PwnKit漏洞 (CVE-2021-4034)。通过利用该漏洞,可以在所有主流Linux发行版中实现本地提权。

软件供应链安全2022年回顾

faker.js 和colors.js的作者 Marak Squires 由于不满用户免费使用其开源组件,在这两个包中加入了恶意代码,执行后会输出三行「LIBERTY LIBERTY LIBERTY」,而后开始无限输出非 ASCII 字符。

软件供应链安全2022年回顾

3月-Node-ipc投毒、Spring4Shell漏洞

Node-ipc是NPM中每周下载量超百万的开源组件,3月7日,开发者因为不满俄乌战争,在代码中加入了针对俄罗斯与白俄罗斯IP用户删除、覆盖磁盘文件的恶意代码,通过peacenotwar组件在用户桌面放置反战标语。

软件供应链安全2022年回顾

3月31日,Spring发布安全公告,修复了影响spring-webmvcspring-webflux的远程代码执行漏洞(CVE-2022-22965),与Log4Shell(CVE-2021-44228)对应,有安全研究人员将其称为Spring4Shell。

软件供应链安全2022年回顾

4月-Gitlab测试密码硬编码漏洞

4月1日,Gitlab发布安全公告,在新版本中修复了硬编码密码导致的接管用户账户的安全问题(CVE-2022-1162)。当受影响版本的Gitlab开启OmniAuth后,攻击者可以通过三方登陆功能,利用硬编码的123qweQWE!@#000000000测试密码登录任意账号。

软件供应链安全2022年回顾

5月-Fastjson反序列化漏洞、Follina漏洞

5月23日,java开源组件fastjson开发者发布安全公告,发布了安全修复版本1.2.83,该版本修复了其收到在特定场景下可以绕过autoType关闭限制的漏洞(CVE-2022-25845),建议fastjson用户尽快采取安全措施保障系统安全。

5月27日,nao_sec公布了在微软Office中通过诊断工具(MSDT)利用的远程代码执行漏洞,代号Follina(CVE-2022-30190)。

软件供应链安全2022年回顾

6月-Atlassian Confluence OGNL注入漏洞

6月3日,Atlassian公司发布安全公告,在Confluence Server 和 Data Center新版本中修复了远程执行任意代码的严重漏洞(CVE-2022-26134)。由于URL中的OGNL表达式存在注入问题,攻击者无需认证就可发送请求通过表达式执行恶意代码。

7月-Apache Commons Configuration 任意代码执行漏洞

7月6日,Apache基金会发布公告称在Commons Configuration组件中由于存在与Log4j相同的插值功能(interpolation),攻击者可以利用形如${prefix:name}的字符串执行任意代码,建议开发者升级至新版本。

8月-Atlassian Bitbucket Server 和 Data Center 命令注入漏洞、GitHub中超过3.5万开源代码文件被投毒

8月3日,名为 Stephen Lacy 的工程师在Twitter中表示其发现大量GitHub仓库被加入了恶意代码,感染文件超过3.5万,随后GitHub对这些仓库进行了删除。攻击者大量克隆了已有开源项目的信息,加入恶意逻辑后再次提交代码。所幸由于被投毒的开源仓库大多无人关注,此次事件本身的实际影响较小。

软件供应链安全2022年回顾

8 月 24 日Atlassian官方安全公告发布了CVE-2022-36804漏洞,由于Bitbucket Server 和 Data Center 的多个 API 端点处存在命令注入漏洞,有权访问公共 Bitbucket 存储库或对私有存储库具有读取权限的攻击者可以通过发送恶意 HTTP 请求来执行任意代码。

9月-Linux kernel 释放后重用漏洞(DirtyCred)

9月20日,有安全研究人员公开了存在超过8年的Linux内核权限提升漏洞(CVE-2022-2588)利用代码,与DirtyPipe相对应,该漏洞被称作DirtyCred。漏洞源于Linux 内核net/sched/cls_route.c 实现的 route4_change 中存在释放后重用问题,当用户或网卡空间具有 CAP_NET_ADMIN 的特权能力时,攻击者可以将普通用户权限提升为root。

软件供应链安全2022年回顾

10月-Apache Commons Text 远程命令执行漏洞(Text4Shell)

10月13日,Apache Commons Text团队发布公告称在1.10.0以前的版本中存在远程代码执行漏洞(CVE-2022-42889),该漏洞也是由于支持了与Log4j相同的插值功能(interpolation)导致,因此有安全研究人员称其为Text4Shell漏洞。

此前Apache Commons Configuration的任意代码执行漏洞(CVE-2022-33980)也是由于对Commons Text进行了二次封装。

11月-OpenSSL 远程代码执行漏洞

11月1日,OpenSSL官方正式通告了一个可能远程执行任意代码的高危漏洞(CVE-2022-3602)。由于在 X.509 证书验证过程中(尤其在名称约束检查中)存在缓冲区溢出风险,可能导致拒绝服务或远程代码执行。

在此前10月25日OpenSSL预发布的通告中,该漏洞评级为严重,被认为是OpenSSL历史上第二严重的漏洞(仅次于Heartbleed),但此后考虑利用成本较高,漏洞评级降为高危。

软件供应链安全2022年回顾

12月-Linux内核ksmbd模块任意代码执行漏洞PyTorch-nightly遭遇投毒

12月23日,ZDI公布了一处Linux内核ksmbd模块中存在的CVSS评分为10分(满分)的漏洞(CVE-2022-47939)。ksmbd模块自Linux 5.15版本开始引入,由于Linux内核在处理SMB2_TREE_DISCONNECT 命令时存在释放后重用漏洞,攻击者无需通过身份验证即可利用此漏洞远程执行任意代码。

12月31日,PyTorch团队发现 PyPI 仓库中出现了名为torchtriton的恶意包,由于与PyTorch-nightly中的私有包同名,在获取依赖项时,PyPI 的优先级较高,会导致恶意包在用户不知情下拉取到本地。恶意的torchtriton包不仅获取用户基本指纹信息(例如 IP 地址、用户名和当前工作目录),还会进一步窃取敏感数据(包括/etc/hosts 、/etc/passwd、$HOME/*中的前1000 个文件、$HOME/.gitconfig、$HOME/.ssh/*文件内容)。PyTorch团队通过将torchtriton依赖重新命名为pytorch-triton并发布至PyPI 仓库来修复这个问题。

软件供应链安全2022年回顾

法规与标准

中国

行业法规:6个针对特定行业的信息安全管理法规中涉及软件供应链

标准与指南:软件供应链安全国家标准进入征求意见阶段、关键基础设施强调供应链安全保护

海外

美国、新加坡、欧盟、英国相继发布软件供应链安全建设计划、指南

产品能力关注点

随着越来越多的开发者及安全工程师应用软件供应链安全治理工具,对于产品而言,也在基础能力之上有了更高要求。

漏洞治理优先级

企业安全团队经常面临着资源有限,而面对大量漏洞需要修复无从下手的场景,这时候就必须按照一定的优先级进行处置。

漏洞危害通常采用CVSS进行评分,但是CVSS评分存在着部分漏洞评分过高的问题(如前端组件和后端组件的任意代码执行漏洞评分可能一样,但其大多数情况下危害并不一样)、维度不足(如没有考虑被利用的情况,存在利用工具的漏洞对于企业而言风险更高)的问题。

因此仅仅根据CVSS评分不能客观反映漏洞处置的优先级,业界也提出了EPSS(Exploit Prediction Scoring System)的概念用于反映漏洞的利用情况,部分厂商会针对漏洞做出自己的评级。

除了评价的客观性容易受到挑战以外,优先级大多数情况下还和企业的安全管理状况相关,并没有一个万金油的标准。

漏洞可达性分析

仅依赖组件名称以及版本区间来判断是否受到漏洞影响不够准确,因为漏洞通常依赖于特定的代码写法、数据传递场景才能触发。

例如java中jackson-databind的反序列化漏洞,在应用中需要在开启DefaultTyping特性的情况下,调用readValue方法处理用户输入的json数据才能够被利用。安全工程师进行漏洞治理工作时,可能会被研发工程师挑战称其代码中没有调用问题方法,检测结果属于误报,并不存在漏洞。

因此除了版本判断外,如果能进一步分析代码中是否包含这样能导致漏洞触发的代码调用,则能让漏洞识别结果更有说服力,帮助企业安全团队进一步评估影响面,这被称为可达性分析。

降低修复成本

开发者在修复漏洞时,经常可能存在疑问,升级组件版本、新增某个配置,是否会存在不兼容,导致新代码无法正常完成业务功能。这样的问题常常成为漏洞修复路上的绊脚石,导致修复周期拉长。

对于间接依赖的组件存在漏洞,开发者如果要顺着依赖关系找到对应的直接依赖安全版本,是一个费时费力的事情;对于企业而言,当有大量开发者需要修复漏洞时,如果能够缩短修复漏洞所用的时间,很大程度上也是在提高研发效能、提高企业的生产力。

产品应该尽可能降低开发者修复漏洞的成本,降低开发者心智负担,提升安全治理效率。

二进制成分分析

软件产物有源代码、制品、二进制等多种形态,传统的软件供应链安全产品只能针对源代码做检测,而在当前我们面临着许多不同的应用场景,在不同的场景中就需要对不同的产物进行检测。

比如在开发过程中,通常只需要针对项目中的源码检测;在上线前java代码被打包成了jar包这样的制品,这时候需要对制品进行检测;而软件通过二进制形式交付是常见的做法,如果想要对交付的产品进行分析,则需要面对大量开发阶段信息丢失的问题。

尽管二进制成分分析面临许多困难,但由于闭源形式的商业软件是企业中难以忽视的供应链存在,过去它们往往是黑盒式的软件资产、安全治理的盲区,现在也希望它们也能变得更透明,因此二进制的分析能力在被越来越重视。

研发流水线集成

由于很大一部分的软件供应链安全问题是在研发过程中引入,因此针对研发流水线的工具集成被开发者关注。

与企业现有的研发流水线集成,能够降低开发者的使用成本,也便于建立卡位控制的安全门禁。常见的集成方式包括IDE插件、独立客户端、提供webhook服务等,常见需要适配的研发工具包括:IDE、代码仓库、CI/CD、制品库。

展望

Gartner预计到2025年,全球45%的组织都会遭受过软件供应链攻击,这一数量是2021年的3倍。

在接下来的2023年,我们预计会有更多软件供应链相关的漏洞、攻击事件出现,相关的法规、标准仍在持续完善的阶段。

对于这一领域的安全产品,将呈现以下趋势:

  • 检测精度不断加深:风险识别越来越接近真实可利用场景;
  • 适用范围越来越广:覆盖更多的软件产物形态、覆盖软件供应链全生命周期、覆盖不同的使用人群;
  • 重视研发体验:研发工程师作为安全工具的终端用户,其是否愿意使用变得非常关键;
  • 集成能力增强:包括研发流水线的集成、安全工具之间的集成,通过集成形成有效的协同能力。

参考链接

https://www.infoworld.com/article/3646231/2022-the-year-of-software-supply-chain-security.html

https://www.cio.com/article/410904/the-new-cio-security-priority-your-software-supply-chain.html

https://www.gartner.com/en/newsroom/press-releases/2022-03-07-gartner-identifies-top-security-and-risk-management-trends-for-2022

关于墨菲安全

墨菲安全是一家为您提供专业的软件供应链安全管理的科技公司,核心团队来自百度、华为、乌云等企业,公司为客户提供完整的软件供应链安全管理平台,围绕SBOM提供软件全生命周期的安全管理,平台能力包括软件成分分析、源安全管理、容器镜像检测、漏洞情报预警及商业软件供应链准入评估等多个产品。为客户提供从供应链资产识别管理、风险检测、安全控制、一键修复的完整控制能力。同时产品可以极低成本的和现有开发流程中的各种工具一键打通,包括 IDE、Gitlab、Bitbucket、Jenkins、Harbor、Nexus 等数十种工具无缝集成。

开源地址:https://github.com/murphysecurity/murphysec

官网地址:https://www.murphysec.com/

发布者:墨菲安全,转发请注明出处:https://www.murphysec.com/blog/uncategorized/4652.html

(0)
上一篇 2023年1月9日 15:46
下一篇 2023年2月6日 14:25

相关推荐

  • ChatGPT类AI软件供应链的安全及合规风险

    AIGC将成为重要的软件供应链 近日,OpenAI推出的ChatGPT通过强大的AIGC(人工智能生产内容)能力让不少人认为AI的颠覆性拐点即将到来,基于AI将带来全新的软件产品体验,而AI也将会成为未来软件供应链中非常重要的一环。 在OpenAI的文档中,例举了可以利用其实现的48种应用场景,人们在积极探索如何将以ChatGPT为代表的AI能力应用到各行各…

    2023年2月14日
  • 权威认可|墨菲安全获评 CNNVD 技术支撑单位!

    近日,墨菲未来科技(北京)有限公司荣获《国家信息安全漏洞库(CNNVD)技术支撑单位等级证书》,正式成为 CNNVD 技术支撑单位之一。 墨菲安全能够通过国家信息安全漏洞库(CNNVD)的技术支撑能力考查,依托于核心团队具备超过十年的企业安全建设、安全漏洞研究及安全攻防经验,以及长期在漏洞分析研究、安全能力建设上的积累。 未来,墨菲安全将凭借团队漏洞安全研究…

    2023年1月9日
  • 14 条策略助力企业构建更安全的软件供应链

    每个软件都存在供应链,然而现代软件大部分代码都是开源的,这意味着任何人都可以访问和编辑。但是软件平台的安全取决于其最薄弱的环节,安全漏洞可能随时出现,因此技术领导者必须建立监控和保护供应链中每个环节方案和动作。福布斯技术委员会给出应对软件供应链安全的14条明智的策略,为开发者、企业的安全建设带来思考和建议。 承包商在建造建筑物的时候,会按照计划和流程去采购使…

    2023年3月2日
  • 451个PyPI包通过安装Chrome扩展窃取加密信息

    来自Phylum的安全研究员发现超过 450 个恶意 PyPI python 包会安装恶意浏览器扩展,来劫持基于浏览器的加密钱包和网站进行的加密货币交易。这些恶意的PyPI软件包从2022年11月开始活跃,一直持续到现在,并且数量从27个快速增加到451个。 这些软件包通过包名混淆进行攻击以此来推广,仿冒了一些受欢迎的软件包,但稍微改变了一些内容,例如更改或…

    2023年2月24日
  • 从近期欧美法规看软件供应链安全趋势

    前言 近期美国和欧盟都发布了新的供应链安全相关要求法案,要求厂商评估供应链数字化产品的安全性,此举旨在保护供应链安全,防止SolarWinds 等安全事件的再次发生。 美国和欧盟在各自的法案都提到了软件安全检测,软件物料清单(SBOM)等内容,这意味着通过强制性的网络安全法规要求,企业必须通过披露SBOM、源代码安全检测等手段提升数字化产品安全性,才能继续正…

    2023年1月9日

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-180-9568

邮件:hi@murphysec.com

工作时间:周一至周五,10:00-19:00,节假日休息

关注公众号

20230105-100741