[发明专利]检测安全漏洞的方法和装置在审
申请号: | 201910804292.7 | 申请日: | 2019-08-28 |
公开(公告)号: | CN111783096A | 公开(公告)日: | 2020-10-16 |
发明(设计)人: | 李子奇 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57;G06F21/56 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 王安娜;陈继越 |
地址: | 100086 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 检测 安全漏洞 方法 装置 | ||
本发明公开了一种检测安全漏洞的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:利用被检测程序中的漏洞检测函数获取被检测程序接收的运行请求及其对应的运行结果;根据漏洞检测函数的插入位置和运行结果确定可疑漏洞;当运行请求是可疑请求时,基于运行请求和可疑漏洞的类型构造与运行请求对应的测试请求,并向被检测程序发送测试请求;当运行请求是测试请求时,基于运行请求识别可疑漏洞的安全性。该实施方式提高检测安全漏洞的速度和准确度,减少漏报或误报的情况,同时降低部署成本和使用成本。
技术领域
本发明涉及计算机技术领域,尤其涉及一种检测安全漏洞的方法和装置。
背景技术
安全漏洞(security flaw)是在硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。是受限制的计算机、组件、应用程序或其他联机资源的无意中留下的不受保护的入口点。
现有的安全漏洞检测方法主要分为动态测试和静态测试两类,其中:
动态测试是通过访问正在真实运行的应用程序进行测试,将应用程序看成一个黑盒子,通过爬虫、流量监听或者人工收集的方式获取请求,然后在正常请求上增加或替换为攻击代码片段,再根据响应来判断安全漏洞是否存在;
静态测试通过工具对应用程序的源代码进行静态代码扫描,通过特征指纹或者调用关系等技术识别应用程序的安全漏洞。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:
1.检测结果的准确性较低、误报率较高,且容易出现漏报的情况;
2.动态测试依赖于待测试接口采集完整度以及攻击代码片段的通用性,还需要结合响应特征才能判断是否存在安全漏洞,实现难度高;
3.静态测试依赖于源代码,且检测结果还需要专业能力较强的人员做进一步复核,人工成本过高且速度较慢。
发明内容
有鉴于此,本发明实施例提供一种检测安全漏洞的方法和装置,能够解决现有技术中存在的问题,提高检测安全漏洞的速度和准确度,减少漏报或误报的情况,同时降低实现难度和使用成本。
为实现上述目的,根据本发明实施例的一个方面,提供了一种检测安全漏洞的方法。
本发明实施例的一种检测安全漏洞的方法包括:
利用被检测程序中的漏洞检测函数获取所述被检测程序接收的运行请求及其对应的运行结果;
根据所述漏洞检测函数的插入位置和所述运行结果确定可疑漏洞;
当所述运行请求是可疑请求时,基于所述运行请求和所述可疑漏洞的类型构造与所述运行请求对应的测试请求,并向所述被检测程序发送所述测试请求;
当所述运行请求是所述测试请求时,基于所述运行请求识别所述可疑漏洞的安全性。
可选地,所述漏洞检测函数包括第一检测函数和第二检测函数;以及
利用被检测程序中的漏洞检测函数获取所述被检测程序接收的运行请求及其对应的运行结果,包括:
运行被检测程序前,在所述被检测程序的字节码中关键方法函数的前后分别插入所述第一检测函数和所述第二检测函数;
利用所述第一检测函数获取所述被检测程序接收的运行请求;
利用所述第二检测函数获取所述关键方法函数的运行结果。
可选地,根据所述漏洞检测函数的插入位置和所述运行结果确定可疑漏洞,包括:
根据所述第一检测函数的插入位置确定目标关键方法函数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910804292.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于处理图像的方法和装置
- 下一篇:用于确定品牌意图词的方法和装置