想象一个场景,其中安装在您的移动设备上的游戏X想要从社交网络Y访问您的帐户信息。假设Y暴露了一些应用程序接口,并且具有诸如“使用Y登录”等功能。在桌面PC X上,可以弹出新的浏览器窗口,其中Y的域名清楚地显示在地址栏中,并且带有一个挂锁图标,清楚地指示SSL连接,并且在该弹出窗口中,社交网络Y将要求用户提供登录、密码和协议,以将一些信息(如姓名、头像、电子邮件)传递给应用程序X。例如,OAuth 2使用这种方法。
在我看来,在移动设备上的情况是相当不同的,因为应用程序X可以控制整个屏幕。特别是,它可以在设备的屏幕上绘制一些与真正的浏览器难以区分的东西,并劫持用户提供的登录和密码。
如何对抗覆盖整个屏幕并伪装成浏览器的恶意应用程序,甚至操作系统的设置窗口等?
发布于 2014-09-05 17:23:16
即使是在桌面上,也没有针对这一点的技术防御。模仿浏览器的外观并在假的地址栏中画一个绿色的SSL锁是很简单的。或者您可以简单地在您的应用程序中包含一个按键记录器,以便在同一系统上的任何应用程序中输入密码。
对于移动应用程序,包括一个按键记录器是比较困难的。绘制令人信服的假浏览器窗口很容易。一个额外的防御是应用程序商店的审查过程。官方应用商店作为可信应用的唯一来源,在一定程度上缓解了这样的问题。虽然恶意应用程序可能会通过任何审查过程,但一旦被发现,它们就可以被删除。
发布于 2014-09-05 07:38:11
这样如何:双击home按钮,这样就可以看到应用程序的名称了?

发布于 2014-09-05 20:31:43
您还可以运行任务管理器来查看应用程序的名称f.e。com.android.chrome。我认为谷歌不会允许市场上有两个同名的应用。
https://stackoverflow.com/questions/12439499
复制相似问题