安卓APP抓包环境配置及使用

软件下载安装
所需软件
夜神模拟器
Fiddler
platform-tools
下载地址
安卓逆向
密码:hv99
配置Fiddler
由于fiddler只默认抓取HTTP的请求,若想抓取HTTPS的请求,则需要设置HTTPS的各项值
设置HTTPS各项值
1在fiddler菜单项选择Tools -> Options -> HTTPS
2勾选【Decrypt HTTPS traffic 】【Ignore server certificate errors】,下拉框默认:【from all processes】 即可
3第三步:点击右边的【Actions】,选择【Trust Root Certificate】点击,弹出窗点击【Yes】按钮即可。
4第四步:点击【OK】保存

image.png


设置fiddler connections的值,允许fiddler远程连接
1在fiddler菜单项选择Tools -> Options -> connections
2勾选【|Allow remote computers to connect】
3点击【ok】保存

image.png


(重点:记住设置完上述的值后,一定要重启Fiddler,不重启Fiddler 上述设置的值将不会生效)
(另:Fiddler 很多地方设置了值都需要重启,如果发现自己的设置的东西没有生效,先重启Fiddler再看是否已经生效)
夜神模拟器配置
创建模拟器
1打开模拟器助手--->多开管理--->添加模拟器--->选择Android 5(有的app只有Android 8以上才能安装,就创建对应的)
2点击设置图标--->性能--->分辨率设置--->手机版--->选一个尺寸--->保存设置

image.png

image.png


设置代理IP
1查询电脑IP地址:按住键盘Win+R键--->输入cmd--->确定--->输入 ipconfig--->查看IP

image.png


2设置模拟器代理:运行模拟器--->打开设置--->无线网络(WLAN)--->WLAN--->鼠标左键长按已连接的WiFi 去修改网络--->在高级选项里面--->选择【手动代理】--->服务器主机名为电脑IP--->服务器端口为:8888--->保存

image.png


手机安装证书
手机安装证书。(ios设置和Android设置基本一样)前提条件:手机和电脑要处于同一网络条件下(可以理解为:使用同一个WiFi)fiddler的默认端口是:8888,不需要进行修改,使用默认的就可以。一个手机可以安装多个证书,但是每安装的一个证书里面都设置有IP地址,所以:安装的证书和电脑IP是一一对应的,当前的这个证书只能针对某一台电脑使用,更换电脑后,该证书将不能使用,只能重新安装与更换的电脑的IP相同的证书才能使用。
手机下载证书
打开手机的浏览器,输入:【IP:8888】下载证书。(注:中间的冒号一定要使用英文的冒号,中文的冒号是错误的)例如:浏览器输入【http://192.168.xxx.xxx:8888】或者【192.168.xxx.xxx:8888】(这个地方的IP就是你电脑的IP)

image.png


安装证书
有的手机可以直接点击已下载的文件进行安装,有的手机则不行。如果不能直接安装证书,我们可以通过以下方法来安装证书。
1Android安装证书。
方法一:手机--->设置--->搜索【证书】二字--->选择:安装证书或者证书管理:点击安装证书,在你的众多文件里面去选择刚刚下载的fiddler的证书,点击安装

image.png


(注:选择安装的文件后,需要输入手机的锁屏密码。Android一定要有锁屏密码才能安装证书)
方法二:在浏览器里面,直接打开已经下载的文件,安装即可,安装步骤是:先输入手机锁屏密码--->后到上图为证书命名界面。证书安装好后,查看已信任证书:具体位置在【安全--->更多安全设置--->加密和凭据--->受信任的凭据】

image.png


2ios安装证书
直接点击已下载的文件安装即可,安装文件成功后,需要在【设置--->通用--->关于本机--->证书信任设置】开启证书信任。
夜神模拟器安卓7.0以上证书问题
platform-tools配置环境变量
1编辑环境变量:Win+R--->输入sysdm.cpl--->高级--->环境变量--->系统变量下的Path--->编辑--->新建--->将platform-tools路径填进去--->一直点确定退出

image.png


2检查环境是否配置成功:Win+R--->输入cmd--->输入adb--->输出如下成功

image.png


打开模拟器开发者选项
设置--->系统--->关于平板电脑--->连续点击版本号(提示打开开发者模式)--->返回--->高级--->开发者选项--->开启--->USB调试

image.png


将证书移动到系统
连接模拟器
cmd运行命令:adb connect 127.0.0.1:62001若还是提示无法连接到127.0.0.1:62001
运行命令tasklist找到NoxVMHandle.exe对应的PID

image.png


运行命令netstat -ano | findstr 12636(12636为NoxVMHandle.exe对应的PID)找到127.0.0.1:62xxx的地址,这里有:127.0.0.1:62025

image.png


运行命令adb connect 127.0.0.1:62025即可连接成功

image.png


证书处理
查看证书
首先我们看看,系统证书目录,系统证书的命名都是 哈希值.0 如果哈希值相同,想要保留证书,那就修改后面的 .0 即可
导出证书
Tool --> Options -->Actions-->Open Window ...-->受信任的根证书颁发机构-->证书-->DO_NOT_TRUST_FiddlerRoot-->右键 所有任务-->导出-->不要导出私钥-->Base64格式


Linux计算Hash值修改证书名

Linux 命令

Python复制代码

cd # 到证书目录中 注意 fiddlerRoot.cer 是我的证书名,根据实际情况修改

openssl x509 -subject_hash_old -in fiddlerRoot.cer # 拿到证书到md5值(8位)

image.png


此证书的md5值为 269953fb
移动证书
修改证书名为 269953fb.0 ,在使用adb命令推进手机的跟证书目录

移动证书

Python复制代码

# 开一个命令窗口一
adb shell    # 进入shell模式
su root        # root权限
mount -o romount,rw/system    # 将系统证书目录改为可读可写,不改不可以移动文件

# 重新开一个命令窗口二
cd            # 到证书目录中 269953fb.0 就是改后的证书
adb push 269953fb.0 /system/etc/security/cacerts/269953fb.0        # push到系统目录中

# 上面的如果不行,先push到临时目录中,再移到sys目录
adb push  data/local/tmp/269953fb.0        # 将证书push到临时目录

# 回到命令窗口一
mv data/local/tmp/269953fb.0 /system/etc/security/cacerts    # 从临时目录移动证书到系统目录
mount -o romount,ro/system        #将系统证书目录改为只读

若有收获,就点个赞吧

  • 21
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值