在线文章提到了强大密码的重要性,并建议黑客工具允许坏人每秒尝试数百万个密码。我想知道为什么OSes和网站等没有节流尝试。也就是说,如果发生了3次糟糕的尝试,为什么不至少在接下来的10分钟内拒绝更多的尝试?难道没有低水平的方法可以安全地关闭“每秒数百万次”的闸门吗?
发布于 2013-12-16 20:50:52
设计良好的操作系统和网站确实会抑制登录尝试,正如您在示例中所描述的那样。
然而,每秒也有数以百万/数十亿计的猜测是可能的--但只能针对离线的密码“简单散列”。Ars有你可能读过的丹·古丁写的一篇很好的文章。虽然它没有关注,但是很明显,这些都是针对MD5哈希列表的“离线”攻击。当然,MD5不是为保护密码而设计的。
实际上,有许多方法可以降低尝试猜测的速度:
简而言之,如果来自设计良好的登录系统的密码数据库被破坏,并且获得了咸散列,则与未加盐的MD5密码数据库相比,使用蛮力的风险要低得多。
发布于 2013-12-16 20:54:32
你说的是网络攻击,有人通过网站输入密码。你可以用你描述的方法来减缓速度,尽管这并不像你想的那么简单。
当你读到破解密码的时候,通常你说的是离线攻击,这就是你计算哈希的原因。想想有人可以读取您所有的密码哈希(例如SQL-注入,或从丢弃的备份.)。然后攻击者可以像他的硬件一样快速地用力,例如使用GPU来计算散列。即使这样,您也可以减缓攻击速度,这就是为什么现在您使用像BCrypt或PBKDF2这样的慢密钥派生函数。该算法允许定义一个成本因子,它定义了所执行的迭代次数,因此您可以控制计算单个散列所用的时间。
例如:如果您可以计算每秒8个千兆 MD5散列,则可以在2秒内计算多达6位的密码组合。如果你甚至需要1毫秒每散列,你已经需要8个月。
发布于 2013-12-16 20:44:36
是的,这个控件在许多系统中都是可用的--只是在您阅读的文章中没有提到它。许多系统完全按照您的建议执行。标准办法包括:
控件的形式与以下内容有很大关系:
https://security.stackexchange.com/questions/47103
复制相似问题