Rainbow Table密码攻击-这是什么,以及如何保护自己免受攻击

彩虹表只是当今网络犯罪分子的众多强大工具之一。尽管Rainbow table密码攻击有其局限性,但它确实为黑客提供了从受保护程度不够的系统中有效窃取密码的机会。

Rainbow Table密码攻击如何起作用?

为了了解Rainbow表的工作方式,您需要了解哈希密码的工作方式。通常,计算机系统中的密码不会直接存储为纯文本字符串。这代表了一种容易被利用的安全风险,这对开发人员来说是太大的风险-这就是为什么使用加密对密码进行哈希处理的原因。这意味着您输入的用于验证用户身份的密码字符串会在您的一端加密为哈希,但是由于哈希是一种单向函数,因此无法在另一端对其进行解密以在另一端生成密码。实际上,无论何时用户输入密码,密码都会转换为哈希值,并将该哈希值与另一端已存储的哈希值进行比较。这些值的匹配实际上是对用户进行身份验证的依据。

彩虹表是一个庞大的数据存储库,它不仅用于攻击密码本身,而且还用于攻击哈希提供的加密安全性的方法。实际上,它是一个由大量纯文本密码和与每个密码相对应的哈希值组成的库。黑客有效地将用户密码的哈希值与数据库中所有现有哈希值进行比较。这可以快速显示出什么明文密码与特定哈希相关。此外,一个以上的文本可以产生相同的哈希值-这对于网络犯罪分子来说已经足够了,因为他们实际上不需要知道真实的密码,验证身份访问的任何符号组合都可以。

彩虹袭击的细节

Rainbow表相对于其他破解密码的方法(例如强行破解)具有明显的优势。对于所有的网络犯罪分子来说,执行哈希功能都不是问题,因为所有内容都经过预先计算,并且包含其所需所有信息的数据库都可以在线获得。实际上,他们需要执行的只是在表上进行简单的搜索和比较操作。

但是,彩虹攻击并不是黑客的首选工具。它们确实有其局限性,例如存储使用它们所使用的表所需的大量存储空间-并且所讨论的表确实很大。包含所有可能想到的大多数符号的8种符号密码的哈希表的彩虹表的常规大小可以达到160 GB-并且,在表中包含更长密码所需要的存储量随着熵的每一位。

如何防止彩虹袭击?

除了遵循创建密码时的所有良好做法之外,几乎没有什么用户可以防止彩虹表密码攻击的受害者。另一方面,有关IT系统的开发人员可以使用盐技术轻松地防止彩虹表攻击。 Salt是随同纯文本一起传递到哈希函数的数据的随机位。这样可以确保每个密码都有一个唯一的生成的哈希,从而使彩虹表攻击无法进行。

March 24, 2020

发表评论