[发明专利]基于图挖掘的软件逻辑漏洞检测方法有效
申请号: | 202010647971.0 | 申请日: | 2020-07-07 |
公开(公告)号: | CN111931181B | 公开(公告)日: | 2022-09-09 |
发明(设计)人: | 单纯;王鹏;王可惟;王志军;余涛 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56;G06F8/41 |
代理公司: | 北京理工大学专利中心 11120 | 代理人: | 田亚琪;刘芳 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 挖掘 软件 逻辑 漏洞 检测 方法 | ||
本发明公开了基于图挖掘的软件逻辑漏洞检测方法,侧重于解决基于SSL/TLS协议软件库的软件逻辑漏洞的检测问题,涉及到漏洞逻辑规则的提取、客户端软件的静态分析与建模;本发明提升了静态分析过程在逻辑漏洞领域的可用性和易用性,针对研究目标简化了应用源程序的表征规模,同时定义一种适合逻辑漏洞检测的抽象建模方式,以丰富语义的系统属性图来对源程序进行描述;本发明还指明了如何在图挖掘技术的支持下进行预定义漏洞规则的匹配来发现潜在的逻辑漏洞,并且能够保证一定的效率。
技术领域
本发明属于软件安全的技术领域,具体涉及一种基于图挖掘的软件逻辑漏洞检测方法。
背景技术
使用SSL/TLS协议可以为通信提供安全性保障以达到可认证性和保密性要求,目前主流的使用方法都是借助于OpenSSL、GnuTLS及JSSE等开源协议软件库包来简化开发流程,但这种简化并不能确保基于协议软件库开发的应用程序都是安全的,目前很多软件仓库发行版中的客户端软件依然存在着身份认证相关逻辑漏洞。漏洞的动态分析技术在实践过程中受影响因素太多,不确定性高,此外也不能保证对源码的测试覆盖率;传统的基于二进制漏洞检测缺乏上层的代码结构信息和类型信息故而分析难度大;基于源代码逻辑推理的漏洞检测方法使用到数学推理和证明,但难以对复杂漏洞逻辑进行检测;基于代码相似性的表征包括了文本、度量、标记、树、图表这5种方式,前三种对软件漏洞的描述能力非常不全面且限制条件过多。所以目前树和图更适合用于研究逻辑漏洞模式特征。
发明内容
有鉴于此,本发明提供了一种基于图挖掘的软件逻辑漏洞检测方法,能够实现特定逻辑漏洞的准确检测,并且具有通用性。
实现本发明的技术方案如下:
基于图挖掘的软件逻辑漏洞检测方法,包括以下步骤:
步骤一、加载客户端软件源代码,构建基于源码的抽象语法树(AST)、控制流图(CFG)和程序依赖图(PDG)这三种中间表示,并将AST优化处理获得简化型抽象语法树(SAST),将PDG增强处理获得增强型程序依赖图(EPDG);
步骤二、将步骤一获得的SAST、EPDG连同CFG一起整合构建出系统属性图(SPG),然后将SPG存储到图数据库中;
步骤三、对SSL/TLS协议软件库接口的正确使用模式进行抽象提取,得到接口逻辑规则;
步骤四、将步骤三中的接口逻辑规则采用人工分析的方式,手动构建遵循 SPG规范的图模型;
步骤五、用CQL语言编码步骤四的图模型,在图数据库中将编码后的图模型与步骤二所得的SPG执行规则进行匹配,若匹配成功,则该图模型就是客户端软件SPG的子图,即满足接口逻辑规则而无逻辑漏洞;否则,客户端软件存在逻辑漏洞。
有益效果:
本发明基于软件建模和图挖掘技术,提出了一种专门用于检测SSL/TLS协议软件库接口调用相关逻辑漏洞的新方法。
1、本发明对现有的基于源代码的表征方式进行改进,对抽象语法树和程序依赖图进行了优化处理,在此基础上提出了一种由三类中间表示联合构建出的新型图模型SPG。SPG能够覆盖到检测过程需要的所有语义和结构信息,非常适合对协议软件库的复杂逻辑漏洞得规则进行表征,应用到软件建模中可以极大地方便后续的规则匹配过程。
2、本发明提出了一种针对特定逻辑漏洞的检测方式,检测的结构基础是系统属性图,检测的对象是存储在图数据库中的源码的系统属性图。首先把开发过程中接口的正确调用逻辑提取出来,再按照系统属性图的标准进行构建,获得的是各客户端中特定功能模块系统属性图的子图形式,利用CQL语言描述该子图形式,即可在图数据库上进行规则匹配。该匹配检测方式是目前效率较高的途径,配备达到性能要求的处理器与GPU,即可使得最耗时的部分工作自动化执行,且该方法准确率高。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010647971.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种铸造用打通砂型盲孔的装置
- 下一篇:电解槽车间用高空自动加料装置