鱼阅

Flutter框架APP绕过SSL验证

2024年11月27日·Tide安全团队
Fish AI 速读

原文 3423 字,FishAI速读将为你节省 18 分钟

总结

本文介绍了Flutter框架的特点以及在抓包过程中遇到的挑战,例如APP不走系统代理、不支持设置代理、不信任系统证书等问题。文章深入分析了Flutter框架中HTTPS证书校验的机制,并详细阐述了如何利用Frida框架hook libflutter.so中的ssl_client函数来绕过证书校验,最终实现对Flutter框架APP的抓包。文中还提供了相关的Frida脚本和参考链接,方便读者学习和实践。文章强调了技术仅供学习交流使用,不得用于非法用途。

关键要点

  • 🤔Flutter框架APP的特点:使用Dart语言开发,lib文件夹下包含libapp.so和libflutter.so两个库,前者包含业务代码,后者包含基础类库。

  • 🐞Flutter框架APP抓包的挑战:不走系统代理、不支持设置代理、不信任系统证书,导致常规SSL绕过方法失效。

  • 🔍Flutter框架SSL证书校验机制:证书校验逻辑写死在SO文件里,通过hook libflutter.so中的ssl_client函数可以绕过。

  • 🔧Frida脚本绕过SSL Pinning:利用Frida脚本hook libflutter.so中的ssl_client函数,修改函数返回值,从而绕过证书校验。

  • ⚠️技术仅供学习交流:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途给予盈利等目的,否则后果自行承担!