我正在考虑使用一些参数(敏感的会话)启动一个Activity(不同的应用程序),并且想知道这里最安全的方法是什么。例如,startActivityForResult()可能在Android上使用,我想知道是否还有其他应用程序可以看到此请求,或者是否需要root权限才能拦截此请求?因此,基本上,使用它是否安全?默认情况下,我们假设用户没有root权限。
答案 0 :(得分:0)
我想知道是否有其他应用程序可以看到此请求
响应您的startActivityForResult()
呼叫的应用可以看到请求。可能是:
您希望将数据发送到的真正未修改的应用程序
该应用程序的被黑版本
一个完全独立的应用,恰好与您的Intent
相匹配,特别是如果您使用的是隐式Intent
您可以尝试检查签名以确认其他应用是否确实是真正的未修改应用,因此可以避免后两种情况。
在旧版Android上,Intent
对于其他应用程序来说是可见的,作为支持概述屏幕(最近任务列表)的数据的一部分。在4.x系列IIRC中的某个地方已经清除了该问题。
这是我所知道的针对无根设备的仅有的两种攻击。