黑客破译密码原理解析(非常详细)零基础入门到精通,收藏这一篇就够了

517 篇文章 10 订阅
432 篇文章 4 订阅

使用现代显卡或云服务,几乎十分之六的密码可以在不到一个小时的时间内破解。它只需要几美元和一些空闲时间。这如何实现以及如何应对是我们研究的主题。

尽管每年5月第一个星期四的世界密码日已经过去,但我们(我们希望您)对密码安全的迷恋仍在继续。我们没有分析为实验室研究创建的人工“试管”密码,而是留在现实世界中——检查在暗网上泄露的实际密码。结果令人震惊:这些密码中有59%可以在不到一个小时的时间内被破解 - 而所需要的只是现代显卡和一些专业知识。

今天的帖子解释了黑客如何破解密码以及如何应对密码(剧透警告:使用可靠的保护并自动检查您的密码是否泄漏)。

破解密码的常用方法

首先,让我们澄清一下“破解密码”的含义。我们谈论的是破解密码的哈希值——代表密码的唯一字符序列。公司通常通过以下三种方式之一存储用户密码:

• 这是最简单、最清晰的方法:如果用户的密码是 qwerty12345,则它将作为 qwerty12345 存储在公司服务器上。如果发生数据泄露,黑客只需输入带有相应用户名的密码即可登录。当然,如果没有双因素身份验证 (2FA),但即便如此,网络犯罪分子有时也可以拦截一次性密码。

• 此方法利用 MD5 和 SHA-1 等哈希算法将每个密码转换为固定长度字符串形式的唯一哈希值,并存储在服务器上。当用户输入密码时,系统会将输入的字符序列转换为哈希值,并将其与存储在服务器上的字符进行比较。如果匹配,则密码正确。下面是一个示例:如果您的密码是相同的 qwerty12345,然后“翻译”为 SHA-1,则如下所示:4e17a448e043206801b95de317e07c839770c8b8。获取此哈希值的黑客需要将其解密回 qwerty12345(这是“密码破解”部分),例如,使用彩虹表。然后,破解的密码不仅可用于访问受感染的服务,还可用于访问重复使用密码的其他帐户。

• 用盐散列。与外卖中的美味佳肴无关,此方法在散列之前将随机数据序列(称为盐)添加到每个密码中。盐可以是静态的,也可以是动态生成的。密码 + 盐序列被输入到算法中,这会产生不同的哈希值。因此,预先计算的彩虹表对黑客来说毫无用处。使用这种存储密码的方法使它们更难破解。

在我们的研究中,我们建立了一个包含 1.93 亿个明文泄露密码的数据库。我们从哪里得到它们?你必须知道去哪里看。我们在暗网上找到了它们,这些“宝藏”通常是免费提供的。我们使用这个数据库来检查用户密码是否存在可能的泄漏——但请放心,我们不会存储甚至看不到任何密码。您可以在我们的卡巴斯基密码管理器中阅读更多关于密码库的内部结构的信息,以及我们如何在不知道您的密码的情况下将它们与泄露的密码进行匹配。

密码破解的成本

现代 GPU 是分析密码强度的最佳工具。例如,RTX 4090 与密码恢复工具 hashcat 配对,可实现每秒 1640 亿个哈希 (GH/s) 的加盐 MD5 哈希。

让我们想象一个 8 个字符的密码,同时使用拉丁字母(全部小写或全部大写)和数字(每个位置 36 个可能的字符)。可能的唯一组合数量为 2.8 万亿(通过将 36 提高到 8 的幂计算)。一个强大的 CPU 拥有每秒 6.7 GigaHashes (GH/s) 的处理能力,可以在 7 分钟内暴力破解这样的密码。但前面提到的 RTX 4090 只需 17 秒即可完成。

虽然这种高端GPU的成本略低于2000美元,但即使是无法获得GPU的攻击者也可以以每小时几美元的价格轻松租用计算能力。但是,如果他们一次租用十几个 RTX 4090 怎么办?这将提供足够的功能来轻松处理大规模哈希数据库泄漏。

