Android 数据残留问题综述
research
1 基本知识
1.1 分区格式演化
Yaffs2,ext4
1.2 存储介质特性
eMMC,TRIM
底层控制指令BLKSECDISCARD
1.3 Android 分区规范
2 物理删除与恢复
2.1 Fast 2010 论文
2.2 AsiaCCS 论文
3 数据擦除残留
3.1 MoST 2015 论文
4 文件删除残留
根本原因原因:ioctl 不支持 file granularity
4.1 Generic deletion
4.2 App data clearing
4.3 App Uninstallation
4.4 Factory Reset of Third-party Recovery Subsystems
5 Android数据清除技术演化与缺陷
加固方式:
FDE、底层控制指令BLKSECDISCARD、TRIM特性的加入(可以抵消MoST文章的结论,TRIM能使数据在很短一段时间后被擦除)、Factory Reset使用ERASE COMMAND、文件级别删除的API Hacking(https://patchwork.ozlabs.org/patch/359747/)
问题:
使用文件删除方式导致数据残留
eMMC不支持新特性删除;
eMMC芯片bug导致编译时换成老的方式;
全磁盘加密后第三方recovery默认不清除磁盘