[发明专利]程序的监控方法及其防御方法以及相关装置有效
申请号: | 201510080320.7 | 申请日: | 2015-02-13 |
公开(公告)号: | CN104598809B | 公开(公告)日: | 2017-04-19 |
发明(设计)人: | 李常坤;路轶 | 申请(专利权)人: | 北京奇虎科技有限公司;奇智软件(北京)有限公司 |
主分类号: | G06F21/52 | 分类号: | G06F21/52 |
代理公司: | 北京市立方律师事务所11330 | 代理人: | 王增鑫 |
地址: | 100088 北京市西城区新*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种程序的监控方法及装置,通过向定位的目标函数写入跳转指令进行挂钩;分发给已注册的Java回调函数,并防止创建的临时变量被系统垃圾回收机制回收;不做处理的目标函数跳回挂钩处,否则继续处理目标函数。所述发明可以实现ART模式下的对Android系统的任意Java函数进行监控,并且不破坏目标函数的堆栈,使ART的垃圾回收机制可以正常进行内存回收。本发明还提供一种程序的防御方法及装置,采用上述程序的监控方法实现ART模式下的Android系统的防御机制。 | ||
搜索关键词: | 程序 监控 方法 及其 防御 以及 相关 装置 | ||
【主权项】:
一种程序的监控方法,其特征在于,包括以下步骤:定位目标函数所执行的机器码;写入跳转指令对目标函数进行挂钩;分发hook函数给已注册的Java回调函数,并防止创建的临时变量被系统垃圾回收机制回收,所述防止创建的临时变量被系统垃圾回收机制回收具体指Java函数调Java函数和Java函数调Native函数两种情况,所述防止创建的临时变量被系统垃圾回收机制回收还包括对系统垃圾回收机制的内存整理操作进行规避,步骤如下:将hook函数创建的Java对象转成JNI对象之后将JNI对象传递给ART的接口函数进行解码,解码后获取JNI对象引用的hook函数创建的原Java对象;是否继续处理hook后的目标函数;若不处理,则跳回目标函数的挂钩处;若处理则不跳回,对目标函数执行相应处理。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇虎科技有限公司;奇智软件(北京)有限公司,未经北京奇虎科技有限公司;奇智软件(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201510080320.7/,转载请声明来源钻瓜专利网。