charles+https+安卓7.0+夜神模拟器,解决安卓7.0+版本https无法抓包问题

1、配置charles+http+夜神模拟器抓包

      第一步保证http请求是可以正常抓包

1.配置charles抓包参数

Windows系统证书装一下,后续浏览器可以抓请求,和下载证书

配置抓取请求

配置端口

 2.夜神模拟器配置

配置完毕重启夜神模拟器,Windows cmd命令:ping 192.168.2.189 能正常ping通就OK

鼠标长按点击WiFi 设置代理服务器IP,charles配置的端口号

 安装一个测试包,测试一下能正常抓取http请求,完成,其他问题请百度解决,这里本次主要解决https抓取问题

2、配置charles+https+安卓7.0+夜神模拟器

谷歌在安卓7.0修改了安全策略,安卓系统 大于 7.0 时, 应用不在信任用户安装的证书文件。用户添加的 CA 证书不能再用于安全连接,对于 https 传输的数据就抓取不到了,会显示<unknown>。

解决方法

  • 降级 系统版本
  • 将用户证书偷渡成系统证书,需要有 root 权限。将 charles 的 CA 证书安装进系统信任的证书目录下,这样在开启 charles 代理的时候,系统就会认为CA证书安全,从而可以获取 https 数据。
  • 市场上各个手机root比较麻烦,这里直接采用夜神模拟器抓包(只是为了获取接口数据,不考虑功能兼容性)

1、Windows安装 OPENSSL【http://slproweb.com/products/Win32OpenSSL.html】。linux 好像默认安装的有,如果使用 linux 系统,可以忽略这一步。

2、配置环境变量:例如工具安装在C:\OpenSSL-Win64,则将C:\OpenSSL-Win64\bin;复制到Path中

3、下载charles证书

    下载证书到电脑上

  • 电脑端浏览器输入 chls.pro/ssl 即可下载(如果无法打开,检查下是否配置Windows代理),
  • 如果未下载也可以在 charles >> help >> SSL Proxying >>Save Charles Root Certificate 保存证书到本地文件夹

4、打开命令窗口执行以下命令,查看证书信息:

   证书地址,可以从文件夹文件位置直接鼠标拖拽到cmd命令窗口

openssl x509 -subject_hash_old -in C:\Users\Administator\Downloads\charles-proxy-ssl-proxying-certificate.pem

 重命名证书:016a1c82.0 (每个人的证书hash值不一样,每次导入证书都要重新生成这个值

5、执行 adb 命令连接手机,获取权限,把文件夹挂载为读写模式,把文件复制到证书根目录

adb root
adb remount
adb shell mount -o rw,remount /system
adb push 016a1c82.0 /system/etc/security/cacerts

如果出现 <hash>.0:Read-only file system 这个警告,这是因为 system 文件为只读,需要将其挂载为可读写。一般的解决方法是:mount -o rw,remount /system 修改system读写权限,然后再进行复制操作。如果修改了之后还是提示Read-only file system,还有方法

adb root
adb disable-verity
adb reboot #手机会重启,不用关闭cmd窗口,手机可能需要拔掉数据写重新连接
adb root
adb shell 
mount -o rw,remount /system    #再次进行修改

然后就可以进行复制操作了。复制完之后输入reboot 重启 

6、以上配置就 OK 了,可以在设置-安全-信任的凭据-系统(滑到最底部):查看已导入的证书,证书有可能默认关闭状态,记得手动打开下

测试了下微信小程序、支付宝小程序、https都是可以正常抓取

附赠:IOS 抓取HTTPS请求(IOS不用这么麻烦,证书配置正确-信任一下即可正常抓小程序、https等):

轻松搞定Charles的HTTPS抓包(iOS13可用)_全菜工程师小辉的博客-CSDN博客_ios 抓包https

以上文章参考原文:

把 charles,Fiddler 证书安装到安卓根目录,解决安卓微信 7.0 版本以后安装证书也无法抓包问题,需要 root_freeking101的博客-CSDN博客_fiddler证书安装到根目录

  • 9
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 12
    评论
要连接Android Studio和夜神模拟器,你可以按照以下步骤进行操作: 1. 首先,确保你已经下载并安装了夜神模拟器。你可以从官网上获取安装包,并按照正常的软件安装过程完成安装。 2. 接下来,打开Android Studio。在Android Studio中,你需要配置夜神模拟器的连接。 3. 在Android Studio的菜单栏中,选择"Tools",然后选择"SDK Manager"。 4. 在SDK Manager中,选择"SDK Tools"选项卡,然后找到"Android Emulator"和"Intel x86 Emulator Accelerator (HAXM Installer)"。 5. 确保这两个选项已经勾选,然后点击"Apply"按钮进行安装。 6. 安装完成后,回到Android Studio的主界面。 7. 打开命令行终端或者CMD窗口。 8. 输入命令"nox_adb.exe connect 127.0.0.1:62001",这个命令将会连接夜神模拟器Android Studio。 现在,你已经成功地连接了Android Studio和夜神模拟器,你可以使用Android Studio来调试和运行你的应用程序。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Android Studio连接夜神模拟器](https://blog.csdn.net/huweiliyi/article/details/122993296)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值