一种基于可达性分析的组件间交互威胁检测方法及装置制造方法及图纸

技术编号:30753361 阅读:36 留言:0更新日期:2021-11-10 12:07
本发明专利技术公开一种基于可达性分析的组件间交互威胁检测方法及装置,包括基于软件系统中主应用及依赖组件的相应中间表示代码,构建主应用类层次图、主应用调用图、主应用过程间控制流图、主应用系统依赖图、依赖组件类层次图与依赖组件系统依赖图;利用漏洞路径可达性和外部输入可控性,判断某个组件内的漏洞能否能通过组件间交互触发。本发明专利技术不局限于分析某一类漏洞,而是通过对输入点、交互接口的识别和漏洞路径可达性、外部输入可控性分析,实现通用的威胁检测效果,且结果具有较强的可验证性和可复现性。和可复现性。和可复现性。

【技术实现步骤摘要】
一种基于可达性分析的组件间交互威胁检测方法及装置


[0001]本专利技术涉及程序分析领域,尤其涉及一种基于可达性分析的组件间交互威胁检测方法及装置,其中可达性分析包括输入可达性分析和路径可达性分析。

技术介绍

[0002]大数据所蕴藏的巨大价值,使其成为当前网络攻击的重点目标之一。但大数据处理程序及其所依托的大数据平台,普通重视服务的高可用性、高扩展性,未充分考虑安全性,导致在大数据处理过程中存在安全风险。大数据处理程序中的漏洞类型不以传统漏洞为主,而多为逻辑缺陷或由于组件间交互引入的安全威胁,且因其交互频繁、种类多样、触发条件复杂难以检测、复现、分析、定位。以模糊测试为代表的传统漏洞挖掘技术虽能有效发现操作系统内核、协议、开源库等关键基础软件中的漏洞,但其未对大数据处理程序中由于组件间交互引入的安全威胁进行适配,缺乏相应场景的威胁检测能力。
[0003]程序分析是指对计算机程序进行自动化的处理,以确认或发现其特性,比如性能、安全性等。程序分析应用的场景包括编译优化、缺陷检测、故障定位等,可以用来发现缓冲区溢出、释放后重用、空指针解引用本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于可达性分析的组件间交互威胁检测方法,其步骤包括:1)收集漏洞,组成漏洞集合,并将待分析软件系统中主应用及依赖组件的代码进行反汇编或中间翻译,得到中间表示代码;2)依据中间表示代码,分别构建主应用类层次图、主应用调用图、主应用过程间控制流图、主应用系统依赖图、依赖组件类层次图与依赖组件系统依赖图;3)利用主应用类层次图及主应用调用图进行分析,获取若干候选外部输入点;4)在主应用过程间控制流图上进行分析,并根据获取的被调用函数的函数原型,在主应用类层次图上进行检索,将主应用类层次图上查询不到类型引用的被调用函数,放入调用指令集合,其中函数原型包括:类型引用、函数名、参数数量和参数类型;5)将调用指令集合中的每一调用函数与依赖组件类层次图中的函数进行匹配,并将匹配成功的调用函数作为组件间的交互接口,把交互接口调用点放入调用点集合;6)利用主应用系统依赖图,获取与候选外部输入点存在数据依赖关系的交互接口调用点,并将存在依赖关系的交互接口调用点,作为可控交互接口调用点;7)利用依赖组件系统依赖图,识别与漏洞集合中各漏洞存在数据依赖关系的可控交互接口调用点,得到组件间交互威胁检测结果。2.如权利要求1所述的方法,其特征在于,主应用及依赖组件的代码包括:源代码、字节码或二进制代码。3.如权利要求1所述的方法,其特征在于,主应用类层次图或依赖组件类层次图中的每个节点代表面向对象语言中的一个类,边代表类的继承关系;主应用调用图中的每个节点代表一个函数,边代表函数调用关系;主应用过程间控制流图中的每个节点代表函数中的一个基本块,边代表控制流转移关系;主应用系统依赖图中每一函数表示一主应用程序依赖图,依赖组件系统依赖图中每一函数表示一依赖组件程序依赖图,主应用程序依赖图或依赖组件程序依赖图中的每个节点为程序中的语句,边表示数据依赖关系。4.如权利要求1所述的方法,其特征在于,通过以下步骤查...

【专利技术属性】
技术研发人员:李文超李丰薄德芳周建华霍玮
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1