记录一次charles启用vpn+禁ssl都无法抓包app的情况竟因为是flutter应用

一、如何判断是否flutter应用app?

打开该app,运行 adb shell dumpsys activity top

这里出现flutter即是flutter应用了。

二、如何解决flutter应用抓包问题?

flutter开发的app,ssl证书校验在libflutter.so中的ssl_crypto_x509_session_verify_cert_chain函数中,用frida把它hook返回true即可。
打开ide搜索字符串ssl_server,双击进去找到ssl_crypto_x509_session_verify_cert_chain函数的偏移地址进行hook;


hook代码如下

javascript 复制代码
function hook_ssl() {
    Java.perform(function () {
	var base = Module.findBaseAddress("libflutter.so");
    var ssl_crypto_x509_session_verify_cert_chain = base.add(0x659AEA);
    console.log("找到函数偏移地址:",ssl_crypto_x509_session_verify_cert_chain)
	Interceptor.attach(ssl_crypto_x509_session_verify_cert_chain, {
        onEnter: function(args) {
            console.log("hook 开始!")
        },
        onLeave: function(retval) {
            console.log("返回值: " + retval);
            retval.replace(0x1);
            console.log("解除ssl验证成功\n---------------------");
      }
  });
}
    )};
setTimeout(hook_ssl,1690)   // 设置延时找对hook时机(太快函数还没加载出来,太慢app已经发起请求了)

以上操作完成后,charles+postern抓包即可。

相关推荐
dragon72536 分钟前
FutureProvider会刷新两次的问题研究
前端·flutter
呜呜。3 小时前
WebSocket-学习调研
websocket·网络协议·学习
2501_915909063 小时前
Flutter 应用怎么加固,多工具组合的工程化实战(Flutter 加固/Dart 混淆/IPA 成品加固/Ipa Guard + CI)
android·flutter·ios·ci/cd·小程序·uni-app·iphone
挠到秃头的涛某4 小时前
华为防火墙web配置SSL-在外人员访问内网资源
运维·网络·网络协议·tcp/ip·华为·ssl·防火墙
树在风中摇曳4 小时前
TCP连接还在吗?主机拔掉网线后再插上,连接会断开吗?
arm开发·网络协议·tcp/ip
せいしゅん青春之我5 小时前
【JavaEE初阶】IP协议-IP地址不够用了咋办?
java·服务器·网络·网络协议·tcp/ip·java-ee
我最厉害。,。5 小时前
内网对抗-隧道技术篇&防火墙组策略&HTTP反向&SSH转发&出网穿透&CrossC2&解决方案
网络协议·http·ssh
Pluchon6 小时前
硅基计划6.0 陆 JavaEE Http&Https协议
网络协议·tcp/ip·http·网络安全·https·udp·java-ee
是店小二呀6 小时前
仓颉三方库开发实战:Simple HTTP Server 实现详解
网络·网络协议·http
北京耐用通信7 小时前
从‘卡壳’到‘丝滑’:耐达讯自动化PROFIBUS光纤模块如何让RFID读写器实现‘零延迟’物流追踪?”
网络·人工智能·科技·物联网·网络协议·自动化