[发明专利]漏洞检测方法和装置有效
申请号: | 201510794315.2 | 申请日: | 2015-11-17 |
公开(公告)号: | CN106709335B | 公开(公告)日: | 2020-12-04 |
发明(设计)人: | 陈晋福 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京展翅星辰知识产权代理有限公司 11693 | 代理人: | 王文生 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 漏洞 检测 方法 装置 | ||
本申请提供了一种漏洞检测方法和装置,所述漏洞检测方法包括:将待检测文件放入与该待检测文件的实际执行环境隔离的独立空间中执行;收集所述待检测文件在所述独立空间中执行的函数序列;从所述函数序列中判断是否存在与特定漏洞所关联的全部函数属性相匹配的函数集合,所述函数属性指示特定漏洞在具有或排除特定函数、以及按特定顺序具有特定函数方面的属性;如果存在与特定漏洞所关联的全部函数属性相匹配的函数集合,则检测出所述待检测文件中存在漏洞。本申请实施例可以有效地检测出软件中的漏洞,尤其是可以有效地检测出逻辑漏洞。
技术领域
本申请涉及信息安全,尤其涉及一种漏洞检测方法和装置。
背景技术
漏洞通常是指一个软件设计时存在的缺陷或编码时产生的错误,从而基于该缺陷或错误可能使该软件遭受到攻击。
现有的漏洞检测方法通常采用静态检测(包括现有的正向漏洞检测和逆向漏洞检测)。即通过采集大量漏洞的样本,判断软件中的待检测文件中是否存在与大量样本之一相同的特征函数和特征函数所带的参数,如果存在,则判断所述待检测文件中存在漏洞。例如,对于样本之一f($a)所包含的特征函数为f()以及该特征函数所带的参数为$a,如果待检测文件中存在f($a),则判断所述待检测文件中存在漏洞。但是,现有的这种判断方式存在局限性,只能有效地判断特征函数和特征函数所带的参数明显与样本相同的漏洞,不适合检测复杂性相对较高的逻辑漏洞(即存在逻辑缺陷的漏洞)。
其中,常见的逻辑漏洞为在线支付逻辑漏洞,例如某支付应用程序的关键步骤数据包中直接传递需要支付的金额,传递过程没有签名算法的认证,从而导致攻击者可以随意篡改所述金额,由于该类漏洞涉及的是应用程序的整体分析,无法通过现有技术中简单的特征函数及特征函数所带的参数的匹配进行准确地判断,有必要提供一种适合判断该类漏洞的检测方法和装置。
发明内容
本申请的目的之一是提升对软件中的待检测文件的漏洞尤其是逻辑漏洞进行检测的准确性。
根据本申请的一个方面,提供了一种漏洞检测方法,其中所述漏洞检测方法包括:
将待检测文件放入与该待检测文件的实际执行环境隔离的独立空间中执行;
收集所述待检测文件在所述独立空间中执行的函数序列;
从所述函数序列中判断是否存在与特定漏洞所关联的全部函数属性相匹配的函数集合,所述函数属性指示特定漏洞在具有或排除特定函数、以及按特定顺序具有特定函数方面的属性;
如果存在与特定漏洞所关联的全部函数属性相匹配的函数集合,则检测出所述待检测文件中存在漏洞。
根据本申请的另一个方面,还提供了一种漏洞检测装置,包括:
文件放入单元,被配置为将待检测文件放入与该待检测文件的实际执行环境隔离的独立空间中执行;
收集单元,被配置为收集所述待检测文件在所述独立空间中执行的函数序列;
函数判断单元,被配置为全部函数属性从所述函数序列中判断是否存在与特定漏洞所关联的全部函数属性相匹配的函数集合,所述函数属性指示特定漏洞在具有或排除特定函数、以及按特定顺序具有特定函数方面的属性;
漏洞检测单元,被配置为如果存在与特定漏洞所关联的全部函数属性相匹配的函数集合,则检测出所述待检测文件中存在漏洞。
与现有技术相比,本申请实施例具有以下优点:本申请实施例通过判断待检测文件执行过程中的函数序列是否存在于特定漏洞所包含的函数属性相匹配的函数集合,从而有效地检测出待检测文件是否存在漏洞或/和存在何种漏洞,相对于现有的静态检测技术,本申请可以从文件的整体执行过程上判断待检测文件是否存在漏洞,从而提升对逻辑漏洞检测的准确性。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510794315.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种人脸位置跟踪方法、装置和电子设备
- 下一篇:保护与修复线粒体的方法