文章总结: 本文分析了海外版腾讯会议的SSL证书验证机制,发现其使用自编译的BoringSSL库进行证书校验。作者通过逆向分析libwemeet_base.so文件,定位到证书验证函数,并提供了使用Frida框架hook该函数并修改返回值的代码,成功绕过SSL证书验证,实现对腾讯会议的网络请求抓包。文章最后表示后续将发布关于Flutter应用抓包的内容。
综合评分: 75
文章分类: 移动安全,逆向分析,渗透测试
海外腾讯会议抓包
原创
K
Frida and So
2025年10月14日 09:44
上海
声明
本文仅供学习交流,如有侵权请联系删除!
检测
开启抓包工具,进入登录页面,此时开启抓包工具后,点击登录会报网络异常,关闭抓包工具后,再次点击登录就是密码错误,很明显被检测到。
分析
解包apk,查看lib目录下没有libssl.so,一定是自己实现了libssl,登录接口是走的libwemeet_base.so这个文件,使用ida打开该文件,字符串搜索boringssl,挺有意思的,这个开发者用了自己电脑路径,这说明他是采用的自编译谷歌开发的这个库。
源码
查看一下boringssl的源码,最终进入了x509_method的verify_cert验证逻辑,跟入ssl/ssl_x509.cc文件,在该方法内部有一些字符串,可以根据这个字符串进行定位,也就是说只需要hook该函数并修改其返回值为true即可绕过证书校验。
绕过代码
在ida中搜索ssl_server字符串,一共有 2 个函数用到了,用下面给的脚本即可绕过。
let soadd = Module.findBaseAddress("libwemeet_base.so");
let fn1 = soadd.add(0x393E54)
Interceptor.attach(fn1, {
onEnter: function () {
},
onLeave: function (retval) {
console.log(retval)
retval.replace(0x1)
}
})
结果
最后也是可以成功抓包了,后续会再出一篇flutter app抓包。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:Frida and So K《海外腾讯会议抓包》