[发明专利]漏洞检测方法及装置在审
申请号: | 201910900010.3 | 申请日: | 2019-09-23 |
公开(公告)号: | CN111177727A | 公开(公告)日: | 2020-05-19 |
发明(设计)人: | 李振环;陈楠;刘深荣 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 深圳市隆天联鼎知识产权代理有限公司 44232 | 代理人: | 刘抗美 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 漏洞 检测 方法 装置 | ||
1.一种漏洞检测方法,其特征在于,包括:
获取漏洞运行所需的内存关联信息;
若检测到目标应用对当前页面的访问操作,则根据所述内存关联信息对所述当前页面的预设信息进行检测,以获取检测结果;
若确定所述检测结果为不合法,则确定所述当前页面存在所述漏洞。
2.根据权利要求1所述的漏洞检测方法,其特征在于,所述预设信息包括调用者;
所述根据所述内存关联信息对所述当前页面的预设信息进行检测,以获取检测结果,包括:
根据所述内存关联信息对所述调用者进行检测,以得到用于表示所述调用者是否合法的第一检测结果;
若所述第一检测结果为所述调用者不合法,则确定所述检测结果为不合法。
3.根据权利要求2所述的漏洞检测方法,其特征在于,所述根据所述内存关联信息对所述调用者进行检测,以得到用于表示所述调用者是否合法的第一检测结果,包括:
通过栈帧获取返回地址;
获取所述返回地址的上一条指令,并判断所述上一条指令是否为调用指令,以确定所述第一检测结果。
4.根据权利要求2所述的漏洞检测方法,其特征在于,所述预设信息包括调用栈;
所述根据所述内存关联信息对所述当前页面的预设信息进行检测,以获取检测结果,包括:
若所述第一检测结果为所述调用者合法,则根据所述内存关联信息对所述调用栈进行检测,以得到用于表示所述调用栈是否合法的第二检测结果;
若所述第二检测结果为所述调用栈不合法,则确定所述检测结果为不合法。
5.根据权利要求4所述的漏洞检测方法,其特征在于,所述根据所述内存关联信息对所述调用栈进行检测,以得到用于表示所述调用栈是否合法的第二检测结果,包括:
通过当前栈帧获取历史栈帧;
若检测到每个历史栈帧均处于当前线程的限制范围内,则确定所述第二检测结果为所述调用栈合法;
若检测到所有历史栈帧中存在未处于当前线程的限制范围内的历史栈帧,则确定所述第二检测结果为所述调用栈不合法。
6.根据权利要求4所述的漏洞检测方法,其特征在于,所述根据所述内存关联信息对所述调用栈进行检测,以得到用于表示所述调用栈是否合法的第二检测结果,包括:
通过当前栈帧获取历史返回地址;
对每个历史返回地址进行检测,并在确定存在所在内存页的属性为不可执行的历史返回地址时,确定所述第二检测结果为所述调用栈不合法。
7.根据权利要求1所述的漏洞检测方法,其特征在于,在确定所述当前页面存在所述漏洞后,所述方法还包括:
将所述当前页面的信息以及所述目标应用的信息发送至服务器,并将所述当前页面的信息存储至用于表示禁止执行的列表,以禁止执行所述当前页面。
8.根据权利要求1所述的漏洞检测方法,其特征在于,所述方法还包括:
若确定所述检测结果为合法,则继续执行所述当前页面。
9.根据权利要求1所述的漏洞检测方法,其特征在于,所述方法还包括:
若确定所述检测结果为不合法,则提供一个用于提醒所述检测结果的提示信息,以进行预警。
10.一种漏洞检测装置,其特征在于,包括:
信息获取模块,用于获取漏洞运行所需的内存关联信息;
检测结果确定模块,用于若检测到目标应用对当前页面的访问操作,则根据所述内存关联信息对所述当前页面的预设信息进行检测,以获取检测结果;
漏洞确定模块,用于若确定所述检测结果为不合法,则确定所述当前页面存在所述漏洞。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910900010.3/1.html,转载请声明来源钻瓜专利网。