前几天写过一篇文章是怎么绕过开机密码,但是在某些场合我们需要知道密码明文,因此这次讲讲怎么破解密码。


【资料图】

密码破解是一门艺术与科技相结合的学问,它需要冷静的思考,一定的知识,恰当的策略和合适的工具。接下来我会从windows密码破解、WiFi密码破解、安卓手机锁屏密码破解等若干方面来介绍,今天就先谈谈Windows密码破解。

为了破解密码你应该先获取密码在windows中储存的位置,这些hash储存在windows在SAM文件中,这个文件在C:WindowsSystem32config不过在windows启动时这个文件是不能被读取的。对于绝大多数系统而言,用户登录过程中密码验证环节都需要将用户输入的密码转换为哈希值,然后与系统中存储的对应用户哈希值进行比对。 所以密码破解的关键步骤之一就是找到系统中存储用户密码哈希值的文件。

不同版本的Windows的hash获取方法不一样。用到的工具有pwdump7.exe、GetHashes.exe、SAMInside.exe、LC5、Cain、Proactive Password Auditor、Ophcrack。接下来我就以pwdump7.exe为例在不同系统下给大家演示一下。首先假设系统已正常登录,若没有登录,我们需要在此电脑上挂载其他系统(PE或者Linux等等),将config目录下的sam和system文件复制出来,然后导入到SAMInside.exe中即可获取hash值。有人可能会想系统没有登录而且也没有办法挂载其他系统怎么办,我只想说既然这样,那这台电脑就不是你的了,你就不要想做坏事了,当然方法还是有的,自行搜索,不在本文讨论范围之内。

WIN7系统下获取管理员hash值

XP系统下获取管理员的hash值

Windows2003server系统下管理员的hash值

现在获取到hash值后就是破解了,常见的破解方法有暴力破解,字典攻击,彩虹表攻击等等方法。我们使用hashcat这款软件破解hash值,目前最新版本是3.5.更新日期是2017.4.5,大家可以自行下载。下图是我在WIN7系统下的测试,使用的是掩码式的暴力破解。

win7系统下暴力破解

我查了一下报错,貌似是系统或者驱动问题,我最后在本机上测试的,我本机是win10系统,测试结果如下图所示:

win10系统下暴力破解

从图上可以看出,我的密码是123456789,用时11.98ms,速度还是很快的。当然很大一部分原因在于我知道密码的位数和密码组成分类。如果不知道的话,暴力破解只能试试位数比较少的密码了。这时我们可以选择使用字典攻击,当然结果也取决于字典够不够全了。这两种速度都比较慢,如果想要加快速度的话,可以将hash值放到网上去破解,当然很多都是付费的。

网上破解hash值

如果网上无法破解或者不想付费,又想提高破解速度就去下载彩虹表的,据说可以破解大部分密码,有兴趣的可以自行测试。

如果电脑以管理员登录后,你可以接触到电脑还有一种可以直接获取到密码原文的方法,那就是使用mimikatz这款软件。双击运行后,我们需要执行两条指令

第一条:privilege::debug //提升权限

注意,如果返回的不是‘20’ OK ,有可能就是权限不足,此时将无法获取到密码。

第二条:sekurlsa::logonpasswords //抓取密码

win7系统下直接获取密码原文

从图上可知我们直接得到了密码明文123456789,不用再去解密hash值了。目前这款软件还在一直更新,最新版是2.1.1-20170409,源码开放,托管在github上,有兴趣的自行研究。

注:以上方法在win7及以下系统实测,可正常运行。对于win8以上系统,如果使用微软账号登录后,系统管理员账号将和微软账号绑定,此文中介绍的方法将失效。若没有使用微软账号登录,不确定是否可行,大家自行测试。

关键词: