我目前正在研究不同的Android恶意软件以及它们如何影响应用程序。然而,我的研究表明,Android恶意软件要么是通过重新包装的假冒应用程序分发的,要么是通过隐藏恶意软件的原始应用程序分发的。
请放心,我无意制造恶意软件。我问这些问题是想知道在代码中是否有任何方法可以保护我的应用程序免受恶意软件的攻击。我正在开发一个移动银行应用程序,因此应用程序的安全性至关重要。
发布于 2012-09-21 03:16:13
免责声明:我绝不是一个安全专家,所以用一粒(或一磅)盐来理解我的话。
恶意软件有可能在有根的手机上感染其他应用程序。如果恶意软件设法说服用户赋予其超级用户权限(这并不难),恶意软件可以做几件事,允许它在其他应用程序中“注入”自己的恶意代码,在这种情况下,每当被感染的应用程序运行时,它也会感染其他应用程序。
在非根手机的情况下,恶意软件很难注入自己的代码。如果有一个应用程序拥有一个服务,该服务可以从意图包中读取dex代码并将其存储在其本地目录中,然后使用ClassLoader加载和执行该代码,则恶意软件将能够注入恶意代码,前提是目标应用程序不需要任何权限,并且允许任何人发送恶意代码。然而,找到这样的应用程序的机会相当渺茫。
请注意,在大多数情况下,保护应用程序防止恶意软件是操作系统的功能,而不是应用程序本身。如果操作系统允许任何第三方应用程序做任何它想做的事情,那么你的应用程序就无法保护自己(从客户端应用切换到web应用程序,即使这样,在浏览器中注入恶意的JS也是可能的,尽管很难)。因此,你不能保护自己的根手机。在没有根的手机上,操作系统已经很好的隔离了,所以除非你盲目地信任外部输入并把它当作可执行代码,否则你就不需要做太多的事情来保护自己了。
发布于 2012-09-21 05:40:15
我可以想象,一个恶意软件可能会通过入侵的意愿机制,破解android-os,以取代一种银行形式(活动)“输入密码”。android-意图机制的控制形式(活动)是开放的。
因此,根本没有必要修改银行应用程序来损害银行客户的利益。但这只是假设。
https://stackoverflow.com/questions/12523565
复制相似问题