有很多文章是关于在OkHttp3中使用CertificatePinner类来规避安卓系统中的SSL锁定的。
https://medium.com/@hojat.sajadinia/bypass-okhttp-certificatepinner-on-android-9a45ad80a58b
https://joncooperworks.medium.com/disabling-okhttps-ssl-pinning-on-android-bd116aa74e05
所以我的问题是,我应该怎么做才能防止使用OkHttp.CertificatePinner绕过SSLPinning?
我尝试的是在我的项目中混淆OkHttp。当我们使用ApkTools来反转APK文件时,找不到OkHttp3类,但是当我使用jadx来反转APK文件时,OkHttp3在dex文件中不会被混淆。

发布于 2021-01-12 17:17:24
您可能可以调查设备证明,以确认正确的应用程序二进制文件正在非根移动设备上运行。https://developer.android.com/training/safetynet/attestation
,SafetyNet认证API是一个反滥用的API,允许应用程序开发人员评估他们的应用程序正在运行的安卓设备。API应该作为您的滥用检测系统的一部分,以帮助确定您的服务器是否与运行在正版Android设备上的正版应用程序交互。
但我没有资格在这个话题上提供专家建议。
发布于 2021-01-13 12:13:55
最后,我不得不手动覆盖mapping.txt,因为保护规则在OkHttp3上不起作用。希望在我重写OkHttp3的类名、方法名和对象名之后,能够防止中间人攻击者通过使用Okhttp3.CertificatePinner.java绕过证书锁定
https://stackoverflow.com/questions/65679554
复制相似问题