为什么使用密码管理器比使用简单的 passwords.txt 文件更好?

信息安全 密码 密码管理
2021-08-26 17:07:19

真是好奇。密码管理器(例如 Keepass)旨在阻止哪些类型的攻击?如果黑客访问了你的系统,游戏就结束了,那么加密一个人的密码有什么附加价值呢?

4个回答

使用密码管理器,您的密码不会以明文形式存储在您的计算机上。换句话说,即使恶意行为者获得了对您系统的访问权限,他们仍然不会获得您的密码。

如果您登录的网站遭到入侵,密码管理器还可以很好地帮助您创建长而复杂的密码(而不是破坏 Excel 文档中的密钥)。您还可以为每个站点设置不同的密码,从而进一步降低风险。此外,您可以拥有访问这些密码所需的 USB 密钥,因此当您不在计算机附近时,您可以拿走访问密钥攻击者可以整天暴力破解,他们很可能无法访问密码。这整天都击败了受密码保护的文件。

旁注:在进行渗透测试时,在获得内部网络访问权限后,我做的第一件事就是在域上的所有共享中搜索字符串:“密码”。我每次都会受到打击:(不要让那成为你。

有不同的方法可以访问系统。考虑以下两种情况。

场景 1:您的应用程序被沙盒化,一个应用程序被入侵

假设您将 Apple OS~X 之类的系统与 Mac App Store 应用程序一起使用。您所有的应用程序都是沙盒的。某些应用程序(例如文本编辑器)有正当理由以编程方式访问您的文本文档。如果其中一个应用程序被恶意软件破坏,那么攻击者将能够读取您的密码文件。

但是,假设您在 Linux 上实现了密码管理器,其中应用程序可以使用进程间通信来专门检索它们自己存储的密码,那么受感染的应用程序将无法提取您的所有密码。它只能查询(并发送给攻击者)与受感染应用程序本身相关的密码。无论如何,当您在应用程序中键入它们时,攻击者可能会窃取它们。

您的攻击者需要(1)突破沙箱和(2)破解密码管理器存储您的秘密的文件的加密,或者让密码管理器本身运行漏洞。

在这种情况下,密码管理器绝对代表了安全性的提高。其他攻击媒介包括滥用虚拟输入接口安装键盘记录器等。让我们暂时把这些放在一边,只是说当沙盒化时,至少你可以调解和控制哪些应用程序使用这些功能。

场景 2:没有沙盒,任何应用程序都受到攻击

您的文本文档显然容易受到您拥有的每个应用程序的攻击。更多应用程序可用作系统的入口点,以窃取该文件。

您的密码管理器几乎没有受到任何保护。攻击者可以简单地修改您桌面的任何方面来安装键盘记录器,导致您在整个用户会话中加载额外的库,甚至可能替换密码管理器的二进制文件。他们也可能能够检查您正在运行的密码管理器的内存,具体取决于操作系统及其配置方式。

与简单地窃取文本文件相比,这种攻击仍然更难执行,特别是如果使用的漏洞只允许攻击者定位和提取单个文件而不是执行任意代码。因此,密码管理器降低了更基本攻击的风险,但不能降低更高级攻击的风险。

结论

密码管理器现在提供了一定程度的额外安全性,因为它们会加密您的密码文件的内容并要求攻击者破坏密码管理器本身。

但是,一旦沙盒变得更加系统化,它们的真正好处将会增加。然后,攻击密码管理器或用户会话本身将变得更加困难。

除了其他答案之外,加密文件仅在使用时容易受到恶意软件的攻击。您的密码只有在您解锁后才能被盗。

这意味着它们不能通过手机、笔记本电脑、平板电脑或 USB 存储设备的物理盗窃而被盗。这意味着它们不能从用于同步它们的任何云或网络存储中被盗。它们不能从废弃的硬盘驱动器、备份或设备中被盗,即使您没有按照应有的方式彻底擦除它们。如果您使用在线服务而不是本地管理的应用程序,则加密意味着您的密码不会因违反您的提供商而被盗。

确实,您设备上的专门恶意软件应用程序可以在您积极使用它时击败任何密码管理器。但同样的恶意软件也确实可以窃取您输入的任何密码,无论如何。因此,加密密码不会降低您的安全性,并且确实减少了您呈现的攻击面,或者至少可以实现在没有加密的情况下会鲁莽的便利行为,例如通过云存储同步,或随身携带副本你的口袋在拇指驱动器上。

此外,基于浏览器的密码管理器将帮助您避免网络钓鱼攻击,因为它不会被明显的域名所欺骗,并且不会自动填写您可能无意中点击的网络钓鱼 URL 中的密码字段!