59%的密码可在一小时内破解

我们使用暴力破解和智能猜测算法测试了密码强度。虽然蛮力会按顺序遍历所有可能的字符组合,直到找到匹配项,但智能猜测算法在密码数据集上进行训练,以计算各种字符组合的频率,并首先从最常见的组合中进行选择,然后从最稀有的组合中进行选择。您可以在我们关于Securelist的完整版研究中阅读有关所用算法的更多信息。

结果令人不安:在我们分析的1.93亿个真实世界密码中,有45%(即8700万个密码!)可以在不到一分钟的时间内被智能算法破解,59%可以在一小时内破解,67%在一个月内破解,只有23%的密码可以被认为是真正强大的密码 - 需要一年多的时间才能破解。

需要注意的是,破解数据库中的所有密码并不比破解一个密码花费更多的时间(!在每次迭代中,攻击者在计算下一个字符组合的哈希值后,检查通用数据库中是否存在相同的字符组合。如果是这样,则有问题的密码被标记为“破解”,之后算法会继续猜测其他密码。

为什么智能猜测算法如此有效

人类是可以预测的。我们很少选择真正随机的密码,与机器相比,我们生成密码的尝试显得苍白无力。我们依赖于常用的短语、日期、名称和模式——这正是智能破解算法旨在利用的。

此外,人脑是这样的,如果你让一个人样本在一到一百之间选择一个数字,大多数人会选择…同样的数字!YouTube 频道 Veritasium 调查了超过 200,000 人,发现最受欢迎的数字是 7、37、42、69、73 和 77。

Veritasium调查结果。来源youtube

即使在尝试随机字符串时,我们也倾向于使用键盘中间的键。在我们分析的所有密码中,大约有57%被发现包含字典单词或频繁的符号组合。令人担忧的是,这些密码中有51%可以在不到一分钟的时间内被破解,67%可以在一小时内破解,只有12%需要一年多的时间。但是,至少有几个密码仅由字典单词组成(可以在一分钟内破解)。有关我们遇到的密码模式的更多信息,请参阅 Securelist 帖子。

智能算法可以快速处理大多数包含字典序列的密码。它们甚至会捕获字符替换 - 因此写“pa$$word”而不是“password”或“@dmin”而不是“admin”不会使密码更强。使用流行词和数字序列同样有风险。在我们检查的 4% 的密码中,以下内容在某处出现:

  • 12345

  • 123456

  • love

  • 12345678

  • 123456789

  • admin

  • team

  • qwer

  • 54321

  • password

建议

我们实践研究的要点:

• 许多用户密码不够强;其中59%可以在一小时内破解。

• 在密码中使用有意义的单词、名称和标准字符序列可显著减少密码猜测时间。

• 最不安全的密码是完全由数字或仅由单词组成的密码。

为了确保您的帐户安全,请考虑以下简单建议:

• 使用 Kaspersky Password Manager 生成强密码。

• 如果您决定自己创建密码,请使用助记符密码,而不是有意义的单词组合、名称或字典序列。

• 切勿在不同站点之间重复使用密码,因为并非所有公司都能安全地存储用户数据。

• 切勿在浏览器中保存密码。

• 将您的密码安全地存储在密码管理器中,并为其创建防破解主密码。

• 使用密码检查器或直接在卡巴斯基密码管理器中检查密码的抗破解性。它将识别弱密码和重复密码,根据受感染的数据库检查所有密码,并在找到匹配项时提醒您。

• 利用卡巴斯基高级版在后台持续监控与您和家庭成员的手机或电子邮件地址关联的所有账户的数据泄露。

• 尽可能启用 2FA。顺便说一句,卡巴斯基密码管理器还允许您保存 2FA 令牌并生成一次性代码。

为了帮助大家更好的学习网络安全,我给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂这些资料!

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]


在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]
在这里插入图片描述

在这里插入图片描述

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

[2024最新CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享]

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值