软件供应链安全2022年回顾
Gartner指出,软件供应链攻击已成为推动企业数字化转型的最大挑战之一。也有人将其定性为软件供应链安全元年,并视为新上任首席信息官(CIO)的核心任务。随着技术的发展和网络安全意识的增长,在线平台开发人员和信息安全专家正在将越来越多的时间投入保障企业数据的安全性。
我们通过全面排查系统中的潜在漏洞以及开源组件规模的变动情况,并重点关注涉及的漏洞风险事件、行业规范与技术要求等关键要素的变化趋势及分布特征;同时结合产品的功能特性定位关注点展开深入分析研究。旨在系统回顾当前软件供应链安全领域的相关状况和发展动态。
可以看到:
- 新出现的漏洞和开源组件的数量都在增长
中国拥有6个针对特定行业的信息安全管理法规涵盖了软件供应链领域。随着技术的发展,在加快构建完整的软件供应链安全标准体系的基础上不断推进相关工作。这些国家纷纷制定了相应的指导方针和实施计划
我们注意到,在软件供应链安全产品能力方面,企业开发者和安全团队除了基本功能之外特别关注。
-
漏洞治理优先级
-
漏洞可达性分析
-
降低修复成本
-
二进制成分分析
-
研发流水线集成
我们预见到,在未来将有更多软件供应链的安全风险被公众了解,并将在全链条治理方面的能力和标准将逐步提升;这些趋势将为产品能力的发展方向提供参考。
-
检测精度不断加深
-
适用范围越来越广
-
重视研发体验
-
集成能力增强
相关信息及数据...基于我们通过研究与分析得出的相关信息,可能存在不足之处,也诚挚地邀请读者提出宝贵意见或补充信息。
漏洞及开源组件增长
在最新的一年中(即2022年),CVE新增了33,034个漏洞……
美国网络安全和基础设施安全局(CISA)自2021年11月起负责维护一个记录已知可利用漏洞的清单(Known Exploited Vulnerabilities Catalog)。截至到最新报告日期前的一年中(即截至到今年的数据),该清单中新增了557个可利用漏洞信息,并使整体数量升至868个。

基于Java、Python和Node.js生态框架,在其各自对应的 Maven 中心仓库、PyPI 仓库以及 npm 仓库中可以看出开源组件数量呈现出稳步增长的趋势。

安全漏洞与投毒事件
漏洞是软件供应链安全的主要关注点之一,在过去几年中,投毒攻击愈演愈烈。因此我们按月统计分析了影响较大的漏洞和投毒事件。
1月-PwnKit漏洞、faker.js/color.js投毒
Qualys公司的安全研究人员在Linux内核polkit组件pkexec中发现了一款已持续存在12年的PwnKit漏洞(编号为CVE-2021-4034)。通过该漏洞的应用,则可在所有主流Linux发行版上实现本地提权。

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

3月-Node-ipc投毒、Spring4Shell漏洞
Node-ipc作为NPM上下载量每月均超过百万的开源组件,在3月7日因开发者因不满俄乌战争而在代码中植入了针对俄罗斯及白俄罗斯IP地址用户的恶意行为:删除或覆盖其磁盘文件,并利用peacenotwar组件将反战标语放置于用户的桌面上。

在3月31日这一天,Spring发布了安全公告,并对涉及spring-webmvc 和 spring-webflux的远程代码执行漏洞进行了修复(编号为CVE- )。这些漏洞与Log4Shell(CVE- )匹配,并被一些安全研究机构称为Spring4Shell。

4月-Gitlab测试密码硬编码漏洞
4月1日发布的Gitlab安全公告指出,在最新版本中已消除因硬编码密码导致的账号被接管的安全隐患(编号为CVE-2022-1162)。由于采用OmniAuth功能的新版Gitlab客户端被发现存在利用第三方登录功能绕过认证的问题。攻击者可利用该漏洞通过第三方登录功能绕过认证机制,并通过输入固定测试密码访问任意用户账户。

5月-Fastjson反序列化漏洞、Follina漏洞
5月23日正式宣布发布fastjson安全修复版本1.2.83, 该版本解决了针对特定场景规避autoType关闭机制的漏洞(CVE-2022-25845). 建议fastjson用户请快行动采取必要的安全措施来保障系统的安全性.
5月27日,《NaoSec团队》发布了利用微软Office中的诊断工具(MSDT)进行远程代码执行攻击的关键漏洞,并将其标记为Follina(CVE-2022-30190)。

