[发明专利]软件安全缺陷发现系统有效

专利信息
申请号: 201510456810.2 申请日: 2015-07-29
公开(公告)号: CN105068925B 公开(公告)日: 2017-09-01
发明(设计)人: 胡昌振;赵小林;付裕;王子阳;薛静锋 申请(专利权)人: 北京理工大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 北京理工大学专利中心11120 代理人: 付雷杰,杨志兵
地址: 100081 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 软件 安全 缺陷 发现 系统
【说明书】:

技术领域

本发明涉及软件安全测试技术领域,具体涉及一种软件安全缺陷发现系统。

背景技术

目前软件安全缺陷检测技术种类繁多且分散,主要的检测方法有静态分析、行为监控、模糊测试和渗透测试4类,但上述4类检测方法对软件的检测方式方法完全不一样。例如,利用静态分析检测软件的安全缺陷,通常是针对软件的源代码而言,也有一些工具能够将Java、.NET程序的可执行文件反编译后进行静态分析。目前的静态分析安全缺陷检测工具均是针对于一些主流的编程语言,且不同的编程语言都有其对应的静态分析工具。比如针对C/C++的有CppCheck、Antic,针对Java的有FindBugs、Jlint、PMD等,还有针对PHP的PHPLint以及针对JavaScript的JavaScriptLint。

行为监控是对正在运行中的软件进行监控,记录软件运行时所有的底层系统调用。行为监控分为两个阶段:训练和匹配。训练阶段需要反复多次运行软件,并记录下软件运行时的系统调用序列,提取出其中的序列段形成知识库,序列段是由多个序列组成,代表软件运行中的一次操作,比如打开文件操作。知识库是可以在将来被反复多次利用的,训练次数越多,样本越全,知识库中序列段越精确。然后在实际测试软件的时候,监控本次软件的系统调用序列提取出序列段,并与知识库中序列段相匹配,未能成功匹配的序列段就可能产生安全隐患。

模糊测试的核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言失败,以发现可能的诸如内存泄漏之类的程序错误。针对使用固定的协议或输入内容格式固定的软件,模糊测试通过随机生成的测试数据能够很有效的对软件可信数据的边界进行测试,进而发现那些正常使用时不容易探查到的安全缺陷。

渗透测试是通过模拟恶意黑客的攻击方法,来评估计算机网络系统安全的一种评估方法。这个过程包括对系统的任何弱点、技术缺陷或漏洞的主动分析,这个分析是从一个攻击者可能存在的位置来进行的,并且从这个位置有条件主动利用安全漏洞。

首先,由于上述检测方法通常都是各自独立存在的,比如静态分析有很多相关的工具,多数编程语言都有一种对应的测试工具。这就造成了想要对软件进行安全缺陷检测的学习成本很大,对一个多语言混杂的大型项目来说,需要精通各种测试工具才能实现比较完整的安全缺陷检测,这也造成了在实际软件开发的过程中,很少对安全缺陷进行测试。

其次,现有的缺陷检测工具生成的缺陷报告难懂且格式不统一,即使对一个软件项目进行了较为完整的安全缺陷检测,想要快速、简单地读其各类报告也将非常困难,并且由于缺陷报告分散也不便于对软件安全缺陷有一个整体的了解。

再次,现在的缺陷检测通常只提供检测与查看功能,缺陷报告仍需手写,费时费力。

现有的比较完善的安全缺陷发现系统非常少,目前虽然《软件安全漏洞检测装置和方法》(中国发明专利申请,公布号:CN 102541729A,公布日2012.7.4)提供了模糊测试和渗透测试的缺陷检测功能,并且配套有相应的缺陷管理功能来查看缺陷,但对于实际应用时检测软件安全而言,一两种检测方法得到的检测结果比较片面,不足以反应出软件整体安全状况,检测结果仍不完善。

发明内容

有鉴于此,本发明提供了一种软件安全缺陷发现系统,能够对待测软件进行静态分析、行为监测、模糊测试和渗透测试,测试方式完善,能够较完善、准确地发现软件的安全缺陷,且提高了检测速度。

本发明的软件安全缺陷发现系统,包括静态测试模块、行为监控模块、模糊测试模块、渗透测试模块、行为监控知识库和缺陷数据库;其中,静态测试模块、行为监控模块、模糊测试模块、渗透测试模块分别与缺陷数据库连接,行为监控模块、模糊测试模块、渗透测试模块分别与静态测试模块连接,行为监控知识库与行为监测模块连接;

其中,静态分析模块内包括若干个静态分析插件,每一个静态分析插件分别对应着一个特定编程语言;静态分析模块在系统对被测软件的源代码目录进行递归扫描并获取源代码目录下所有文件后,根据文件名后缀将文件分类并过滤掉静态分析模块中静态分析插件不能检测的文件,然后针对各类型的源代码文件,选择对应的静态分析插件进行安全检测,得到安全缺陷数据;将安全缺陷数据按照设定的缺陷数据库格式进行格式化处理后存入缺陷数据库;

行为监控模块针对由静态分析模块获得的安全缺陷,对输入的待测软件进行行为监控,同时,也对待测软件进行其他的常规的行为监控,得到系统调用序列,并与行为监控知识库中的参考系统调用序列相匹配;将系统行为异常的系统调用序列存入缺陷数据库中;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510456810.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top