【APP抓包】Charles+burp+夜神模拟器联动抓包(带导入系统级0证书)
- 0x00、大傻春你要干什么?
- 0x01、夜神模拟器安装
- 0x02、安装Charles
- 0、版本
- 1、安装
- 2、破解
- 3、安装导入用户证书
- 4、【非必要】安装系统证书
- 0x03、Charles配置代理
- 1、Charles设置代理规则
- 2、获取模拟器流量包
- 0x04、配置外部代理
- 1、Charles设置代理
- 2、burp开启代理抓包
- 3、联动抓包
- 0x05、可能会遇到的bug
– 本文适合萌新小白和即将暴富的人员观看,非战斗人员请撤离!(主要是没钱买测试机qwq)
文中所有工具请私信发送APP抓包获取
也可以参考下本人另一篇博文:【fiddler+burp+雷神模拟器联动抓包】
0x00、大傻春你要干什么?
首先,了解下整体抓包的流程。
抓包时,流量通过:
模拟器–》Charles–》burp
0x01、夜神模拟器安装
下载地址:夜神模拟器
无脑下一步,然后原神,启动!(bu shi
0x02、安装Charles
0、版本
我使用的是4.6.4版本的,可以抓到,工具请私信获取。
1、安装
也是无脑下一步。
2、破解
青花瓷不破解只能试用1个月,所以我们这一步需要进行破解。
破解地址:Charles破解
双击打开青花瓷
help——》register charles
将Registered Name/License Key填入后点击register
成功破解
3、安装导入用户证书
打开青花瓷后找见图下的点,导出证书(pem格式,放在一个好找见的位置哈)。
证书拖入模拟器
模拟器点开
设置——》安全——》从SD卡安装
找见charles证书后点击安装
注意:这里需要先设置手机模拟器的pin码,证书命名随便,然后默认配置,点击确定就好
安装成功后
设置——》安全——》用户凭据中会有安装的证书
4、【非必要】安装系统证书
系统证书即Android中以.0为后缀的证书,其实大多数情况都可以通过用户证书完成。系统证书导入后可以抓取需要更高权限才可以抓取的数据包。
将pem文件导入到kali中,cd到pem的位置下执行这条指令
openssl x509 -subject_hash_old -in charles.pem
复制生成的内容,算出的系统级证书的名字
修改pem为下面内容命名的.0格式文件
通过adb上传系统证书,先通过powershell(administrator权限)cd 到模拟器下的adb下,然后执行
./adb devices #查看端口,逍遥模拟器默认是51503,多开的话是21513
./adb connect 127.0.0.1:52001
.\adb.exe push{Certificat's Path} {Target path}
之后连接到模拟器
.\adb.exe shell #进入系统内
mount -o rw,remount -t auto /system #挂载system目录
cd到刚刚上传证书的位置
cp {System certificate} /system/etc/security/cacerts/
cd /system/etc/security/cacerts/
chmod 777 {System certificate}
reboot
重启后去
设置——》安全——》信任的凭据——》系统
中查找
0x03、Charles配置代理
1、Charles设置代理规则
proxy—>ssl proxying settings—>ssl proxying—>include—>add
2、获取模拟器流量包
方法一:WLAN代理
模拟器点击WLAN,长按,高级,手动代理添加抓包机的ip和代理端口
方法二【推荐】:postern代理
也有两种方法:
方法1:http/https代理
方法2:socks5代理
此时需要开启Charles的socks5代理
Charles打开
proxy—>proxy settings—>勾选enable socks proxy
配置规则
依旧是在postern中设置,在左上角菜单栏中打开配置规则,新建规则:
打开VPN
打开后任务栏会有钥匙图标,说明开启成功
成功抓到了数据包
0x04、配置外部代理
1、Charles设置代理
青花瓷打开
proxy—>external proxy settings
点击屏幕顶端的Charles菜单栏中的Proxy,从下拉菜单中找到External Proxy Settings,勾选http和https代理,这里http和https的代理服务器地址都是127.0.0.1:8081
2、burp开启代理抓包
已经设置了外部代理了,就必须打开burp(当然了主要是要打开burp中对127.0.0.1:8081的监听),否则就会出现“连不上网了”的现象。在burp的菜单栏中的Proxy选项下的Options中打开127.0.0.1:8081的代理监听(默认应该是已经打开的),在Intercept中关闭请求拦截。
3、联动抓包
完成上面的配置步骤后,便可实现文章最前面说的联动抓包,不懂原理的再回到上面看看哈。
0x05、可能会遇到的bug
1、postern配置过后没有反应,可以先删除多余的代理规则后关闭VPN,再重启软件。
2、找不见adb.exe,往往在模拟器安装的同级目录或下级的bin目录下。
1、从手机上打开微信小程序,登录并进入功能点,应该已经可以在Charles窗口左侧的列表中找到想抓的包。在想抓的https包的url处右击选择Enable SSL Proxying。这一步非常重要,因为我曾经不知道这一步骤然后burp中依然抓不到包……
以上都完成后,再访问在手机端微信小程序中想要测试的功能点,此时burp中应该就可以抓到包了。