freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

objection绕过双进程保护
2023-03-11 22:06:44
所属地 上海

双进程保护的介绍

双进程保护的实现源码:https://github.com/F8LEFT/AndroidAntiDebugger

双进程保护的作用

采用双进程的方式,对父进程进行保护,基于信号的发送和接收,实现相互的保护防止被动态攻击。
简单的双进程保护就是从原进程再fork一个空进程出来,让逆向分析的时候附加到空进程中导致hook不上
双进程进程保护主要功能:

1、保护父进程,ptrace所有线程,防止被附加、调试、暂停;

2、保护子进程,防止被暂停、异常退出;

frida的两种启动方式:

  • spawn模式:frida 重新打开一个进程

    • frida -U -f 包名 -l js路径 --no-pause

  • attach模式: 附加在当前打开的进程

    • frida -U -l js路径 --no-pause

双进程的表现

如果app存在双进程保护,那么我们启动objection就可能出现卡死、闪退等问题。

比如,
图片.png
最直观:
图片.png

解决办法

一般双进程保护,先把app关掉直接用spawn模式就能附加上。

或者我们也可以尝试修改objection源码来绕过双进程保护。

windows中

找到objection的源码文件,我本地的文件默认路径是C:\Users\Administrator\AppData\Local\Programs\Python\Python39\Lib\site-packages\objection\utils\agent.py

然后修改 inject 函数

if not self.resumed:
    debug_print('Resuming PID `{pid}`'.format(pid=self.spawned_pid))
    # 多进程的 app 正在 resume 的时候,必须先 sleep 等待一下,否则会让 app 卡死
    # resume 成功以后,要让 self.resumed = True,否则后面 import 命令的时候会报错
    self.device.resume(self.spawned_pid)
    time.sleep(1)
    self.resumed = True

图片.png
之后在使用 objection -g appName explore就不会出问题了。

kali中

kali中我采用pyenv管理python版本,首先需要切换到要修改的python版本,然后在修改objection的源码

查看当前python的site-packages的路径可以使用如下命令查看

python -c "import site;print(site.getsitepackages())"

图片.png
拼接路径如下:

/root/.pyenv/versions/3.9.0/lib/python3.9/site-packages/objection/utils/agent.py

修改的内容和Windows中一致, import time 然后修改下面代码

if not self.resumed:
    debug_print('Resuming PID `{pid}`'.format(pid=self.spawned_pid))
    # 多进程的 app 正在 resume 的时候,必须先 sleep 等待一下,否则会让 app 卡死
    # resume 成功以后,要让 self.resumed = True,否则后面 import 命令的时候会报错
    self.device.resume(self.spawned_pid)
    time.sleep(1)
    self.resumed = True

图片.png

参考链接

https://blog.csdn.net/weixin_43843628/article/details/121406847

https://blog.csdn.net/weixin_42453905/article/details/109395414

# Android # Frida # android逆向 # Objection # Frida Hook
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录