文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

用户密码强度分析:59%的密码可以在一小时内被猜出

2024-11-29 20:13

关注

卡巴斯基实验室对暴力攻击抵抗力的研究发现,很大比例的密码(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
_corr

3gram_opt
_corr

zxcvbn
_corr

bruteforce
_corr

最佳

<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

8

6

10

11

12

aA0

10

19

13

13

6

7

42

9

10

11

0

6

92

5

5

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

2

76

7

6

3

3

6

11

12

13

dict_aA

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

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/

来源:FreeBuf内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