在软件供应链安全事件频发的当下,以开源漏洞和供应链投毒为代表的安全风险成为影响我国关键基础设施和重要信息系统安全的主要威胁,保障软件供应链安全已经成为业界共识。我国政府对此高度重视,并在政策和标准层面不断加强软件供应链安全管理的要求,同时积极推动对关键管控点和具体实施措施的深入研究与落实。
尽管如此,当前的软件供应链安全管理实践中仍面临诸多挑战,主要体现在以下几个方面:
检测手段和检测维度单一,软件组成成分不透明
软件运维和安全管理人员往往缺乏软件开发背景,对软件的具体构成和组件了解不足。在软件交付过程中,常常忽视要求供应商提供详尽的软件物料清单(SBOM),导致未能建立起完整的软件系统组成成分资产台账。软件组成成分及其来源的不透明,致使软件供应链安全风险难以全面识别。同时,由于传统的SCA工具技术手段和检测维度较为单一,重点关注开源组件的识别和风险分析,导致无法构建全量软件供应链资产图谱和完整的SBOM清单。
软件供应链风险暴露面多,检测面难以全覆盖
软件供应链攻击可能发生在软件的生产、交付、运行等各个环节,风险暴露面较多,且攻击手段日益多样化。全流程管控缺少有力的抓手,往往难以做到面面俱到,因此需要体系化的解决方案来有效管理风险。
检测运营效率低,软件供应链风险处置被动
在2024年世界互联网大会“网络空间安全治理”新产品新技术发布会上,默安科技产品总监满弘鹏正式介绍了最新升级版雳鉴·软件供应链风险评估平台(以下简称“雳鉴SSCRA”)。该平台最新融入AI技术,实现了产品功能的创新及应用场景的扩展,旨在提供更全面、高效的软件供应链安全解决方案,帮助客户从容应对安全运营管理中面临的合规性、管理性和技术性挑战。
满弘鹏指出,雳鉴SSCRA依托于动静结合的复合型检测引擎,通过底层引擎联动及检测结果聚合,来实现软件供应链成分资产、自主可控信息、应用安全风险和数据安全风险的全面梳理。随着人工智能技术的不断进步,其在软件供应链安全运营管理中的作用日益凸显。AI技术的深度应用,极大地增强了平台对潜在安全威胁的识别和响应速度,能够进一步实现从采购到开发、交付、运维的软件供应链全生命周期安全管控全覆盖,从而大幅提高技术检测和运营管控的效率。
为了进一步增强软件供应链安全检测的覆盖面,通常需要针对老旧应用系统的二进制文件进行深入分析,以识别其中的开源软件成分。而传统的SCA工具采用的技术手段和检测维度较为单一,难以全面识别全量软件供应链成分资产及安全风险。
雳鉴SSCRA使用的二进制软件成分分析技术,依托于先进的Embedding模型,能够通过二进制分析引擎实现对软件制品的逆向分析。通过提取特征字符串、函数符号、函数汇编代码等关键信息,针对代码语义信息,计算程序属性控制流图特征,并运用孪生图神经网络的表示学习算法,以获得二进制函数级的语义向量。
此外,雳鉴SSCRA基于大数据分析技术,也能在构建的海量二进制组件知识库中通过并行KNN算法进行多路召回,实现对二进制制品高效、精确的软件成分分析。不仅能提高分析的准确性,还能极大提升处理速度,为软件供应链的安全检测提供强有力的技术支持。
同时,依托图嵌入神经网络模型,在知识图谱中为每个节点实时更新嵌入向量,根据当前风险情况自动调整每个节点的风险评分。当有新的漏洞信息被添加到图谱中时,图嵌入可以快速更新该节点的风险分值并影响其关联节点,实现动态风险评估和预警。人工智能驱动下的知识图谱技术让平台能够更高效地实现软件供应链成分聚合,同时极大提升软件供应链风险处置的效率和精确性。
为了准确评估软件代码的自主可控水平和计算源代码的自研比例,默安科技自研基于AI深度学习的代码同源性检测引擎。传统的代码同源性检测技术通常采用哈希算法+滑动窗口算法,这种方案的局限性体现在往往只能通过表层文本特征进行分析,而对于经过变形或篡改的克隆代码,检测能力则十分有限。
雳鉴SSCRA所使用的代码同源性检测引擎通过结合基于抽象语法树(AST)与 CodeBERT模型的创新方法,将代码的语法结构分析与深度语义理解进行融合,同时提取代码的核心逻辑流和结构特征,打造出精准高效的代码自研率评估框架,能够有效识别包括Type-1、Type-2、Type-3在内的代码克隆类型。人工智能技术的运用使单点技术检测能力(如代码同源性分析、二进制成分分析)得以有效提升,拓展了检测对象及范围,平台强大的管理能力也让安全运营管控效率实现大幅提升。
除了应用人工智能技术对于功能创新的探索以及应用场景的扩展之外,默安科技还致力于使用大模型技术对现有的检测引擎能力进行提升优化,降低用户的运营成本。目前,已将大模型技术全面应用于白盒和灰盒漏洞检测产品中,并即将于近期在供应链安全平台中进行全面集成。
通过代码安全大模型,在数据流中可以进行过滤函数的自动识别和过滤效果判定,结合污点数据流、控制流、漏洞原理、漏洞利用手法和过滤操作分析进行误报的综合研判。目前,默安科技的引擎对于误报检测正确率总体高于80%,误报告警率低于20%。
此外,代码安全大模型可以对于漏洞发生的上下文进行理解和分析,并生成针对性的修复策略,在原本代码的基础上生成代码修复片段,并给出代码修复思路,能够确保修复措施的准确性和有效性。目前,可以支持140余种中高危漏洞类型的修复。
在人工智能技术的推动下,软件供应链安全管理正在经历一场深刻的技术变革。在市场应用方面,雳鉴SSCRA最先落地电网行业,并已成功推动电网将软件供应链安全检测纳入了“入网安全评估”工作,实现了关键基础设施单位的软件供应链安全卡点常态化。同时,该平台也陆续应用于水利、运营商、政府和监管支撑单位等其它关键信息基础设施运营单位,在网络安全防护中扮演着至关重要的角色。未来,随着人工智能技术的不断深化,雳鉴SSCRA也将继续提升服务品质,为各行业的数字化转型和智能化升级提供强有力的支持。