首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >记录被拒绝的密码是常见的做法吗?

记录被拒绝的密码是常见的做法吗?
EN

Security用户
提问于 2012-07-04 22:59:38
回答 5查看 15.2K关注 0票数 63

虽然为每个目的选择唯一的密码是一个伟大的想法,但在实践中,这种情况很少发生。因此,许多人从容易记住的个人密码池中选择密码。在对不经常使用的系统进行身份验证时,很可能会顺序尝试从这种池中获取的许多密码。或者,如果输入错误,失败的密码非常接近实际密码。

由于几乎没有人描述有效的密码策略,包括如何处理被拒绝的密码,人们是否应该开始假设这些密码是在卖给出价最高者的数据库中收集的呢?

是否有执行指南?当候选密码被拒绝时,通常会发生什么情况?它们是被记录下来,立即丢弃,还是在垃圾收集之前一直呆在那里?失败的密码处理过程是否属于任何已审核控件的一部分?对于如何处理有效的密码,似乎有许多实现要求和建议,但对于拒绝的密码值则不明确。

编辑

我将尝试在这里列出记录失败的登录安全凭据的各种实现,以便了解这个过程有多广泛:

内容管理系统:

Joomla通过登录失败日志插件

这个小插件收集了你的Joomla网站管理员每次登录失败的日志,并向网站的超级管理员发送一封电子邮件,上面有用户名、密码、ip地址和错误。

KPlaylist 1.3和1.4 -一个免费的PHP系统,使您的音乐收集可通过互联网。

是在apache错误日志中记录失败登录尝试的用户名和密码。

Drupal 5.19之前的X和6.13版本之前的Drupal 6.x.

当匿名用户由于输入用户名或密码错误而无法登录,并且他所在的页面包含可排序表时,表上的链接中包含(不正确的)用户名和密码。如果用户访问这些链接,则密码可能会通过HTTP引用程序泄漏到外部站点。

独立软件

Symantec Client Security 3.1和SAV CE 10.1附带的Reporting

尝试登录失败后,可能会泄露Symantec Reporting的管理员密码。

Linux:

OpenSSH通过修改的auth-passwd.c;使用PAM通过重载pam_sm_authenticate函数

编辑#2

大家似乎已达成共识,而记录密码或密码针失效则被视为严重/主要的保安风险,但据我所知,以下标准并无提供任何指引、经审核的程序或管制措施,以具体处理该风险:

  • PCI-DSS:8.4中提到的密码过程。和8.5。(失败的密码仅在传输期间受到保护;验证后不考虑密码,因此不需要进行保护)
  • FIPS-140-2:在4.3中解决的身份验证(失败身份验证数据的生命周期仅部分解决)
EN

回答 5

Security用户

回答已采纳

发布于 2012-07-05 00:19:50

记录失败密码尝试(明文或其他)的值似乎是一种安全反模式。我从来没有见过这样的web应用程序,我也不知道有任何默认的系统服务,比如SSH也会这样做。正如下面@tylerl所指出的,大多数系统只是记录有关访问尝试的元信息(例如用户名、时间、可能的IP地址等)。

为什么这应该是一个安全反模式

无意中,我可以想到三个原因,为什么记录失败的密码尝试的值是个坏主意:

1.用户键入

人们错误输入一个或两个字符的密码是非常普遍的。检查失败尝试的日志文件将使其中的许多很容易找到,特别是如果您可以将一系列失败的尝试与成功的auth进行对比。

2.猜测和检查

很多人有两个或三个密码,他们循环通过所有的东西。因此,当他们忘记了他们在给定站点上使用的密码时,他们只需循环所有密码,直到找到匹配的密码。这将使得在其他网站上黑他们的账户变得微不足道。

3.日志膨胀

存储失败的密码对今天生产的绝大多数身份验证服务没有任何用处。虽然可能有一些边缘情况,但对于大多数人来说,存储这些数据只是在浪费磁盘空间。

关于相关立法/标准的

我不知道任何标准(PCI、HIPAA等)。这具体涉及存储失败的登录尝试的程序,但我认为,鉴于上述事实,可以提出一个很好的法律论据,说明为什么同样适用于存储密码的标准也应该适用于失败的密码尝试。换句话说,您可以提出一个法律论点,即一个失败的密码仍然是一个绝对的密码,因此它也要遵循同样的标准。

虽然我当然不是律师,但我不想让法官决定我是疏忽还是违反行业标准,因为失败的密码被储存在明文中,消费者也因此受到了影响。我认为这不会以一个有利的决定而结束。

我同意OP的观点,即对于不同的标准机构来说,具体地解决这个问题可能是有用的(如果他们还没有)。为此,我的建议是创建一个完全不存储失败密码尝试值的遵从性标准。

票数 72
EN

Security用户

发布于 2012-07-05 05:03:03

任何应用程序都没有记录明文密码的合法目的,特别是对于不正确的登录。它可能是偶然登录的--我偶然地查看了auth.log的其他用途,并且看到一个用户意外地在登录字段中输入了他们的密码(我确实记录了登录字段以查看哪些帐户试图登录)-但是我通知了用户,他们更改了他们的密码。

另一方面,作为一个用户,保守的假设是,您使用的每个随机应用程序都会记录每个错误尝试的密码。这就是为什么有一个小(三个)随机密码你循环,而每个网站的唯一密码管理在一个加密密码列表(可能使用像keepass这样的工具)是不好的。

在这篇文章中,businessinsider.com指控马克·扎克伯格( Mark )利用thefacebook.com (facebook的早期版本)的登录/密码组合日志(甚至来自不正确的条目)侵入调查他的哈佛深红记者的电子邮件账户。来自每日邮件:

然而,在进一步的声明出现后,扎克伯格显然开始担心报纸会对他进行报道。“商业内幕”声称,他随后告诉了一位朋友,他是如何黑入深红员工的账户的。据称,他告诉这位朋友,他用TheFacebook.com搜索那些自称是深红员工的成员。然后,据称,他检查了一份登录失败的报告,以确定是否有任何Crimson成员向TheFacebook.com输入了不正确的密码。

还有一些相关的xkcd (假设邪恶帐户也记录了尝试密码以提高其成功率)。

票数 17
EN

Security用户

发布于 2012-07-05 03:22:21

记录身份验证尝试失败以及所针对的用户这一事实并不少见。这在法医疑难解答中非常有用。从安全的角度来看,记录被拒绝的密码是非常罕见和不负责任的。这些信息没有任何用处,可以用来对付你。

编辑

希望您能够期望一家信誉良好、组织良好的公司不会出售您的密码信息,因为如果被发现,这对他们确实是有害的。但是为了你自己的安全,你应该随时准备好你给出的信息来对付你,因为它总是有可能的。对于那些你不能可靠地建立起声誉的组织来说,这是双重的。

票数 6
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/16824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档