[发明专利]一种安卓系统应用程序的保护方法和装置在审
申请号: | 201510822794.4 | 申请日: | 2015-11-24 |
公开(公告)号: | CN106778098A | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 耿慧拯;石松泉;刘芳;柏洪涛 | 申请(专利权)人: | 中国移动通信集团公司 |
主分类号: | G06F21/14 | 分类号: | G06F21/14;G06F11/30 |
代理公司: | 北京派特恩知识产权代理有限公司11270 | 代理人: | 李梅香,张颖玲 |
地址: | 100032 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 系统 应用程序 保护 方法 装置 | ||
1.一种安卓系统应用程序的保护方法,其特征在于,所述方法包括:
在安卓系统应用程序运行时,通过监测特定进程的进程状态文件,确定所述应用程序是否处于被调试状态;所述特定进程为所述应用程序主进程或预先创建的应用程序主进程的子进程;
所述应用程序处于被调试状态时,强制退出所述应用程序。
2.根据权利要求1所述的方法,其特征在于,所述监测特定进程状态文件包括:监测特定进程的进程状态文件的TracerPid字段的值。
3.根据权利要求1或2所述的方法,其特征在于,所述确定所述应用程序是否处于被调试状态,包括:所述应用程序主进程的进程状态文件的TracerPid字段的值非0,或应用程序主进程的子进程的进程状态文件的TracerPid字段的值非0时,确定所述应用程序处于被调试状态;否则,确定所述应用程序未处于被调试状态。
4.根据权利要求1或2所述的方法,其特征在于,在确定所述应用程序是否处于被调试状态之前,所述方法还包括:获取预设的反调试函数;所述反调试函数,用于在被执行时,实现第一功能和第二功能;所述第一功能为所述通过监测特定进程的进程状态文件,确定所述应用是否处于被调试状态的功能,所述第二功能为所述应用程序处于被调试状态时,强制退出所述应用程序的功能;
所述确定所述应用程序是否处于被调试状态,包括:利用所述应用程序主进程的子进程调用反调试函数,实现所述第一功能;所述应用程序处于被调试状态时,强制退出所述应用程序,包括:在反调试函数实现所述第一功能后,实现所述第二功能。
5.根据权利要求4所述的方法,其特征在于,所述获取预设的反调试函数,包括:将预设的反调试函数封装在C语言编写的SO文件中;通过执行SO文件加载函数来调用SO文件中的反调试函数。
6.根据权利要求4所述的方法,其特征在于,在获取预设的反调试函数之后,所述方法还包括:在所述反调试函数中创建所述应用程序主进程的子进程。
7.根据权利要求4所述的方法,其特征在于,所述利用所述应用程序主进程的子进程调用反调试函数,包括:所述应用程序主进程的子进程每隔n秒调用反调试函数,n为正数。
8.根据权利要求1或2所述的方法,其特征在于,所述强制退出所述应用程序,包括:结束所述应用程序的主进程,使所述应用程序退出。
9.一种安卓系统应用程序的保护装置,其特征在于,所述装置包括:确定模块和强制退出模块;其中,
确定模块,用于在安卓系统应用程序运行时,通过监测特定进程的进程状态文件,确定所述应用程序是否处于被调试状态;所述特定进程为所述应用程序主进程或预先创建的应用程序主进程的子进程;
强制退出模块,用于在所述应用程序处于被调试状态时,强制退出所述应用程序。
10.根据权利要求9所述的装置,其特征在于,所述确定模块,具体用于通过监测特定进程的进程状态文件的TracerPid字段的值,确定所述应用程序是否处于被调试状态。
11.根据权利要求9或10所述的装置,其特征在于,所述确定模块,具体用于在所述应用程序主进程的进程状态文件的TracerPid字段的值非0,或应用程序主进程的子进程的进程状态文件的TracerPid字段的值非0时,确定所述应用程序处于被调试状态;否则,确定所述应用程序未处于被调试状态。
12.根据权利要求9或10所述的装置,其特征在于,所述装置还包括获取模块,用于在确定所述应用程序是否处于被调试状态之前,获取预设的反调试函数;所述反调试函数,用于在被执行时,实现第一功能和第二功能;所述第一功能为所述通过监测特定进程的进程状态文件,确定所述应用是否处于被调试状态的功能,所述第二功能为所述应用程序处于被调试状态时,强制退出所述应用程序的功能;
所述确定模块,具体用于利用所述应用程序主进程的子进程调用反调试函数,实现所述第一功能;
所述强制退出模块,具体用于在反调试函数实现所述第一功能后,利用反调试函数实现所述第二功能。
13.根据权利要求12所述的装置,其特征在于,所述获取模块,具体用于将预设的反调试函数封装在C语言编写的SO文件中;通过执行SO文件加载函数来调用SO文件中的反调试函数。
14.根据权利要求9或10所述的装置,其特征在于,所述强制退出模块,具体用于在所述应用程序处于被调试状态时,结束所述应用程序的主进程,使所述应用程序退出。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团公司,未经中国移动通信集团公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510822794.4/1.html,转载请声明来源钻瓜专利网。