我在我的 iOS 和 Android 应用程序中实现了证书固定。但是,当应用程序进行渗透测试时,我们从测试人员那里得到报告,称这两个应用程序的 SSL 实现都很薄弱,可以使用 SSL 旁路工具轻松绕过。
对于 iOS,SSL 旁路工具是臭名昭著的SSL Kill Switch 2应用程序。现在据我谷歌搜索,该SSL Kill Switch 2应用程序利用操作系统级别的弱点完全绕过固定检查。
我们的团队正在寻找解决方案以防止或至少检测到绕过。创造的解决方案之一是使用公钥固定而不是证书固定。
现在根据我的理解,由于SSL Kill Switch 2在操作系统级别上工作,我们是否固定证书或公钥(或公钥哈希)并不重要。总会绕过去的。
因此,我希望得到经历过这种情况或具有专业知识的人的建议。如果值得实施公钥(或公钥哈希)固定而不是证书固定。更改后我的应用是否有机会对抗渗透测试?