[发明专利]反调试方法、装置、存储介质及电子装置有效
申请号: | 202010490794.X | 申请日: | 2020-06-02 |
公开(公告)号: | CN111639312B | 公开(公告)日: | 2023-04-14 |
发明(设计)人: | 宋青原;殷赵辉;曹飞;卢正军;盛子骁;朱泽瑾;李文豪 | 申请(专利权)人: | 腾讯科技(成都)有限公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 周婷婷 |
地址: | 610041 四川省成都市高*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 调试 方法 装置 存储 介质 电子 | ||
1.一种反调试方法,其特征在于,包括:
在操作系统的第一内核函数中,配置目标进程从内核态返回用户态时所调用的回调函数的函数地址;
在所述内核态返回至所述用户态的情况下,通过所述函数地址进入所述回调函数;
在执行所述回调函数的过程中,在通过所述目标进程调用第二内核函数,且检测到所述目标进程附加有调试器的情况下,结束所述目标进程。
2.根据权利要求1所述的方法,其特征在于,所述在操作系统的第一内核函数中,配置目标进程从内核态返回用户态时所调用的回调函数的函数地址,包括:
将所述操作系统的所述第一内核函数的目标参数的值设置为目标数值,以使所述目标参数对应的信息类型设置为地址配置类型;
在所述目标参数的值设置为所述目标数值的情况下,将所述目标进程从所述内核态返回所述用户态时所调用的函数地址配置为所述回调函数的函数地址。
3.根据权利要求1所述的方法,其特征在于,在执行所述回调函数的过程中,还包括:
获取所述目标进程调用的目标函数;
在所述目标函数不为所述第二内核函数的情况下,从所述回调函数跳转至所述目标进程调用的所述目标函数。
4.根据权利要求3所述的方法,其特征在于,在所述获取所述目标进程调用的目标函数之后,还包括:
在所述目标函数为所述第二内核函数的情况下,获取进程环境块中的目标标志位;
在所述目标标志位的数值为第一数值的情况下,确定所述目标进程附加有调试器,并结束所述目标进程。
5.根据权利要求4所述的方法,其特征在于,在所述获取进程环境块中的目标标志位之后,还包括:
在所述目标标志位为第二数值的情况下,从所述回调函数跳转至所述目标进程调用的所述目标函数。
6.根据权利要求1至5任一项所述的方法,其特征在于,在通过所述函数地址进入所述回调函数之后,还包括:
利用所述回调函数的栈空间保存寄存器,并控制所述栈空间的栈顶指针对齐至目标字节。
7.一种反调试装置,其特征在于,包括:
配置单元,用于在操作系统的第一内核函数中,配置目标进程从内核态返回用户态时所调用的回调函数的函数地址;
进入单元,用于在所述内核态返回至所述用户态的情况下,通过所述函数地址进入所述回调函数;
结束单元,用于在执行所述回调函数的过程中,在通过所述目标进程调用第二内核函数,且检测到所述目标进程附加有调试器的情况下,结束所述目标进程。
8.根据权利要求7所述的装置,其特征在于,所述配置单元包括:
设置子单元,用于将所述操作系统的所述第一内核函数的目标参数的值设置为目标数值,以使所述目标参数对应的信息类型设置为地址配置类型;
配置子单元,用于在所述目标参数的值设置为所述目标数值的情况下,将所述目标进程从所述内核态返回所述用户态时所调用的函数地址配置为所述回调函数的函数地址。
9.根据权利要求7所述的装置,其特征在于,所述反调试装置还包括:
第一获取单元,用于在执行所述回调函数的过程中,获取所述目标进程调用的目标函数;
第一跳转单元,用于在所述目标函数不为所述第二内核函数的情况下,从所述回调函数跳转至所述目标进程调用的所述目标函数。
10.根据权利要求9所述的装置,其特征在于,所述反调试装置还包括:
第二获取单元,用于在所述目标函数为所述第二内核函数的情况下,获取进程环境块中的目标标志位;
确定单元,用于在所述目标标志位的数值为第一数值的情况下,确定所述目标进程附加有调试器,并结束所述目标进程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(成都)有限公司,未经腾讯科技(成都)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010490794.X/1.html,转载请声明来源钻瓜专利网。