安全|Log4j2危情分析|开源软件安全、软件供应链安全与DevSecOps实践已刻不容缓

近日,安全圈被Apache Log4j2漏洞刷屏。一款使用范围超大的Java日志框架Apache Log4j2被曝出存在远程代码执行漏洞。该漏洞利用条件非常低,攻击者可以利用该漏洞远程执行恶意代码,从而获取服务器的最高权限。相关的POC、EXP也已经被公开,并且出现了利用该漏洞的攻击行为。目前,CVE漏洞库已收录该漏洞,编号为CVE-2021-44228。
一、Log4j2漏洞危情分析
由于Log4j2是一款使用率极高、范围极广基于Java的日志记录工具,广泛被应用在中间件、各种框架、应用程序中。例如:Apache Strust2、Apache Solr、Apache Druid、Apache Dubbo、ElasticSearch、Apache Kafka等。根据Maven仓库的统计,有近7000个组件使用了Apache Log4j2。这些使用了Apache Log4j2进行日志输出的组件或应用,都可能会受该漏洞影响。
安全|Log4j2危情分析|开源软件安全、软件供应链安全与DevSecOps实践已刻不容缓
文章图片
二、开源软件安全危情分析
现有的开发模式和实际的生产场景中,应用软件的开发几乎都需要开发者通过使用各种开源软件进行软件开发,无法自主完成。根据White Source发布的《开源漏洞管理现状》,只有极少数开发人员由于公司的政策要求而没有使用开源软件,96.8%的开发人员依赖于开源软件。另外,据Gartner的调查显示,99%的组织在其信息系统中使用了开源软件。Sonatype公司曾经对3000家企业的开源软件使用情况展开过调查,结果表明每年每家企业平均下载5000多个开源软件。
然而,开源软件中长期存在着大量的软件漏洞风险、开源许可风险等安全隐患,更有甚者存在多年未修复更新的漏洞问题。下图展示了近几年来开源软件漏洞的统计情况。
安全|Log4j2危情分析|开源软件安全、软件供应链安全与DevSecOps实践已刻不容缓
文章图片
事实上,在大型软件开发过程中,开源软件的占比越来越高。软件开发人员往往更关注业务的功能实现,忽视所采用开源软件的安全质量,最终导致软件的安全问题不断累增,越来越多,导致安全威胁点演变成攻击面的恶性状况。
其次,应用程序中使用的开源软件并不能很好地被分辨,软件使用者往往并不清楚产品中使用的开源软件类型和数量。甚至软件开发者在面对庞大的开源软件数量时也并不能做到完全准确的统计。
从此次安全事件中,再次反应出开源软件安全的重要性。作为在应用开发中不可或缺的部分,对开源软件安全关注已经提上国家层面,对开源软件安全的建设也成为当务之急。
三、软件供应链安全危情分析
由上述对开源软件安全现状的危情分析,可以看出开源软件安全问题已经爆发且亟待解决。全球的软件供应链都基于开源软件技术的使用背景,因此软件供应链安全的建设已经是刻不容缓。
对软件供应链安全的危情分析可以从累积性、依赖性、脆弱性三个表象特性展开。

  1. 软件供应链安全的累积性:大量的软件或系统产品包含数量庞大的三方代码源或插件,这些形成最终产品的“零件”或多或少都存在安全隐患甚已知且多年未修补的漏洞。这些漏洞的不断累加会导致软件供应链安全威胁的叠加和爆发。
  2. 软件供应链安全的依赖性:软件供应链是一种技术产品路径,联系着网络空间的不同企业和业务。软件供应链由各个生产节点组成,无论哪个节点遭受攻击或者技术产品存在漏洞威胁都可能导致全软件供应链的崩坏。
  3. 软件供应链安全的脆弱性:在实际情况生产中,真实的网络生态都是由大量交错复杂的生产链条形成的生态网络。这意味着,网络中的每一个节点都可能被攻击导致断裂,而难以计数的节点也就从无数的维度中形成了风险面以及表现出脆弱性。
又因为软件供应链大体分为开发、交付、使用三个环节,所以这三个环节均存在不同阶段性和不同类别的的安全威胁。
四、DevSecOps实践
面对如上所述日益严重的开源软件安全问题以及软件供应链安全问题,我们一致认为,DevSecOps理念的实施落地是解决这些问题的首选途径,也是响应软件供应链安全三大特性的最佳选择。
安全玻璃盒【孝道科技】一直关注着开源软件安全以及软件供应链安全,此前已在此领域内推出DevSecOps安全解决方案。DevSecOps安全解决方案是集开发、安全、运营一体化的解决方案,从最初的立项、设计到集成、测试、部署直至软件交付、运营以及监控,能够在软件开发生命周期的每个阶段自动集成安全性,实现多维度体系化的安全赋能。
在整个DevSecOps安全解决方案中,安全风险是随着软件开发生命周期的阶段进行而不断收敛的,直至最终形成解决问题的闭环。要实施DevSecOps,工具链的建设是其中最重要的环节,需要在整个开发流程中集成各种安全工具。安全玻璃盒自主研发的一系列安全产品,能够助力于安全工具链的建设,解决开源安全风险、软件漏洞风险等安全问题。
安全|Log4j2危情分析|开源软件安全、软件供应链安全与DevSecOps实践已刻不容缓
文章图片
五、安全玻璃盒news
目前安全玻璃盒全线产品已支持对CVE-2021-44228漏洞的检测分析及攻击防护。
1.自鉴-开源组件安全分析系统SCA
安全玻璃盒自鉴-开源组件安全分析系统SCA能够快速、精准识别软件中开源组件的安全性及许可合规性。通过对被引用组件的漏洞检测、跟踪及提供的修复建议,能够提前规避已知漏洞,降低用户面临的软件安全风险。
2.自鉴-交互式应用安全测试系统IAST
安全玻璃盒自鉴-交互式应用安全测试IAST完全采用业内领先的智能动态污点分析技术,通过安全与软件的高度耦合的被动“静默监听”模式,对应用系统漏洞及所引用的三方组件,进行高度自动化、无感知无风险、全面精确可视化的漏洞测试和问题定位。在功能测试过程中同步安全测试,真正达到安全左移的目标,同时也大大提高工作效率和降低用户成本。
3.自御-数字化应用软件安全平台ASTP
安全玻璃盒自御-数字化应用软件安全平台ASTP采用业内领先的智能动态污点分析技术,安全与应用软件实现深度融合,对应用以及所引用的三方组件,实现在线无风险、高效自动化、全面精确可视化的漏洞检测和定位;当发现漏洞后或遇到异常攻击时将立即激活自适应防护机制,实现攻防结合,赋予应用软件具备“自我检测与保护”的安全能力。
【安全|Log4j2危情分析|开源软件安全、软件供应链安全与DevSecOps实践已刻不容缓】六、工具下载
安全玻璃盒【孝道科技】基于自鉴-开源组件安全分析系统SCA产品发布了一款可针对CVE-2021-44228漏洞的免费检测工具,能够快速发现存在风险的Apache Log4j2应用。
下载地址:https://gitee.com/fs1998/Log4j2Test/tree/master

    推荐阅读