计算机的用户处理能力不断增强 ,帮助用户更快地解决日益复杂的密码码问题。但副作用是强度,几年前还无法猜到的分析密码可以在2024年被黑客在几秒钟内轻松破解
。例如
,内被RTX 4090 GPU能够在17秒内猜出由相同大小写的猜出英文字母和数字组成的8个字符的密码,或者36个可组合字符。用户 卡巴斯基实验室对暴力攻击抵抗力的密码码研究发现 ,很大比例的免费模板强度密码(59%)可以在一小时内被破解 。 为了能够对用户进行身份验证 ,网站需要一种方法来存储登录密码对 ,内被并使用这些密码对来验证用户输入的猜出数据 。在大多数情况下,用户密码以哈希而非明文形式存储,密码码这样攻击者就无法在发生泄露时使用它们。强度为了防止在彩虹表的帮助下猜到密码
,密码存储时还会在哈希之前添加盐 。 虽然哈希本质上是不可逆的
,源码下载但是可以访问泄露数据库的攻击者可以尝试猜测密码
。他们的尝试次数是无限的 ,因为数据库本身没有任何防止暴力破解的保护机制。现成的密码猜测工具(如hashcat)也可以在网上轻松获取 。 卡巴斯基的研究调查了在各种暗网网站上发现的1.93亿个密码 ,并估计了使用暴力和各种高级算法(如字典攻击和/或常见字符组合枚举)从哈希中猜测密码所需的时间。高防服务器通过字典 ,我们可以了解密码中常用的字符组合列表。它们包括但不限于真正的英语单词 。 暴力破解方法仍然是最简单
、最直接的方法之一:计算机尝试所有可能的密码选项,直至找到有效的为止。但这并非一种“放之四海而皆准”的方法
:枚举会忽略字典密码
,而且在猜测较长的密码时明显比猜测较短的源码库密码更差。 卡巴斯基研究人员分析了应用于所审查数据库的暴力破解速度 。为了清楚起见,研究人员将示例中的密码根据其包含的字符类型划分为不同模式。 使用暴力破解密码所需的时间取决于字符类型的长度和数量。表中的结果是模板下载针对RTX 4090 GPU和加盐MD5哈希算法计算的。此配置中的枚举速度是每秒1640亿个哈希值 。表格中的百分比为四舍五入。 密码模式 该类型密码在数据集中的份额,% 暴力破解密码的份额(按模式 ,%) 最长密码长度(按破解时间) <60s 60s-60min 60min-24h 24h-30d 30d-365d >365d 24h-30d 30d-365d >365d aA0! 28 0.2 0.4 5 0 9 85 - 0 10 a0 26 28 13 15 11 10 24 11 12 13 aA0 24 3 16 11 0 15 55 - 10 11 a0! 7 2 9 0 14 15 59 9 10 11 0 6 94 4 2 0 0 0 - - - a 6 45 13 10 9 6 17 12 13 14 aA 2 15 22 11 14 0 38 10 - 11 a! 1 6 9 11 0 11 62 - 10 11 aA! 0.7 3 2 12 10 0 73 9 - 10 0! 0.5 10 27 0 18 13 32 10 11 12 ! 0.006 50 9 10 5 6 19 11 12 13 最流行的密码类型(28%)包括小写字母和大写字母 、特殊字符和数字。在所审查的样本中
,云计算大多数密码都很难被暴力破解
。大约5%的密码可以在一天内被猜出
,但85%的密码需要一年以上才能破解
。破解时间取决于密码的长度 :9个字符的密码可以在一年内被猜出
,但包含10个字符的密码则需要一年多 。 最难抵御暴力破解的密码是那些仅由字母
、数字或特殊字符组成的密码 。样本中这样的密码占比14%。它们中的大多数可以在不到一天的时间内破解
。 如上所述
,暴力破解是一种次优密码猜测算法。密码通常由特定的字符组合组成:单词 、姓名、日期
、序列(“12345”或“qwerty”)。如果让暴力算法考虑下述内容将可以加速这一过程 : 此外,对于每个密码
,我们计算了一个最佳值:在所使用的所有算法中最佳的破解时间。这是一个假设的理想情况 。为了实现它 ,您需要“猜测”一个合适的算法,或者在自己的GPU上同时运行上述每个算法。 下面是通过在RTX 4090 GPU上运行加盐MD5算法来测量密码强度的结果。 破解时间 被暴力破解密码的百分比 ngram_seq 3gram_seq unogram ngram_opt 3gram_opt zxcvbn bruteforce 最佳 <60s 41% 29% 12% 23% 10% 27% 10% 45% 60s-60min 14% 16% 12% 15% 12% 15% 10% 14% 60min-24h 9% 11% 12% 11% 12% 9% 6% 8% 24h-30d 7% 9% 11% 10% 11% 9% 9% 6% 30d-365d 4% 5% 7% 6% 8% 6% 10% 4% >365d 25% 30% 47% 35% 47% 35% 54% 23% 结果显示,当使用最有效的算法时 ,所审查的样本中有45%的密码可以在一分钟内猜出,59%可以在一小时内猜出 ,73%可以在一个月内猜出。只有23%的密码需要一年以上才能破解 。 重要的是
,猜测数据库中的所有密码所花费的时间几乎与猜测其中一个密码所花费的时间一样多
。在攻击过程中
,黑客会检查数据库中当前迭代中获得的哈希值 。如果哈希值存在于数据库中,那么该密码将被标记为已破解,算法将继续处理其他密码。 为了找到最能抵御黑客攻击的密码模式 ,研究人员计算了一组扩展标准的最佳值 。为此,研究人员创建了一个包含四个或更多字符的常用组合的字典,并将它们添加到密码模式列表中。 密码模式 该类型密码在数据集中的份额
,% 字典攻击破解密码的份额(按模式 ,%) 最长密码长度(按破解时间) <60s 60s-60min 60min-24h 24h-30d 30d-365d >365d 24h-30d 30d-365d >365d dict_a0 17 63 15 8 5 3 7 10 11 12 aA0! 14 5 6 5 5 3 76 6 7 8 dict_aA0 14 51 17 10 7 4 11 9 10 11 dict_aA0! 14 34 18 12 10 6 20 7 8 8 a0 10 59 22 6 6 1.8 6 10 11 12 aA0 10 19 13 13 6 7 42 9 10 11 0 6 92 5 1.5 1.3 0 0 15 - - dict_a0! 5 44 16 10 8 5 17 9 9 10 dict_a 4 69 12 6 4 2 6 11 12 13 a0! 2 31 19 13 9 5 23 9 9 10 a 1.2 76 7 6 3 3 6 11 12 13 dict_aA 1.2 56 15 8 6 3 11 9 10 10 dict_a! 0.8 38 16 10 8 5 23 8 9 10 aA 0.7 26 10 28 7 2 27 9 10 10 dict_aA! 0.5 31 17 11 10 6 26 8 9 9 0! 0.4 53 15 8 7 5 13 9 10 11 dict_only 0.2 99.99 0.01 0.0002 0.0002 0 0 18 - - dict_0 0.2 89 6 2 2 0 0 15 - - aA! 0.2 11 8 10 16 3 52 8 9 9 a! 0.1 35 16 10 9 5 25 8 9 10 dict_0! 0.06 52 13 7 6 4 17 9 10 11 ! 0.006 50 10 6 8 4 20 8 9 10 结果显示
,大多数(57%)被审查的密码包含字典单词
,这大大降低了密码的强度。其中一半可以在不到一分钟的时间内破解,67%可以在一小时内破解 。只有12%的字典密码足够强,需要一年以上的时间才能猜到
。即使使用了所有推荐的字符类型(大写字母 、小写字母
、数字和特殊字符),也只有20%的密码能抵抗暴力破解。 研究发现最流行的字典序列包括以下几种
: 非字典密码占样本的43% 。有些为弱密码,例如由相同大小写的字母和数字组成(10%)或仅由数字组成(6%)。然而,添加所有推荐的字符类型(a0 !模式)使得76%的密码足够强大。 现代GPU能够以惊人的速度破解用户密码。最简单的暴力破解算法可以在不到一天的时间内破解任何八个字符以内的密码
。智能黑客算法甚至可以快速猜出更长的密码。这项研究让我们对密码强度得出了以下结论
: 为了保护用户帐户免受黑客攻击
,建议遵循如下建议 : 原文链接
:https://securelist.com/password-brute-force-time/112984/