Flutter框架开发的安卓App的抓包以及Frida安装和hook使用教程
资料
记录Flutter框架开发的安卓App的抓包以及Frida安装和hook使用教程
Postern + Charles + Burpsuite 进行对 APP 进行抓包
Postern实现安卓设备的全局代理教程
为什么Flutter不能抓包
1.它不走系统代理
2.它不支持设置代理
3.它不信任系统证书
然后它证书校验写死在so文件里,所以导致JustTrustMe,SSLUnpinning等模块完全失效,目前面临的问题:需要证书校验和不走代理,
解决的步骤
- 针对证书校验问题,就是用frida去hook libflutter.so中的函数
- 使用IDA静态分析,找到‘ssl_client’hook的点
- 针对不走代理我们可以使用基于VPN模式的Postern+charles 转发抓包
- 运行frida
具体的步骤
将apk解压(改成zip后缀),找到libfluter.so
此时要注意你用的手机是否是64位
打开64位的IDA pro
通过字符串找到ssl_client
双击进去
找一下这个堆栈,点击红圈函数,按x追踪(IDA有时候特别慢,需要多等一会儿)
此时就能找到这个函数的地址了
frida脚本
这个时候,我们使用别人写好的脚本https://github.com/G123N1NJ4/c2hack/blob/master/Mobile/flutter-ssl-bypass.md
把这段代码复制下来,把代码中的地址修改为刚才获得的地址0X5dc3cc,将代码保存为ssl.js。
配置frida
然后打开app,frida –UF –l ssl.js (-UF 就是当前打开的app)
启动frida-server sargo:/# cd /data/local/tmp sargo:/# ./frida-server-16.1.3-android-arm64 端口转发: adb forward tcp:27043 tcp:27043 使用frida frida -UF -l flutter_ssl_bypass.js
配置postern
然后打开postern工具转发一下,在charles就能抓到包了。
1.配置charles
勾选SOCKS Proxy
添加代理服务器
严格按照下面的配置来执行
点击保存
配置规则
添加规则
按照下图进行操作并点击保存
打开/关闭 Postern
这样足够了
抓包成功!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。