黑浩,
尽管我使用各种工具进行了一些手动加密,但我认为自己是个菜鸟。最近我使用 PAM 开发了一个小项目。因此我想到,一旦用户登录,root 就可以以纯文本形式获取任何用户登录密码 - 基本上不需要 root 或任何有权限进行编辑的人做任何努力/etc/pam.d/system-login
。
鉴于 root 对用户主目录的权力,这似乎是一个小问题。但在这里,我不太关心我的用户帐户本身,而是存储在其中的加密数据。直到昨天,我对加密的主目录感到非常安全,相信只有我的密码才能解锁它。但如果我在登录时通过自动挂载来执行此操作,root 可能会捕获密码并随时挂载它。我不会注意到这一点。
我想知道这个问题有多大。尽管我不会在具有不可信根的系统上存储任何敏感数据,但这并不适用于所有人。快速搜索表明,令人惊讶的是,人们对此很少关注,我怀疑这是众所周知的。拱门维基 说你应该在自动挂载加密的主目录时使用强密码。哈希值被写入/etc/shadows
,如果有人掌握了它,他们可能会从哈希值中推断出弱密码并解密您的家庭。在我看来,这没有抓住要点 - 至少在实践中:那些获得访问权限的人/etc/shadows
可能也可以操纵 PAM,因此在您下次登录系统时立即获得超级强的密码。这个话题也达不到这个问题。提到了 PAM,但相当模糊。我没有在任何地方找到密码短语可见性和加密漏洞之间令人担忧的联系的暗示。
我说我用登录密码所做的一切都无法瞒过邪恶根的眼睛,这样说对吗?密码不同于登录密码的附加加密层是否必不可少?这足够了吗?回想起来,使用两个不同的密码是有意义的,因为手头有两个不同的任务。但请考虑自动挂载的使用范围,即违反此原则的频率。通常这甚至是默认设置。
答案1
我说我用登录密码所做的一切都无法瞒过邪恶根的眼睛,这样说对吗?
是的,盒子上的其他所有东西也是如此。 (除了像 SGX 这样的晦涩难懂、不切实际的东西。)
密码不同于登录密码的附加加密层是否必不可少?
没关系,因为接下来的部分。
这足够了吗?
不。
如果邪恶的人拥有root权限,那么他们就可以查看并修改您可以在该计算机上看到的所有数据。在这种情况下,他们也可以安装键盘记录器来捕获您的第二个密码,或者su
在您安装它后向您捕获,或者使用调试器劫持您的进程之一,等等。一般来说,如果有人邪恶在您的计算机上拥有 root 权限,那么它就是不再是你的机器了。您应该围绕阻止攻击者获得 root 权限来做出安全决策,而不是徒劳地尝试限制他们在获得 root 权限后可能造成的损害。