6月-Atlassian Confluence OGNL注入漏洞
6月3日时,Atlassian公司宣布了新的安全公告,在其Confluence Server 和 Data Center版本中解决了远程运行任意代码的重大漏洞(编号为CVE-2022-26134)。由于URL中的OGNL表达式存在注入问题,攻击者无需经过认证即可通过发送经过特定OGNL表达式的请求来执行恶意代码。
7月-Apache Commons Configuration 任意代码执行漏洞
2023年7月6日,Apache基金会通过公告揭示,在其Commons Configuration组件中发现存在与Log4j相同的插值功能(interpolation),这使得攻击者能够利用形如${prefix:name}的字符串来执行任意代码。为此建议相关开发者立即升级至最新版本以避免潜在的安全风险。
八月时,在Atlassian的BitbucketServer和DataCenter平台发现存在命令注入漏洞事件,并且GitHub平台上出现针对超过3.5万个开源代码文件的代码提升攻击情况
在Twitter上发表声明的是8月3日的一名名为Stephen Lacy的工程师,在其发布声明称发现了大量GitHub仓库被注入恶意代码,并导致感染文件数量超过了三万份左右(约3.5万)。随后GitHub平台采取措施删除了这些恶意修改过的仓库内容。攻击者似乎采用了复制并嵌入恶意代码到许多已有的开源项目中的策略,在注入恶意逻辑后又重新提交了相关代码版本。值得庆幸的是,由于这些被注入恶意代码的开源项目大多不为人们所关注而被快速删除或不再传播的缘故,在此次事件中实际产生的影响并不大

于 8 月 24 日, Atlassian 官方安全公告公布了 CVE-2022-36804 号的安全漏洞. 因为 Bitbucket Server 和其 Data Center 模块中的多个 API 接口存在 command injection vulnerability, 这些未经授权的访问者可通过发送恶意 HTTP 请求来执行任意代码指令.
9月-Linux kernel 释放后重用漏洞(DirtyCred)
9月20日这一天,一名安全研究人员披露了一种持续时间超过8年的Linux内核权限提升漏洞,CVE编号为CVE-2022-2588利用代码.这种漏洞对应于系统程序包中的DirtyPipe组件,并被特别命名为DirtyCred漏洞.这一缺陷源于Linux内核中位于net/sched/cls_route.c文件中的route4_change函数在释放后重用过程中存在缺陷,当系统中的用户或网络接口具备CAP_NET_ADMIN权限时,攻击者便可以通过此缺陷将普通用户的访问权限提升至root级别.

10月-Apache Commons Text 远程命令执行漏洞(Text4Shell)
13th October, the Apache Commons Text team issued a advisory revealing that vulnerabilities affecting versions prior to 1.10.0 were open to remote code execution (CVE-2022-42889). This particular vulnerability emerged due to the software's support for interpolation features akin to those found in Log4j, leading security experts to classify it as the Text4Shell vulnerability.
The advisory stated that this flaw was caused by the inclusion of similar interpolation capabilities, which enabled attackers to execute arbitrary code across affected systems.
Consequently, this issue has garnered significant attention from the security community and has been formally named the Text4Shell vulnerability.
由于任意代码执行漏洞(CVE-2022-33980)的存在,Apache Commons Configuration也受到了影响,同样是因为对Commons Text进行了双重封装.
11月-OpenSSL 远程代码执行漏洞
11月1日,《 openssl 》官方发布了关于存在潜在远程代码执行能力的高危漏洞通报(CVE-2022-3602)。该漏洞源于因X.509证书验证过程中的缓冲区溢出风险,在名称约束检查环节可能出现问题, 可能导致拒绝服务攻击或远程代码执行。
于2019年10月25日之前发布的OpenSSL版本公告中

12月-Linux内核ksmbd模块任意代码执行漏洞、PyTorch-nightly遭遇投毒
ZDI于12月23日宣布发现Linux内核ksmbd模块存在最高CVSS得分为满分(满分)的缺陷(CVE-2022-47939)。该缺陷自Linux 5.15内核版本起就已引入,并因Linux内核在处理SMB文件系统中的SMB2_TREE_DISCONNECT命令时存在后门利用漏洞导致严重安全风险:攻击者无需先进行身份认证即可绕过该漏洞进行恶意操作以远程执行任意代码。
在12月31日发布时,PyTorch团队于PyPI软件包 repository中发现了名为torchtriton的一个恶意软件包。由于其名称与PyTorch官方nightly版本中的一个私有软件包具有相同标识,在下载依赖项时会优先考虑该软件包。这种高优先级可能导致该恶意软件在用户未意识到的情况下被本地系统安装。该恶意软件不仅会收集包括IP地址、用户名以及当前工作目录在内的基本用户标识信息,并且还会进一步非法获取诸如/etc/hosts文件、/etc/passwd文件、HOME目录下的前1000个文件以及HOME/.gitconfig和$HOME/.ssh目录下的所有文件内容。

