赞
踩
androi studio下的安卓模拟器 Android11+
android-platform-tools
因为高版本Android的安全限制,需要将证书导入为系统证书
Help -> SSL Proxying -> Save Charles Root Certificate
导出后的证书名为charles-ssl-proxying-certificate.pem
由于系统层的证书命名规则,需要计算证书的hash值,修改证书名称,并将证书名修改为hash值
- openssl x509 -subject_hash_old -in charles-ssl-proxying-certificate.pem
- mv charles-ssl-proxying-certificate.pem c16b9f6a.0
先把证书push到/data/local/tmp
中方便修改
adb push c16b9f6a.0 /data/local/tmp
进到手机模拟器shell中,将证书复制到/system/etc/security/cacerts
,但在复制之前需要调整模拟器将其设置为可写入模式,对于Android Emulator,需要进入到Content包中修改,添加 -writable-system 参数
修改完成后,用终端运行 ./runemu
,再用adb把证书移到系统文件夹中,再做权限修改
- adb root
- adb remount
- adb shell
- cd /data/local/tmp
- cp c16b9f6a.0 /system/etc/security/cacerts/
- chmod 644 /system/etc/security/cacerts/c16b9f6a.0
- reboot
重启成功后查看信任凭据,途中Charles Proxy代表安装证书成功
需要打开开发者模式,连续点击build号
找到模拟器启动器,然后运行下面的命令
- cd /Users/${user}/Library/Android/sdk/emulator
- # 查看avd设备列表
- ./emulator -list-avds
- # Small_Phone_API_31
- # ...
- # -writable-system模式启动
- ./emulator -avd Small_Phone_API_31 -writable-system
-
- # 开启system目录的写入权限
- adb root
- adb disable-verity
- adb reboot
- adb root
- adb remount
- adb push c16b9f6a.0 /system/etc/security/cacerts/
- adb shell
- chmod 644 /system/etc/security/cacerts/c16b9f6a.0
- reboot
#如果安装完证书重启后证书没安装上,记得先断网再重复步骤安装一次!
导出charles证书
把导出的证书导入到burp中,输入的密码和导出的密码一致
charles的代理设置如图这样配置
SSL代理设置两项
最后在设置流量走向到burp,http和https都要勾选
最后就能愉快的抓包了
关注CatalyzeSec公众号
我们一起来从零开始学习网络安全
加入我们的星球,我们能提供:
Fofa永久高级会员
常态化更新最新的漏洞POC/EXP
常态化更新未公开、半公开漏洞POC
常态化更新优质外网打点、内网渗透工具
常态化更新安全资讯
开放交流环境,解决成员问题
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。