某支付类app,使用justtrustme插件依然抓到的是connect包,说明证书校验失败,使用的不是系统的证书校验SSLPing,而是自定义的证书校验SSLPing。
首先找证书校验所在类,然后替换掉证书校验方法返回值。
自定义证书校验方法混淆,但是系统调用特征依然存在,从sslSocketFactory trustManager 入手,hook代码如下

1.jpg (32.18 KB, 下载次数: 0)
下载附件
2025-6-12 21:19 上传
调试输出如下:

2.jpg (15.85 KB, 下载次数: 0)
下载附件
2025-6-12 21:21 上传
自定义证书验证方法在RpT类,使用jeb反编译查看

3.png (138.39 KB, 下载次数: 0)
下载附件
2025-6-12 21:22 上传
checkServerTrusted 这个方法 服务器证书校验逻辑,实际调用pBS方法,继续看

4.jpg (41.57 KB, 下载次数: 0)
下载附件
2025-6-12 21:25 上传
验证失败抛异常,验证通过返回null,开始写hook代码

5.jpg (55.32 KB, 下载次数: 0)
下载附件
2025-6-12 21:26 上传
调试输出如下

6.jpg (15.65 KB, 下载次数: 0)
下载附件
2025-6-12 21:28 上传
可以抓到包了

7.jpg (58.58 KB, 下载次数: 0)
下载附件
2025-6-12 21:29 上传