法规与标准
中国
行业法规:6个针对特定行业的信息安全管理法规中涉及软件供应链
1月5日正式发布《银行保险机构信息科技外包风险监管办法》
于3月7日正式发布,《车联网网络安全和数据安全标准体系建设指南》(http://www.gov.cn/zhengce/zhengceku/2022-03/07/content_5677676.htm)
*于3月29日正式发布,《关于进一步加强新能源汽车企业安全体系建设的意见稿》相关五部门于3月29日正式发布。
4月29日,证监会正式宣布发布《证券期货业网络安全管理办法(征求意见稿)》
根据《医疗卫生机构网络安全管理办法》(http://www.gov.cn/zhengce/zhengceku/2022-08/30/content_5707404.htm),国家卫生健康委等三个部门于8月30日共同制定了这一规范性文件。
11月16日,《电力行业网络安全管理办法》正式公布
标准与指南:该软件供应链安全国家标准正处在征求意见阶段、这些关键基础设施特别关注其供应链安全保护措施
- 6月7日,中国信息通信研究院发布《软件物料清单实践指南》
于9月28日正式颁布该标准(征求意见稿)
- 11月7日,市场监管总局标准技术司、中央网信办网络安全协调局、公安部网络安全保卫局联合发布《信息安全技术 关键信息基础设施安全保护要求》(GB/T 39204-2022)
海外
美国、新加坡、欧盟、英国相继发布软件供应链安全建设计划、指南
三月一日,《网络安全与基础设施安全指导原则》由美国国家安全局此次公布(Network Infrastructure Security Guidance)。
5月1日,《美国网络安全和基础设施安全局》与《美国国家标准技术研究院》共同发布了《网络供应链风险管理指导实践》([Cybersecurity Supply Chain Risk Management Practices for Systems and Organizations](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-161r1.pdf))。
5月27日这一天,《2022制造业网络安全路线图》(Cybersecurity Manufacturing Roadmap 2022)被美国能源部正式公布
于27日当天,新加坡网络安全局/CSA办公室发布了关键信息基础设施 (CII) 供应链计划书[Critical Information Infrastructure Supply Chain Programme Paper]
于9月一日,《面向开发者的软件供应链安全实践指南》(Securing the Software Supply Chain: Recommended Practices Guide for Developers)由美国网络安全和基础设施安全局(CISA)、国家安全局 (NSA) 和国家情报总监办公室 (ODNI) 联合发布
于9月14日,《基于安全软件开发实践以提高软件供应链安全性》的总统办公厅备忘录发布。该文件旨在依靠先进的安全软件措施来优化整个供应链的安全性,并提供了具体的实施步骤和预期效果分析。
On September 15, the EU ratified the Cyber Resilience Act (Cyber Resilience Act)
- 英国网络安全中心于12月10日发布了供应链网络安全指南(How to assess and gain confidence in your supply chain cyber security)
该机构及其合作伙伴于10月31日就《软件供应链安全实践指南》进行了正式发布。(https://media.defense.gov/2022/Oct/31/2003105368/-1/-1/0/SECURING_THE_SOFTWARE_SUPPLY_CHAIN_SUPPLIERS.PDF)
于当日,《面向客户的软件供应链安全实践指南》由美国网络安全和基础设施安全局(CISA)、国家安全局(NSA)及国家情报总监办公室(ODNI)共同公布了(Securing the Software Supply Chain: Recommended Practices Guide for Customers)。
产品能力关注点
随着越来越多的开发及安全工程师采用软件供应链安全治理工具, 从产品角度来看, 它们对产品提出了更高的要求.
漏洞治理优先级
企业安全团队时常面临资源不足的情况,在处理数量庞大的且难以一一修复的漏洞时会感到力不从心。
这时就需要根据重要性高低制定相应的应对措施。
常见的漏洞危害评估多采用CVSS方法,并非绝对适用所有场景
然而仅凭CVSS评分难以全面评估漏洞修复的优先顺序;此外行业界还引入了EPSS(Exploit Prediction Scoring System)这一工具来衡量漏洞的风险等级;一些厂商则会依据自身标准对这些漏洞进行独立评估和打分
除了存在评价客观性易受挑战的问题之外,在多数情况下优先级还会受到企业安全管理状况的影响,并没有一种万无一失的标准方案。
漏洞可达性分析
仅仅依据组件名称及版本区间来判定是否受到漏洞影响同样存在不足;因为这些漏洞往往与特定的代码实现方式及数据传递场景容易被触发。
例如,在Java语言中使用Jackson-Databind进行反序列化操作时会遇到一个问题即反序列化漏洞问题当系统默认启用DefaultTyping特性时应用程序必须调用readValue方法来处理用户的输入json数据才能暴露该漏洞安全工程师在执行漏洞治理任务时可能会遭遇研发工程师对代码实现细节的质疑他们会质疑该代码并未明确调用含有问题的方法而将检测到的误报结果归因于误检进而认为该漏洞并未存在
基于版本判断之外,如果能够进一步分析代码中是否存在这样的代码调用,则有助于提高漏洞识别结果的可信度。从而帮助企业安全团队更好地评估潜在的影响范围。这通常被称为可达性分析。
降低修复成本
开发人员在处理漏洞修复时经常会遇到疑惑。他们可能会考虑升级组件设置以及引入新的配置参数是否会带来不稳定因素,并担心这可能导致与现有系统产生不兼容性。这些问题通常会成为漏洞修复过程中的一大阻碍,并增加了整个修复过程所需的时间。
由于间接依赖的组件存在漏洞,在顺着依赖关系寻找与其直接相关的安全版本时会耗时耗力;从企业角度来看,在面对成批开发者亟需修复的问题时(即缩短修复时间),这不仅提升了研发效能而且显著提升了企业的整体生产力。
该产品应尽量减少开发人员修复漏洞的技术难度,并尽力减轻开发人员心理压力的同时提高安全管理体系的整体效能。
二进制成分分析
软件产物以源代码、制品以及二进制等多种形式存在,在当前我们面临着多种多样的应用场景,在这些不同的情境中,则需要分别对待各种类型的产物进行扫描。
在开发过程中, 通常只需对项目中的源码进行检测; Java代码打包成JAR文件后, 在上线前需对该文件进行检测; 软件通常采用二进制形式交付, 若想分析已部署应用的运行行为, 则会面临大量原始开发信息丢失的问题。
尽管二进制成分分析面临诸多挑战,在实际应用中仍需克服重重困难。然而作为企业供应链中不可忽视的重要组成部分 闭源商业软件曾被视为难以透彻理解的安全治理隐患 现如今也希望能够更加透明化地呈现其内部结构 因此对二进制分析能力的需求也在不断提升
研发流水线集成
由于相当一部分的软件供应链安全问题是在软件开发过程中被引入的,这表明开发者对针对软件开发流程中的工具整合的关注度显著提高。
通过现有研发流水线对接实现产品功能模块的部署与管理,在提升系统性能的同时实现了定位防护功能目标。基于现有技术架构设计的常见集成方案主要包含IDE插件功能模块支持下的自动化配置流程以及独立客户端应用的部署策略等。通常涉及的适配工具包括IDE软件平台支持下的配置脚本管理功能以及代码存储库资源的动态引用机制等。
展望
根据国际数据集团(Gartner)的预测,在未来三年内全球将有45%的企业会经历软件供应链攻击,并且这一比例较2021年增长了两倍多。
在接下来的2023年里,我们预期会遇到更多与软件供应链相关的漏洞和攻击行为;相关的法规与标准将在不断完善的过程中持续发展。
对于这一领域的安全产品,将呈现以下趋势:
- 检测精度不断加深:风险识别越来越接近真实可利用场景;
适用范围越加广泛:涵盖更多种类的软件产物形态;从研发到维护的全过程;各类用户群体。
关注使用体验:安全工具的开发者其采用与否成为关键考量;
集成能力得到显著提升:涵盖研发流水线间的整合与各安全模块间的协同整合,并通过整合形成高效的协同机制。
参考链接
软件供应链安全在 2022 年成为企业的重要议题之一。
企业应采取措施以确保其供应链的安全。
随着数字化转型的推进,信息安全已成为企业运营的关键保障。
全球主要企业的信息安全投入持续增长,显示出对 this 的高度重视。
同时,随着技术的发展,新的威胁手段不断涌现,使得 this 成为了持续关注的重点。
The article discusses the new CIO security priority and its significance in the context of the software supply chain, highlighting its implications for organizations.
该网站发布新闻稿高亮了2022年最重要的网络安全和风险管理趋势。
