问题描述
对于 “Angry Birds Backup” 这款应用产生了疑问,因为它似乎是第三方应用程序,可以修改其他应用程序的数据。从安全的角度来看,这似乎不太可能,因为这可能会导致恶意软件的创建。那么这个备份程序是如何工作的呢?这个应用在我的 Nexus One 上运行良好,但手机没有被 root 过。该应用只请求网络和SD卡访问权限,前者可能仅用于广告(尚未检查付费版本)。
解决方案
请注意以下操作注意版本差异及修改前做好备份。
方案1
根据Android开发指南,写入内部存储(例如 Angry Birds 数据)的文件默认情况下不能被其他应用程序访问。我猜想 Rovio 使用了 MODE_WORLD_READABLE
来替代默认设置,但也许这是一个错误,或者他们计划让未来的应用程序能够读取你的进度并解锁某些内容等。
当然,这并不排除使用 Android 漏洞来绕过文件隐私的可能性,但除了备份应用的作者之外,谁知道呢?
方案2
使用未经验证的第三方备份应用可能存在风险,请谨慎使用。
如果 “Angry Birds” 状态数据存储在 SD 卡上的文件中,那么第三方应用就可以覆盖状态数据。否则,如果它使用数据库或类似的存储,那么这可能存在安全问题(除非您已经 root 过手机)。
即使它只是保存状态,也没法在没有 root 权限的情况下恢复状态。写入/读取 SD 卡并不需要 root 权限。如果 Angry Birds 没有提供备份和存储状态数据的机制,那么第三方应用如何能够覆盖 Angry Birds 的状态呢?这可能需要访问 /data/
目录,这是需要 root 权限的。
以上是关于 “Angry Birds Backup” 应用如何工作的解决方案,用户在使用这类第三方备份应用时应谨慎行事,确保安全性。