破解4000个阿什利·麦迪逊密码的教训

  • 栏目:规律看法 时间:2018-06-21

进一步阅读25 - GPU集群破解& lt;6小时当黑客上周发布了3600多万阿什利·麦迪逊账户的密码数据时,大联盟破解专家杰瑞米·高斯尼并没有费心在他专为破解密码而构建的庞大计算机群中运行这些数据。原因是:密码受到bcrypt的保护,bcrypt是一种加密哈希算法,Gosney非常强大,他估计使用高度专门化的计算机集群来检查前10,000个最常用密码的转储需要数年时间。< / p >;于是同行的安全专家狄恩·皮尔斯介入填补真空,他的经验证实了高斯尼的评估。他的项目的长短在于,在使用专门设计用于执行计算密集型加密操作的速度适中的服务器进行了五天不间断的自动猜测之后,他只破译了4000个底层明文密码。毫不奇怪,从阿什利·麦迪逊表的前600万个条目中提取的Pierce密码看起来和从几乎任何数据泄露中提取的密码一样弱。下面是在非常有限的实验中破解的前20个密码和选择每个密码的用户数:

密码用户数s125678202 password 1051234599qwerty32127357831 shley28baseball27 ABC 76996868101121 footallyoum 20 adison 19 superman 19 hockey 78578919 hunter 19 hockeyllller 19 hockeypint 19 hocker 19 hockenter 19 harllll我们过一会儿再谈。但首先,我们发现了关于前20个密码的一些观察结果。首先,它们从一开始就存储在阿什利·麦迪逊数据库中的600万个散列。根据列表的组织方式,这可能意味着它们属于网站运行14年来创建的最早600万个帐户。过去几年可能创建的最后一百万个条目的密码可能更强。

另一个要点:对于单词列表,Pierce使用了2009年对游戏网站RockYou进行的开创性黑客攻击中的密码,泄露了3200万个明文密码,其中1430万个是独一无二的。虽然列表很全面,但破解专家通常会将更大、更专业的列表与编程规则结合起来,通过用 @ 字符替换字母 a 来大大扩展列表的覆盖范围。如果皮尔斯使用这些更复杂的破解方法之一,前20名几乎肯定会看起来与众不同。

Pierce是如何做到这一点的更多细节,它进一步强调了破解如此小比例的垃圾所需要的努力。在下载了上周发布的10千兆字节压缩文件Ashley Madison黑客之后,他从其中一个MySQL文件中提取了散列密码,留下了一个2.1 GB的文件,每行3600万行,每一行都由密码保护的密码组成。然后,他将文件移动到运行4张AMD Radeon R9 290图形卡的服务器上,以及用于挖掘比特币和其他类型加密货币的拉皮软件上。为了调整超快机器,他还安装了最新版本的oclHashcat,它自动执行GPU上的许多密码破解任务。令他惊讶和烦恼的是,他的电脑返回了一条内存不足的消息,拒绝继续。这个错误很可能是因为他的破解设备只有一千兆字节的计算机内存。为了解决这个错误,皮尔斯最终选择了列表中的前六百万个哈希。五天之后,他只破解了最弱的4,007个密码,仅占他池中600万个密码的0.0668 %。

作为一个快速提醒,世界各地的安全专家几乎一致认为密码绝不能以明文形式存储。相反,应该使用单向密码函数将它们转换成一长串字母和数字,称为哈希。这些算法应该为每个唯一明文输入生成唯一散列,一旦生成,就不可能用数学方法将它们转换回来。散列的思想类似于房屋和建筑物的火灾保险。它不是安全实践的替代品,但是当事情出错时,它可以证明是非常宝贵的。

进一步阅读圣经和YouTube正在为密码破解的下一个前沿火上浇油,这些年来,密码从未变弱,破解也从未变强,即使密码按照行业标准惯例被哈希处理,最终用户选择长的、随机出现的密码或具有数十甚至数百个字符的密码短语。简而言之,破解者通过利用大多数最终用户选择密码的方式的可预测性使用基于GPU的计算机,在某些情况下每秒可以进行数十亿次猜测,直到做出正确的猜测。

工程师应对这一密码军备竞赛的方法之一是采用一种称为bcrypt的功能,这种功能在将明文信息转换为哈希时,按设计会消耗大量的计算能力和内存。它通过多次迭代Blowfish密码并使用要求严格的密钥设置来实现这一点。阿什利·麦迪逊使用的密码被设置为12,也就是说每个密码通过212轮,即4,096轮。此外,bcrypt会自动将称为加密盐的唯一数据追加到每个明文密码中。Gosney告诉Ars说:

