LastPass - 国外设备上的最佳实践

信息安全 最后一次
2021-09-08 09:28:44

我是 LastPass 的新用户,并且一直在阅读文献以更好地了解它的工作原理。我不明白如何在其他计算机上最好地使用 LastPass。

在您只想使用 Web GUI 的情况下,我不相信 LastPass 可以自动填写凭据/表格,也不会自动下载/上传您的数据库(如果有错误请纠正我)。因为您必须复制和粘贴,所以风险是将密码留在剪贴板中并打开 Vault 以供查看。我认为最好的做法是

  1. 在所有情况下都使用一次性密码。
  2. 刷新剪贴板。
  3. 假设没有屏幕记录器、记录​​器或旁观者。

另一种情况是在外国计算机上安装(或使用现有安装)操作系统客户端和/或浏览器扩展。在这里,LastPass 正在本地编写您的(超强)加密数据库。这是否意味着在每台外国计算机上我都会留下一个数据库版本(令人生畏)?有经验的用户如何管理这个:扩展>工具>高级工具>清除本地缓存(我不确定清除了什么),手动删除相关文件,让你的垃圾保持原样?其次,是否有任何字段需要注意主密码(如果没有 OTP)被记住的位置?最后,是否与其他用户的数据库/凭据有任何冲突或覆盖(您不想在之后破坏他们的体验)?

我知道一种解决方案是使用 LastPass Portable(我在家里使用的)或 LastPass Pocket,这取决于它是否曾经在本地复制数据库(我不知道)。我想将第二种情况限制为没有这些选项,因为在旅行、与朋友、甚至在工作/学校时,没有 USB 副本是很常见的情况。

我希望这个问题不会因为过于自觉而困扰人们。我只是想知道当我不在自己的东西上时如何最好地使用 LastPass。非常感谢您阅读并提前提出任何想法!

LastPass 论坛中的原始帖子

更正:我现在明白 LastPass 在本地进行所有加密/解密。这意味着 LP 发送他们的加密数据库副本,而您(您正在使用的外部设备)解密。即使使用 Web GUI,也必须将数据库“乱扔”在上面。


讨论 Tim X 的答案:

哇!感谢您对@Tim X 的阐述,对于这么晚的回复,我深表歉意。你考虑得很周到。我既不是安全专家也不是程序员,但我将分享一些有关 LastPass 的广泛概述信息。

