我已经在我工作的一个 android 应用程序中实现了证书锁定。以下是遵循的步骤。
- 将 .crt 文件隐蔽到 .bks 文件。
- 将 .bks 文件添加到项目结构中的资产文件夹中。
- 在 api 调用期间使用 trustmanagerfactory 加载上述文件。
安全审计员说这个实现很弱,很容易被 FRIDA 或任何其他绕过工具破坏。
有没有更好的方法来实现 SSL pining,使上述工具无法拦截网络调用。我当前实现的代码片段的图像
PS:使用 DefaultHTTPClient 进行 API 调用。
更新:在网络安全配置文件中添加了证书的公共哈希,但该工具能够绕过。