我们推荐bcrypt的最大原因之一是它具有小但频繁的伪随机存储器访问模式,因此能够抵抗加速。通常我们习惯于看到算法在GPU上运行速度比CPU快100倍以上,但是bcrypt在GPU上运行速度比CPU慢100倍以上。

作为这一切的结果,bcrypt对试图破解阿什利·麦迪逊垃圾场的任何人提出了巨大的要求,至少有两个原因。首先,4,096次散列迭代需要大量的计算能力。在皮尔斯的案例中,bcrypt将他的四GPU破解装备的速度限制在每秒156次猜测。其次,因为bcrypt散列是咸的,他的装备必须一次猜测每个散列的明文,而不是全部一致。皮尔斯写道:

是的,没错,每秒156个哈希。对于习惯破解MD5密码的人来说,这看起来相当令人失望,但它是加密的,所以我会尽我所能。

当他通过了4000分后,它的时间表就放弃了。他估计,要在Pierce有限的池中运行所有600万个散列来对抗RockYou密码,将需要花费高达19,493年的时间。Ashley Madison dump中总共有3600万个散列密码,完成这项工作需要116,958年。即使Gosney创办的sigitta HPC出售了一个高度专业化的密码破解集群,结果也会有所改善,但不足以证明在电力、设备和工程时间上的投资是合理的。

与速度非常慢且计算要求非常高的bcrypt不同,MD5、SHA1和大量其他哈希算法被设计成对轻量级硬件施加最小的压力。比如说,这对路由器制造商有好处,对饼干更好。例如,如果阿什利·麦迪逊使用MD5,Pierce s server可以每秒完成1100万次猜测,这一速度使他能够在3.7年内测试所有3600万个密码散列(如果它们被加盐),如果它们未被加盐,只需三秒钟(许多站点仍然不加盐散列)。如果骗子约会网站使用SHA1,Pierce s server可以每秒进行700万次猜测,这一速度几乎需要6年的时间才能在没有盐和5秒的情况下完成整个列表。(时间估计是基于使用RockYou列表。如果使用不同的列表或裂解方法,所需的时间会有所不同。当然,像Gosney这样的超快钻机在这些时间的一小部分就能完成工作。)

本练习的主要教训是,单向加密函数在保护密码方面发挥着至关重要的作用。而且,虽然没有任何方法可以替代分层安全方法来首先防止违规,但是当黑客攻击发生时,诸如bcrypt或pbkd F2这样的哈希算法会产生很大的不同。

但是Pierce的实验也为大部分人提供了警示,他们选择了 p @ $ $ w0rd 、 1234567 ,以及其他弱密码来保护他们有价值的在线资产。bcrypt可能会大大减缓大名单被破解的时间,但当破解者瞄准少数几个散列时,比如说,所有散列都与海军. org或白宫. gov等单个电子邮件域相关联时,它的好处就会减少。当这些目标用户选择弱密码时,值会进一步恶化。

在这种大小的转储中,密码仍然会疯狂地弹出,因为人们总是使用弱密码 Pierce告诉Ars。即使有好的哈希+ salt,糟糕的(或不存在的)密码策略也会使用户面临风险。

Post已更新,以更正破解哈希的百分比,并澄清bcrypt的工作方式。

更多阅读

op - ed 进一步遏制智能手机盗窃的新工具

规律看法 06-17
MeredithAttwellBaker是移动电话行业贸易集团CTIA的总裁兼首席执行官。进一步阅读加州法案,要求智能手机上的kill-switch成为法律,无论你住在纽约、亚特兰......
查看全文

英语挂断你的VPN iPlayer不再适合你了

规律看法 06-17
年龄验证系统可能是托利党政府最近一直关注的问题,但英国广播公司(BBC)尚未实施一项打击逃避牌照费者的制度。相反,它将迫在眉睫地迫使英国人在......
查看全文

企业硬盘速度更快,功耗更高,但可靠性更高吗?

规律看法 06-17
低成本云备份和存储提供商backlaze公布了2017年第一季度的驱动器可靠性数字。backlaze的大部分生命周期都专注于高密度和低成本,公司在存储服务中使用......
查看全文
返回全部新闻

Copyright © 2017 pk10看走势图教程 版权所有