iOS中应用间通信有多安全?

10
1个回答

10

不要使用URL scheme传输任何敏感数据,它们在设计上完全不安全。

相反,你应该使用专门设计用于此目的的iOS Keychain机制。


我知道这一点。但对于未越狱的手机,只有预期的应用程序才能看到这个吗? - William Niu
4
如果你想打开的应用程序没有被安装在iPhone上,但是另一个应用程序注册了相同的URL Scheme,那么你可能会意外地将URL发送到错误的应用程序。这些Scheme上没有内置的保护措施,也没有办法检查哪个应用程序已经注册了自定义Scheme。 - Claus Broch
1
Claus,iOS SecItemAdd文档解释了你可以使用kSecAttrAccessGroup属性来指定可以访问该项的钥匙串访问组。但这同样不安全吗?一个恶意应用程序不能简单地声明相同的keychain-access-groups权限并访问敏感数据吗? - Bob Whiteman
如果有超过一个第三方应用程序注册以处理相同的URL方案,则目前没有确定哪个应用程序将获得该方案的过程。 - lelelo
我不认为它是不安全的。涉及的两个应用程序只需要合作。他们都可以在实际方案之前添加“Payamas”反向来创建加密。而且对于像开发人员这样的窃贼,要知道哪个应用程序如何以及使用什么进行通信是相当困难的 - 它需要同时了解两个应用程序,并从自己的应用程序中非常精确地定位目标。 - lelelo
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接