首页 > 解决方案 > Android开发中删除文件的安全方法

问题描述

在使用安全工具分析我的 Android 应用程序后,它检测到了一个高级漏洞“文件不安全删除检查”。我对此进行了调查,似乎问题在于应用程序使用了“file.delete()”。

该功能被认为是不安全的,因为理论上可以使用扫描所有存储设备的工具检索数据。那么,如果这种删除方式是“不安全的”......在Android中删除文件的“安全”方式是什么?(以避免出现所谓的“高级”错误)。在Android开发中删除文件的正确方法是什么?

我在 2 个不同的应用程序中收到相同的安全警告,一个使用本机 Java,另一个使用 Xamarin Forms。非常感谢!

标签: androidandroid-security

解决方案


在Android中删除文件的“安全”方法是什么?

绝大多数Android 设备都没有。你delete()使用File.

该功能被认为是不安全的,因为理论上可以使用扫描所有存储设备的工具检索数据

如果 Android 设备恰好使用经典硬盘驱动器(旋转磁介质),您可以在删除之前覆盖数据。在任何类型的闪存介质上,这都是无效的,因为写入数据的物理位置可能随每次写入操作而变化(“磨损均衡”)。

所以,这真的归结为你的目标:

  • 如果您认为如果可以读取此数据会损害用户,请使用用户提供的密码对其进行加密存储。

  • 如果您只是想避免此警告,请询问此“安全工具”的开发人员他们希望您做什么。或者,找到更好的工具。


推荐阅读