文章总结: 文章介绍了通过修改Flutter应用的libflutter.so文件绕过SSL证书验证以实现抓包的方法。主要步骤包括使用Ghidra逆向分析so文件定位ssl_x509证书验证逻辑,修改相关汇编指令,重新打包签名APK后配合抓包工具使用。该方法可有效解决Flutter应用因证书绑定导致的抓包困难问题。 综合评分: 75 文章分类: 逆向分析,移动安全,应用安全,安全工具
修改libflutter.so绕过flutter进行抓包
原创
柠檬赏金猎人 柠檬赏金猎人
柠檬赏金猎人
2026年3月24日 12:18 广东
1、下载ghidra,是一个逆向工具,启动需要java22以上
https://github.com/NationalSecurityAgency/ghidra
2、反编译apk,这里使用apktool
https://github.com/iBotPeaches/Apktool
反编译apk
java -jar apktool_2.9.3.jar d your.apk -o apksrc
3、取出 libflutter.so
lib 文件夹 (/lib/armeabi-v7a/libflutter.so) 中获取 libflutter.so。
把so文件拉入ghidra,分析
搜索:【Search】-【For string】菜单,搜:ssl_x509
找到逻辑,一般在XREF交叉调用的第一个函数,(你的逻辑和下图可能不一样,但是大差不差)
进一步研究反汇编代码和指令,了解了这一点,我们需要做的就是将相关0值或者影响了逻辑的值更改为 1,如下所示
导出修改后的so文件,选择orignal_file
4、修改后的so复制到apk反编译的对应目录下(哪里来的放哪里)。还有一种方法是到adb shell里面替换掉原有的so文件即可。
5、重新打包回去
java -jar apktool_2.9.3.jar b apksrc –use-aapt2 –force-all
6、下载签名工具
https://github.com/patrickfav/uber-apk-signer
7、签名
java -jar uber-apk-signer-1.2.1.jar –apk your_out.apk –allowResign –overwrite
8、愉快的抓包吧,使用reqable或者 proxydroid
https://github.com/reqable/reqable-app
https://github.com/zzzzfeng/proxydroid
仅限交流学习使用,如您在使用本工具或代码的过程中存在任何非法行为,您需自行承担相应后果,我们将不承担任何法律及连带责任。“如侵权请私聊公众号删文”。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:柠檬赏金猎人 柠檬赏金猎人 柠檬赏金猎人《修改libflutter.so绕过flutter进行抓包》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。











评论