Sch*_*ves 6 linux tmpfs ramdisk data-destruction
在现代文件系统(和现代 SSD)中,无法保证如果您使用传统实用程序(例如 dd)覆盖文件,数据将就地覆盖并销毁日志备份。结果,数据有可能被恢复。因此,经过一些研究,我认为安装临时 ramfs(tmpfs 由于可能会交换而被排除在外)将是可行的方法:
# mkdir -p /mnt/tmp/ram
# mount -t ramfs -o size=[size, but ramfs grows as needed] ramfs /mnt/tmp/ram
# [create the sensitive data, secure it, copy out secured data]
# umount /mnt/tmp/ram
Run Code Online (Sandbox Code Playgroud)
Q1:卸载 ramfs 是否会破坏其中包含的数据?
Q2:如果不能保证数据被销毁,有没有什么可行的方法可以恢复这些数据(或者我只是偏执)?
Q3:如果数据是可恢复的,
# dd if=/dev/zero of=/mnt/tmp/ram/[filename]
Run Code Online (Sandbox Code Playgroud)
正确销毁数据还是不能保证 ramfs 就地覆盖文件?
约束:在这些操作之前/期间/之后不能强制系统重新启动。
如果您好奇,在这种情况下,“敏感数据”是 pam 数据库的未加盐、未散列的用户名+密码。“安全数据”是加盐/散列的数据库,最终会出现在主驱动器上。我不希望敏感数据接触驱动器(因为我使用的是 ext3 - 据我所知,如果不擦除整个分区,则无法保证数据将无法恢复)。
如果你知道更好的方法来做这件事,请赐教,谢谢。
问题 1:是的
Q2:无法恢复数据。不过,如果你想变得极端,你可以这样做:)
mkdir ram
mount -t ramfs -o size=1000M ramfs ram/
dd if=/dev/urandom of=ram/test bs=1M count=512
cryptsetup -y luksFormat ram/test
cryptsetup luksOpen ram/test encypted
mkfs.ext4 /dev/mapper/encypted
mkdir securedir
mount /dev/mapper/encypted securedir/
umount securedir/
umount ram/