Android逆向(一):模拟器环境配置

目录传送门



前言

主要记录安卓逆向前的环境配置与问题

流程:

  1. 准备模拟器 + 抓包工具
  2. 将抓包工具的证书下载pem改名为哈希值放入模拟器系统(详情看一)
  3. wifi设置手动代理(个别app会拦截) / Postern设置代理(推荐)
  4. 安装xposed(装一些插件辅助逆向)
  5. 安装反编译软件(用于逆向分析)
  6. 安装Frida(用于调试hook)

一、证书安装

Fiddler证书安装教程
Charles链接教程
Charles证书安装流程与Fiddler一致,证书在Help->SSL Proxying->Save

1.1 环境

python: 3.8.1
frida: 12.8.0
frida-tools: 5.3.0
模拟器: 夜幽模拟器安卓7(32bit)(Xposed) / 夜幽模拟器安卓9(64bit)(LsPosed)
Fiddler / Charles: 最新版

1.2 代理

1.2.1 WIFI设置代理

设置【无线局域网适配器WLAN】的IPv4地址,端口与Fiddler一致

1.2.2 Postern

1、添加【配置代理】:设置地址端口和代理类型,推荐socks5
在这里插入图片描述
在这里插入图片描述
2、添加【配置规则】:匹配类型:匹配所有地址;动作:通过代理连接
在这里插入图片描述
3、打开VPN出现钥匙图标
在这里插入图片描述

1.2.3 SocksDroid

暂未使用过,自行百度

二、调试方法

2.1 动态调试

动态调试教程

2.1.1 打开USB调试模式

  • 在设置菜单中寻找“关于手机”(或类似的选项)并点击进入。
  • 在“关于手机”界面中,找到“版本号”或“软件信息”选项,并连续点击7次,直到出现“开发者选项已启用”的提示信息。
  • 返回到设置菜单,您将会发现一个新的选项,“开发者选项”。
  • 进入“开发者选项”界面,在其中找到“USB调试”选项并打开它。

2.1.2 jadx启动adb服务

  • adb路径:E:\platform-tools\adb.exe
  • adb ip: 127.0.0.1
  • adb 端口:62001(夜神模拟器默认端口,其他端口查看2.2.2)

2.2 hook注入调试(Frida)

2.2.1 安装frida

frida12.3.6 --> python3.7 --> Android5-6
frida12.8.0 -->Python3.8–>Android7-8
frida14–>Python3.8–>Android9

Frida使用文档
hook注入教程和Frida-server安装

pip install frida==15.1.27
pip install frida-tools==10.6.2

2.2.2 代码

通过命令行执行hook文件

adb devices # 查看所有设备
# 启动命令,若为第一台且只有一台机器可不用-s
adb -s 127.0.0.1:620xx shell
cd /data/local/tmp
./frida_server
# new cmd
adb forward tcp:27042 tcp:27042
adb forward tcp:27043 tcp:27043
frida -UF -l hook_udid.js  # 连接
frida -U --no-pause -f 程序名 -l js文件  # 指定app并启动 # --no-pause不停止
// JS代码
Java.perform(function (){
	// 从jadx copy 为 frida 片段
});

2.2.3 存在的问题

1、adb连接异常教程
2、模拟器端口号非第一台模拟器
3、进入shell时存在多台服务

adb devices # 查看所有设备
adb -s 127.0.0.1:620xx # 指定设备

4、【执行js】Failed to load script: script(line 10): SyntaxError: parse error

frida版本太低,把let改为var

5、【执行js】SyntaxError: invalid token
frida版本太低导致语法错误,log使用双引号

三、框架

3.1 Xposed(安卓7 32bit及以下)

安卓7 32bit及以下应用商城内下载即可

3.2 LSPosed(安卓7 64bit及以上)

1、面具安装教程
2、LSPosed安装教程

四、脱壳插件

脱壳插件推荐
常见脱壳与反编译工具 - CSDN App
Xposed+FDex2 app脱壳 - CSDN App

Frida-FunDex

# 启动frida-serer后执行
frida-dexdump -U -f 包名 -o 目标路径

五、反编译

JADX 自行百度下载 内存不够可修改jadx-gui.bat文件 #随便百度一下就有教程了

推荐插件及软件(后续更新安装和使用流程)

1、插件(安装在框架中)

解析算法:算法助手
脱壳插件:FunDEX

2、软件

MT管理器:文件管理
微霸:用于伪装修改模拟器机器机型
Postern:配合charles使用可绕过个别app针对抓包的反爬

推荐入门APP

  1. 车智赢
  2. 蜜雪冰城
  3. 婚礼纪
  4. 大姨妈
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值