我正在构建一个将敏感数据传输到我的服务器的 iOS 应用程序,并且我正在签署我的 API 请求作为附加措施。我想让逆向工程尽可能地困难,并且在使用 Cycript 找到一些真实世界应用程序的签名密钥后,我知道通过附加到进程来找到这些密钥并不难。我绝对知道,如果有人真的很熟练并且足够努力,他们最终会被利用,但我会尽可能地努力,同时仍然为我自己和用户提供方便。
我可以检查越狱状态并采取其他措施,或者我可以进行 SSL pinning,但通过附加到进程和修改内存仍然很容易绕过。
有什么方法可以检测是否有某些东西(无论是 Cycript、gdb 还是任何可用于破解进程的类似工具)附加到进程,而不被 App Store 拒绝?
编辑:这不是Detecting if iOS app is run in debugger的副本。该问题与输出更相关,它检查输出流以识别是否有输出流附加到记录器,而我的问题与此无关(并且该检查不涵盖我的情况)。