应用程序的反调试方法、装置、电子设备及存储介质制造方法及图纸

技术编号:28837051 阅读:20 留言:0更新日期:2021-06-11 23:34
本发明专利技术实施例提供了一种应用程序的反调试方法、装置、电子设备及存储介质,所述方法包括:在启动应用程序的情况下,调用预设的反调试代码创建守护进程;确定预先设置的反调试模式,其中,所述反调试模式包括守护进程调试模式或主进程调试模式;在所述反调试模式为所述守护进程调试模式的情况下,设置所述守护进程被所述应用程序主进程调试,以及设置所述守护进程以非阻塞、非挂起方式调试所述主进程。如此在设置应用程序主进程与守护进程相互调试的过程中,在反调试模式为守护进程调试模式的情况下,设置守护进程以非阻塞、非挂起方式调试应用程序主进程,可以提高兼容性,避免在不同终端上产生死锁,从而保证应用程序正常运行。

【技术实现步骤摘要】
应用程序的反调试方法、装置、电子设备及存储介质
本专利技术涉及信息安全
,尤其涉及一种应用程序的反调试方法、装置、电子设备及存储介质。
技术介绍
安卓是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统,因此安卓APP(Application,应用程序)与Linux应用程序一样具备“被调试”的风险。攻击者可以使用安卓中root权限,执行系统ptrace接口编写的注入程序,对任意安卓APP进行调试,进而动态分析程序逻辑,实现进程注入、修改寄存器等非法操作。为此,针对安卓APP的反调试方案逐渐涌现出来,目前反调试方案通常包括:安卓APP主进程自身启动守护进程,主进程与守护进程相互调试。由于安卓机制的缘故(一个进程只能被另一个进程调试),使得其它进程就无法再次调试主进程,从而达到安卓APP反调试的目的。由于主进程与守护进程相互调试,兼容性差,将在不同终端上产生死锁,导致安卓APP频繁卡死。
技术实现思路
本专利技术实施例的目的在于提供一种应用程序的反调试方法、装置、电子设备及存储介质,以实现提高兼本文档来自技高网...

【技术保护点】
1.一种应用程序的反调试方法,其特征在于,所述方法包括:/n在启动应用程序的情况下,调用预设的反调试代码创建守护进程;/n确定预先设置的反调试模式,其中,所述反调试模式包括守护进程调试模式或主进程调试模式;/n在所述反调试模式为所述守护进程调试模式的情况下,设置所述守护进程被所述应用程序主进程调试,以及设置所述守护进程以非阻塞、非挂起方式调试所述主进程。/n

【技术特征摘要】
1.一种应用程序的反调试方法,其特征在于,所述方法包括:
在启动应用程序的情况下,调用预设的反调试代码创建守护进程;
确定预先设置的反调试模式,其中,所述反调试模式包括守护进程调试模式或主进程调试模式;
在所述反调试模式为所述守护进程调试模式的情况下,设置所述守护进程被所述应用程序主进程调试,以及设置所述守护进程以非阻塞、非挂起方式调试所述主进程。


2.根据权利要求1所述的方法,其特征在于,所述设置所述守护进程被所述应用程序主进程调试,以及设置所述守护进程以非阻塞、非挂起方式调试所述主进程,包括:
调用操作系统中第一系统函数,设置所述守护进程被所述应用程序主进程调试;以及,
调用操作系统中隐藏的第二系统函数,设置所述守护进程以非阻塞、非挂起方式调试所述主进程。


3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述反调试模式为所述主进程调试模式的情况下,设置所述应用程序主进程以非阻塞、非挂起方式调试所述守护进程,以及设置所述应用程序主进程被所述守护进程调试。


4.根据权利要求3所述的方法,其特征在于,所述设置所述应用程序主进程以非阻塞、非挂起方式调试所述守护进程,以及设置所述应用程序主进程被所述守护进程调试,包括:
调用操作系统中隐藏的第二系统函数,设置所述应用程序主进程以非阻塞、非挂起方式调试所述守护进程;以及,
调用操作系统中第一系统函数,设置所述应用程序主进程被所述守护进程调试。


5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

【专利技术属性】
技术研发人员:谢源
申请(专利权)人:北京奇艺世纪科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1