系统相关
首页 > 系统相关> > 关于在linux / unix系统上创建和销毁敏感数据

关于在linux / unix系统上创建和销毁敏感数据

作者:互联网

在现代文件系统(以及现代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

Q1:卸载ramfs会破坏其中包含的数据吗?

Q2:如果不保证数据被破坏,是否有任何可行的方法来恢复所述数据(或者我只是偏执狂)?

问题3:如果数据是可恢复的,那么

# dd if=/dev/zero of=/mnt/tmp/ram/[filename]

正确销毁数据或ramfs不能保证就地覆盖文件?

约束:在这些操作之前/期间/之后,系统不能强制重启.

如果你很好奇,在这种情况下,“敏感数据”是pam数据库的无保留,未散列的用户名密码. “安全数据”是盐渍/散列数据库,最终会在主驱动器上运行.我不希望敏感数据接触到驱动器(因为我使用的是ext3 – 据我所知,这不能保证在不擦除整个分区的情况下数据将无法恢复).

如果您知道更好的方法,请赐教,谢谢.

解决方法:

Q1:是的

Q2:恢复数据是不可行的.不过,如果你想成为极端,你可以这样做:)

>在ram中创建一些空间:

mkdir ram
mount -t ramfs -o size = 1000M ramfs ram /

>创建一些随机填充的文件,我们在该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 /

> Umont securedir /然后ram /松散数据直到时间结束.

umount securedir /
卸下ram /

标签:linux,tmpfs,ramdisk,data-destruction
来源: https://codeday.me/bug/20190810/1641305.html