LastPass (LP) 是一种基于云的密码管理器,在过去 3 年中已成为主流消费者(在某种程度上是企业)采用的解决方案。这当然不同于流行的离线密码管理器,例如 KeePass,因为信息通过 Internet 传输并远程存储。LP 通过本地(客户端)加密/解密进行操作。也就是说,在与 LP 服务器进行 SSL 握手后,客户端应用程序只会发送和接收 LP 加密的产品。LP 已竭尽全力安排他们永远不会收到用户凭据,也不会收到从用户凭据生成并用于加密的私钥。对于登录和信息传输,客户端首先连接用户的登录电子邮件和主密码。然后它执行一个 PBKDF2 salted-hash(我不知道盐' s 位强度)以用户指定的迭代次数(默认为 5000)。用户的密码数据库或对其所做的任何更改(更改始终是本地的,除了可能在 Web GUI 中,这仍然让我感到困惑),在此密钥的影响下通过 AES 256 位进行加密。因为 LP 从不接收私钥,所以他们需要另一种方式来识别其用户。LP 从私钥和用户主密码的串联中执行第二个客户端单向散列算法(我相信是 PBKDF2)。这成为 LP 用于首次身份验证的唯一 ID,但它不存储在服务器端(尽管这样做是合理的)。相反,LP 更进一步,执行第三次本地散列,现在是一个伪随机 256 位令牌的串联,该令牌在创建帐户时在服务器和客户端之间使用用户的唯一 ID 共享。1) 第三次散列的结果,2) 256 位令牌,以及 3) 用户的加密数据库是存储在 LP 服务器上的内容。客户端只发送 1) 唯一 ID 和 2) 加密数据库,前者再次,而不是永久存储在服务器端(LP 服务器执行即时首次身份验证,使用他们的 256 -bit 帐户创建令牌)。

这种方法很棒,受到有识之士的称赞比我多。其中一个含义是,包括 LastPass 在内的任何人都没有(可能是强)主密码(或破坏现代对称密码学)的进入点。LastPass 还提供了@Tim X 想到的许多功能,包括多因素身份验证和无需主密码即可登录。一次性密码是用户通过 LastPass 生成的随机密码,在解除关联之前可以使用一次登录;这将是一种无需输入主密码即可访问 LP 数据库的方法。当然,这不会妨碍事后对数据库的屏幕记录,也不会阻止@Tim X 在使用公共终端时强烈警告不要进行复制和粘贴过程。我认为这是一个非常重要的讨论文章,但我也想问以下问题:

LP 方法的第二个含义是每个客户端(我使用 Chrome 便携式扩展,但有 Windows/Mac/Linux 二进制文件、移动版本和书签)和客户端计算机在本地写入加密数据库的副本。从必须执行本地加密/解密中可以看出这一点。我担心将那个(牢不可破、超级有价值的)数据库留在我无法永久控制的机器上。有没有使数据库不持久的选项?如果您的主密码被泄露,是否有一种定时机制可以用随机密钥加密覆盖?我不相信 LP 采用了任何完美的前向保密技术。我们可以想象用户处于主密码泄露的情况。当他们去改变它时,可以在任何地方,未同步的副本更新其加密?(我的意思是,他们当然不能。)这意味着用户必须快速更改他们数据库中的每个密码,考虑到用户今天拥有的平均在线帐户数量,这是不可能的(而且只是糟糕的技术)。更不用说 LP 提供存储在数据库中的不可更改数据,例如包含个人信息的文本注释和表格。

由于 LastPass 的高度推荐(也许我应该向推荐的人提出我的问题),我想完全采用它。但是,这个关于乱扔可以追溯打开的数据库的重要问题阻止了我。我希望这是一个我只是缺少要理解的信息的问题,而不是一个未经询问或冷漠的问题。也许假设是用户在任何情况下都永远不会在您将来无法始终控制的设备上运行 LP,无论它是否受信任(类似于@Tim X 评论)。对于没有高级订阅(启用移动应用程序)或他们的笔记本电脑的人,也许模型是“你不走运”。

@Tim X 又提出了两点,一是关于电话,二是关于风险因素。使用自有移动设备访问您的数据库是很好的建议。在这种情况下,它有点受阻,因为 LP 不向免费订阅者提供他们的移动应用程序(尽管溢价仅为 12 美元/年),而且我在自己的推荐标准中寻找免费的。仅使用带有密码管理器的低风险帐户是我现在也将采用的一种模式(一旦我找到我的 PM)。

2个回答

如果没有关于 Lastpass 如何运作的确切细节,就不可能对这个问题给出明确的答案。但是,有一些事情需要考虑,这可能会让您以更安全的方式使用该软件。

  1. 在实践中,您应该将所有外部设备(即那些您不拥有和控制的设备)视为潜在的敌对和不受信任的设备。不管 Lastpass 的内部运作有多安全,现实情况是,在某些时候,您需要输入您的主密码,该密码可能会被键盘记录器等获取。

    1. 当您使用 Lastpass 之类的产品时,您不会被锁定为始终使用该产品。lastpass 可以大大简化密码的管理,但您仍然可以手动输入密码。即使 Lastpass 自动生成密码,您也可以找出密码。仅仅因为您使用 Lastpass 并不意味着没有它就无法登录服务。

    2. 并非所有密码在威胁方面都是平等的。如今,我们需要记住/知道大量服务的密码。但是,所有这些密码的风险和敏感性并不相同。我有一些由密码管理器管理的凭据,但价值或风险较低。密码管理器用于简化这些密码的管理。如果有人要破解经理并获取密码,那对我来说并不重要。其他密码是高风险的,不使用密码管理器来管理这些网站是合理的决定,而是更愿意记住它们。

    3. 并非所有密码管理器都是平等的。一些密码管理器,如 Lastpass,提供基于 Web 的密码服务,您可以在其中登录网站并从您的保险库中检索密码。其他人,如 1password,使用加密的保险库,您倾向于将其存储在某种共享/映射驱动器上,例如保管箱。有些人会争辩说,这是一个更安全的解决方案,因为没有可以被黑客入侵的网站目标。哪个是更好的解决方案的问题取决于个人风险评估和典型用例。

就个人而言,我永远不会在我不信任的计算机上使用密码管理器。相反,我可能会在我的手机上使用 Lastpass,如果我需要使用外国/不受信任的设备,我会在手机上使用 Lastpass 查找密码,然后手动输入。但是,我不经常使用外国或不受信任的计算机,所以这对我有用。如果您经常使用外国/不受信任的系统,则此解决方案可能会带来不便。另一种解决方案可能是合适的,例如拥有一个可访问的远程主机,您可以使用某种远程桌面协议从外部设备访问该主机 - 将本地外部设备变成像哑终端一样工作。这完全取决于您的要求和威胁暴露程度

另请注意,在使用任何系统剪贴板或支持剪切和粘贴以从 Lastpass Web 登录获取密码并将其输入到我要访问的服务的登录时,我会非常小心。根据操作系统和操作系统版本,剪贴板存在重大的安全风险。像 metasploit 这样的产品有一些模块,这使得从用户剪贴板中提取数据变得相对简单。

我使用密码管理器的方法是仅将它们用于我需要的低价值/低风险凭证。我仍然需要记住多个密码,但比以前少得多,而且我喜欢它为我使用的低风险服务提供的便利。我不会将密码管理器用于银行等事务。我还对提供它的任何服务使用 2 因素身份验证。

要记住的关键点是,几乎任何提供更多便利的东西都会对安全性产生一些影响——通常是负面影响。诀窍在于获得正确的平衡,这将取决于个人情况。对我来说,使用密码管理器进行低风险服务提供了很多低风险的便利

使用 2 因素身份验证,并确保在完成后注销。这样,即使他们同时记录了密码和基于时间的身份验证码,最后一个在您注销时将无效(60 秒有效期),您将再次安全。