所以我已经用了truecrypt
好几年了。大约 6 个月前,在我得知我的密码之前(我的密码很长,我不想让它受到单词列表的攻击),我曾经从文本文件中复制并粘贴它。
我没有启用交换空间,但我想知道我的密码是否可以恢复?我srm
在文本文件上使用了它,并sfill
在文件系统上做了一个,这样应该会从文件系统中删除它,有人知道剪贴板是存储在硬盘上还是内存上吗?有什么想法吗?
答案1
看到这篇令人好奇的帖子后,我决定做一点研究。似乎在任何窗口系统(例如 X windows 等)中,都有一个公共空间来保存剪贴板的内容。因此,任何可以从剪贴板中提取的程序都可以使用它。因此,我认为剪贴板与任何其他输入设备一样不安全,但要注意的是,它比键盘更糟糕。例如,假设您的计算机上安装了恶意软件,它可以读取您的按键,您输入的任何内容都是不安全的。我认为没有理由其他恶意软件不能定期访问剪贴板来检查内容。虽然这是一种效率明显较低的窃取密码的方式,但它可以获取您的位和字节。
https://github.com/astrand/xclip/blob/master/README
https://en.wikipedia.org/wiki/X_Window_selection
我不是这方面的专家,所以我欢迎其他人提供更好的答案。我上面说的几乎都是推测性的。
答案2
任何程序似乎都可以读取剪贴板,因此只要您信任您的操作系统和程序,它就应该足够安全 - KeePass 使用剪贴板,我想 LastPass 也使用剪贴板?如果你正在运行恶意软件,那么你就已经被“困住了”。
但是我不认为剪贴板会定期写入文件(除非您运行剪贴板管理器/保存程序,如 ClipMan),但是有很多不同的桌面......我认为 XFCE 和 Gnome / Unity 没有。
首先,将密码保存到纯文本文件中会带来更大的安全风险。应该使用 KeePass 或 LastPass 之类的程序,或者将 echo 传输到gpg
并加密保存,然后仅解密到屏幕/控制台或提取到 RAM(ramfs,如果没有交换,则为 tmpfs - 有趣的事实:tmpfs
可以交换)。
shred
不能保证覆盖文件,我也不指望srm
它能做得更好。而且在闪存(SSD、USB 闪存盘等)上,任何扇区都可以随时在内部重新映射,即使填满整个驱动器,您也可能无法确定是否真的覆盖了任何内容。