填写密码时不允许粘贴?这个设计看上去安全,其实不一定

36氪

编者按:你是否有在多个网站使用同一密码的习惯?不少网站都会禁止用户在密码输入框进行粘贴操作。不过,这篇来自英国国家电脑安全中心官方博文反而认为网站应该允许用户粘贴密码,一些密码管理类的软件(如 1password)比用户在不同网站使用同一个密码更安全。你是否认同这篇文章中的观点呢?

经常有网友发推特艾特我们,NCSC是那种阻拦你在密码输入框中进行粘贴操作的网站之一。为什么网站要这么做?这场辩论已经展开——大多数评论人士都愤怒地表示,这是一个十分令人恼火的设计。

那么,为什么大多数网站都要这么做呢?通常网站不会给出任何理由,但如果非得要给出理由,其中一个必然是“安全”。NCSC不认为这个理由很充分。我们认为不允许用户进行密码粘贴(stopping password pasting,简称SPP)是一种降低安全性的坏事情。我们认为,网站应该允许客户将他们的密码粘贴到输入框中,这样可以提高安全性。

没有人知道SPP是从哪里来的

SPP来自哪里,这一直是个谜。没有人能指出一篇论文,一个规则,一个RFC(技术标准文档,用来计划互联网应该如何工作)或者其他任何启动SPP的东西。如果你知道其中一个,请在评论区告知我们。

我们相信这是一种所谓“最佳实践”的想法,它基于朴素的常识,可能在过去是有意义的。不过,考虑到今天的大环境,不允许用户粘贴密码的规定已经过时了。

那么为什么密码粘贴是一件好事呢?

密码粘贴提高安全性的主要原因是它有助于减少密码过载,这是我们在密码指南中所涉及的内容。允许粘贴密码使web表单与密码管理器能够更好地工作。密码管理器是为您选择、存储和输入密码的软件(或服务)。

密码管理器非常有用,因为它们:

免责声明:尽管密码管理器可以提供比密码记录文档更好的服务和保护,但它们并不是解决所有密码问题的灵丹妙药。我们将在未来的博客文章中更多地讨论在选择密码管理器时要考虑的事项。

想象一下,如果你没有密码管理器,或者你的电脑上没有一个受保护的密码文档,你几乎不可能记住所有的密码。那么,你就得做一些不太好的事情:

这就是为什么我们认为SPP不好,而允许密码粘贴很好。利大于弊。

为什么禁止密码粘贴(SPP)是错误的?

还有其他一些理由可以证明SPP是正确的。这些理由中一些具有误导性的事实听起来很有说服力——下面我要指出他们的错误。

如果允许密码粘贴,则表示恶意软件或web页面可以在密码框中反复粘贴密码进行猜测,直到它们破坏您的密码。

这是正确的,但也确实有其他方法可以进行猜测(例如通过API),这对于攻击者来说是很容易设置的,并且在猜测方面要快得多。使用复制和粘贴进行暴力攻击的风险非常小。

原则上,你回忆的次数越多,下一次就越容易。

然而,在现实世界中,人们被要求为他们很少使用的东西设置密码。这意味着没有足够的时间去练习,因此几乎没有机会去记忆。这整个理由基于你的假设:首先,用户应该总是尝试记住他们的密码——然而这并不总是正确的。

人们也被要求为他们经常使用的东西设置密码,这样他们就不会忘记密码,即使他们想(如果你被迫经常更换密码,这很不方便)。他们要一次又一次输入这令人恼火的密码。密码管理器是这些人依赖的一根拐杖,可是SPP将它踢开了。

当任何人复制粘贴时,复制的内容被保存在一个“剪贴板”中,在那里它可以被粘贴很多次,就像他们想要的那样。任何安装在计算机上的软件(或任何操作它的人)都可以访问剪贴板,可以看到里面有什么。可以通过拷贝任何其他东西来破坏原有的内容。

密码管理器将你的密码复制到剪贴板上,这样他们就可以把密码粘贴到网站的密码框中。这个过程中可能存在的风险是,攻击者(或恶意软件)会在你的密码被从剪贴板中删除之前窃取你的密码。

如果你要手动复制和粘贴你电脑上的一个文档的密码,剪贴板中的密码可能会更麻烦。你可能忘记清除剪贴板。然而,这并不是很大的风险,因为——

与其停止密码粘贴,不如保护您的计算机,避免在最开始感染病毒,并遵循我们的企业IT安全指南。并且,记得安装软件更新——它们好比是电脑的维生素C。这是保护你的电脑最好的方法之一。

当然,不要只听我们的一面之词

你不必全然相信我们的话,也可以认为阻止密码粘贴是好的。你可以参考Troy Hunt的博客,或者是这篇文章

通过支持用户来提高安全性。让他们粘贴密码吧。

作者:Sacha B,社会技术安全研究员

原文链接:https://www.ncsc.gov.uk/blog-post/let-them-paste-passwords

编译组出品。编辑:郝鹏程