我正在开发一个使用证书固定的Android应用程序(以类似this的方式)。
但是,我遇到了诸如Frida或更糟的Objection之类的动态工具库,它们可以绕过此保护措施。
我知道必须在服务器端实现安全性,但是我想在我的API之外继续窥视。此外,我还理解Java可执行文件易于反汇编和分析。
我如何使攻击者更难执行此过程,即执行基本命令,例如objection
android sslpinning disable
失败并强化我的应用程序?我已经看到,根据资产的名称,此过程也会崩溃。
有任何想法吗?
最佳答案
几个强化框架可能会使Frida和类似工具难以附加和操纵应用程序过程。但是,只要有足够的时间,动力和/或金钱,您甚至可以打破这些框架。
但是,通常不是“是否使用强化框架”这个问题,而是“您愿意为获得这种额外的保护支付多少钱?
据我所知,没有免费的甚至廉价的强化框架(如果我错了,请纠正我,并提供具有良好保护的免费/廉价解决方案的链接),因此,这只是一个问题,您需要多少保护,您需要多少保护愿意付钱。
注意:Proguard和R8并不是强化框架!他们只是稍微混淆了代码,但是特别是在证书固定和通过Frida禁用代码方面,它们不提供任何保护!