浅谈境外黑客组织利用SonarQube漏洞攻击事件
浅谈境外黑客组织利用SonarQube漏洞攻击事件
深入分析ATW事件就会发现,此次持续性的源码泄露事件根本原因在于各企业的SonarQube平台被入侵。SonarQube系统在默认配置下,会将通过审计的源代码上传至SonarQube平台。攻击者利用该漏洞,可在未授权的情况下获取SonarQube平台上的程序源代码,轻松窃取项目源代码数据。
进一步讲,此次事件不只是单纯的代码泄露事件或是攻击事件,而是SonarQube平台安全事件、乃至供应链安全事件,这也再次反应了我国供应链安全的严峻现状。
事实上,长久以来,软件供应链安全的重要性和迫切性已逐渐被行业公认,主要体现在以下几个方面:
1)开源软件和第三方组件的使用遍布所有软件中,第三方库组件代码量占全部软件代码量的80%以上。然而,第三方组件却是黑客最容易利用的软件,一旦某一个第三方组件漏洞被利用,使用该第三方组件的所有软件都会被利用。
2)第三方组件库主要在美国,Github作为最大的第三方代码库,几乎囊括了90%以上的第三方开源组件,我国管理机构难以对其使用进行安全审计,并建立合理的分发监管制度。
3)源代码是软件的原始形态,位于软件供应链的源头。源代码安全已成为软件供应链安全的基础,然而面对源代码安全,主要依靠人工方式去检测软件供应链中的风险,导致效率低,漏报高,且过度依赖海外产品,国内缺乏可有效分析软件成分、测量供应链安全的技术和手段。
我国经数年发展在软件供应链方面已取得一定成果,如开源软件基金会、软件供应链安全标准和管理办法等。但目前我国在软件供应链安全方面的基础比较薄弱,更缺乏一套极为关键的软件供应链安全检测系统,能及时有效的发现、分析、处置、防护软件供应链安全风险,整体提升软件供应链安全水平。
二、国内外软件供应链安全检测技术研究进展
(一)美国在软件供应链安全检测技术上早有布局
美国国防部下属的DARPA(美国国防高级研究计划局)4年内投入$59,000,000(约3.5亿人民币),来尝试解决软件供应链安全检测问题。在2013 年,DARPA高调发布一项旨在针对关键系统、软件、固件进行恶意软件供应链中的后门自动检测的项目—VET,时长5年,参与方涵盖主要军工企业、高校。工业界近一两年也开始把目光投到软件供应链安全这个命题之上,虽然还没有规模化的研究体系,但是从业界动态上来看,主要大型研究机构和企业已经开始了自己的研究和实践。例如在作为安全行业业界风向标的美国RSA2018会议上,聚集了6场次关于软件供应链安全技术的主题演讲,可见对这个方向可能爆发新型、重大安全威胁事件的预判是一线研究与企业一致的看法。
(二)我国在软件供应链安全检测技术上有所尝试
尽管国内的安全对抗(CTF、DefCon)比赛层出不穷,比赛形式多种多样,比赛数以千计,但本质上都是手工方式的比赛,不是自动化的方法。人自身的能力是比赛最大竞争力,带来的问题是技术无法落地。为此,2018年阿里巴巴举办了软件供应链安全大赛,旨在通过自动化的方式发现软件中的后门,该比赛历时1年,汇聚了国内外多个著名战队,包括了中科院信工所的G15, 北京大学的SeBOT、北航的Lancet、国防科大的Holiday、360等,比赛中蓝军战队模拟软件供应链中的“黑客”经验在代码中故意植入后门,而红军必须要采用全自动的方法快速发现后门。该比赛受到了国内外广泛关注,是国内第一次也是目前唯一一次采用软件供应链安全检测的尝试。阿里巴巴软件供应链安全比赛之后,尽管掀起了一股软件供应链安全检测技术的热风,但由于在技术门槛高、完全自动化运行等特点,也导致了缺乏参与基础,只有十几个队伍在参与。由此目前的软件供应链检测技术还是停留在人工检测水平,与美国相比相去甚远。
(三)技术门槛相对较高,国外工具在该领域处于垄断
软件供应链安全检测技术本质上说是代码后门检测的技术应用,也就是代码分析技术的应用。代码分析技术作为软件编译技术的分支,多年来处于国外垄断状态,因为其对编译技术基础要求高,底层算法能力要求强。国内已出现了一些厂商,典型的如核心源于北京大学的鸿渐科技、中科院的中科天齐、港科大的源伞等,由于国内团队成立时间短,尚未形成足够的积累完全取代国外工具。如新思的Coverity、BlackDuck、Perforce的Klocwork等。
软件成分分析工具能够在一定程度上解决第三方组件的安全检测问题,但目前大多数软件开发企业并没有足够重视,相关的标准也没有强制实施。
从技术上看,目前国产软件成分分析工具也和国外同类工具无论从检测粒度、效率到库的积累数量,均存在差距,需要一段时间技术沉淀。相对于软件成分分析,代码后门检测技术我国基本处于起步阶段,也没有像美国DARPA这样专项基金投入。国内仅有的代码分析技术团队,由于市场和政策等原因没有在该方向发力,导致后门检测目前均为手动检测,存在非常大的不确定性。
三、供应链安全保障工作落地建议
当前,非常多的安全服务企业已经针对供应链安全保障工作提出了详细的可行建议,此处不再赘述基本流程,我们着重说明以下两点:
1、供应链安全下的DEVSECOPS和安全左移
实施任何工作和工具都不能独立于组织原有流程之外,理想的供应链安全保障工作应该是借助自动化工具,将工具工作流和安全管控工作流融入企业原有研发流程,从而实现安全左移达到安全问题早发现的目标,并支撑DEVSECOPS的建设以保障敏捷变更的安全。