[发明专利]参数检测方法及装置有效
申请号: | 201410505220.X | 申请日: | 2014-09-26 |
公开(公告)号: | CN105512552B | 公开(公告)日: | 2019-06-07 |
发明(设计)人: | 邱金涛;丁海峰 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F21/55 | 分类号: | G06F21/55 |
代理公司: | 北京德琦知识产权代理有限公司 11018 | 代理人: | 谢安昆;宋志强 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 参数 检测 方法 装置 | ||
1.一种参数检测方法,其特征在于,所述参数检测方法包括步骤:
获取当前进程中的所有类和各个类所包含的函数,并根据各个类获取各个类所属的动态库;
确定各个类所包含的函数所属的动态库;
比对所获取的各个类所属的动态库与所确定的各个类所包含的函数所属的动态库,在所获取的一个类所属的动态库与所确定的各个类所包含的函数所属的动态库不同时,判定所获取的该类所属的动态库对应的函数被第三方动态库注入和/或修改;
其中,所述确定各个类所包含的函数所属的动态库的步骤包括:
获取当前进程中加载的所有动态库及其对应的函数地址范围;
确定所获取的所有函数的函数地址;
将所确定的所有函数的函数地址与所获取的所有动态库对应的函数地址范围进行比对,确定所获取的所有函数所属的动态库;
所述获取当前进程中加载的所有动态库对应的函数地址范围的步骤包括:根据当前进程中加载的所有动态库对应的句柄信息得到所述所有动态库对应的函数地址范围。
2.如权利要求1所述的参数检测方法,其特征在于,所述获取当前进程中加载的所有动态库及其对应的函数地址范围的步骤包括:
获取当前进程中加载的所有动态库及所获取的动态库对应的句柄信息;
根据所述句柄信息,得到当前进程中加载的所有动态库的内存起始地址和内存占用信息;
根据所述内存起始地址和内存占用信息得到当前进程中加载的所有动态库对应函数地址范围。
3.如权利要求1所述的参数检测方法,其特征在于,所述根据各个类获取各个类所属的动态库的步骤包括:
获取各个类对应的NSBundle对象的可执行路径信息;
根据所获取的NSBundle对象的可执行路径信息,得到各个类所属的动态库。
4.如权利要求1所述的参数检测方法,其特征在于,所述获取当前进程中的所有类及其各个类所包含的函数的步骤包括:
初始化系统,根据objc_getClassList获取到当前进程中的所有类;
根据class_copyMethodList,获取到各个类所包含的函数。
5.如权利要求1至4任一项所述的参数检测方法,其特征在于,所述比对所获取的各个类所属的动态库与所确定的各个类所包含的函数所属的动态库,在所获取的一个类所属的动态库与所确定的各个类所包含的函数所属的动态库不同时,判定所获取的所述类所属的动态库对应的函数被第三方动态库注入和/或修改的步骤之后,还包括:
确定所获取的所述类所属的动态库中对应的函数;
发出提示信息。
6.一种参数检测装置,其特征在于,所述参数检测装置包括:
处理器,适于实现各指令;以及
存储设备,适于存储多条指令,所述指令适于由处理器加载并执行:
获取当前进程中的所有类和各个类所包含的函数,并根据各个类获取各个类所属的动态库;
确定各个类所包含的函数所属的动态库;
比对所获取的各个类所属的动态库与所确定的各个类所包含的函数所属的动态库,在所获取的一个类所属的动态库与所确定的各个类所包含的函数所属的动态库不同时,判定所获取的该类所属的动态库对应的函数被第三方动态库注入和/或修改;
其中,所述确定各个类所包含的函数所属的动态库包括:
获取当前进程中加载的所有动态库及其对应的函数地址范围;
确定所获取的所有函数的函数地址;
将所确定的所有函数的函数地址与所获取的所有动态库对应的函数地址范围进行比对,确定所获取的所有函数所属的动态库;
所述获取当前进程中加载的所有动态库对应的函数地址范围的步骤包括:根据当前进程中加载的所有动态库对应的句柄信息得到所述所有动态库对应的函数地址范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410505220.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于机器学习的集成隐私保护方法
- 下一篇:表情上传方法和装置