关键信息 漏洞描述 漏洞类型: Android Manifest Misconfiguration 导致的 Task Hijacking 在 Web Video Cast 应用中。 受影响应用: com.instantbits.cast.webvideo 复现步骤 1. 用户下载恶意应用。 2. 用户使用恶意应用。 3. 用户使用受害应用,此时看到的活动不是应用的原始活动,而是恶意应用的钓鱼活动。 4. 用户认为自己在使用受害应用(实际上是恶意应用),输入个人信息或授予恶意应用相应权限。 概念验证视频 视频显示执行恶意程序后,任务成功被劫持,当启动受害应用时,实际打开的是恶意应用。 原理 由于大多数应用的 taskAffinity 属性未设置,默认为包名,可以将与攻击目标应用包名一致的 taskAffinity 值设置在恶意 activity 的 taskAffinity 属性中。 当恶意 activity 启动时,会创建一个与受害应用相同的任务栈,并位于任务栈根部。启动受害应用时,受害应用的任务会被带到前台,但恶意 activity 会在根部被带入前台。 可以设计钓鱼页面在恶意 activity 中实施钓鱼攻击,获取用户隐私并诱导用户授予恶意应用相应权限。 缓解措施 需要在 AndroidManifest.xml 文件中设置 application activities 的 taskAffinity 属性为 taskAffinity="",强制所有活动使用随机生成的任务亲和性,或在标签中设置以对应用中的所有活动进行强制执行。 攻击者应用代码 包含 Android Manifest 和 Main Activity 的代码示例。 影响 由于 Android manifest 文件中的配置错误,可以执行任务劫持攻击。攻击者可以创建恶意移动应用,劫持合法应用并窃取设备上的潜在敏感信息。 参考资料 提供了相关安全问题和缓解措施的链接。