从hashcat 3.30开始,在虚拟机中运行hashcat经常会报错,提示GPU错误。这是由于从该版本开始,hashcat对于Intel CPU会自动检测Intel OpenCL运行时,即是否支持GPU破解。如果不支持,就会停止运行。为了便于实验,我们使用2.0版本的hashcat
安装:
wget https://hashcat.net/files/hashcat-2.00.7z
7z e hashcat-2.00.7z
./hashcat-cli64.bin -V
回显为2.0即可

首先需要提取windows密码的hash
新建一个账户进行测试
需要以管理员身份运行
在这里插入图片描述
上面的命令是创建了一个demo用户,密码为pass1234

启动Cain,以管理员身份运行
在这里插入图片描述
选中cracker选项卡,右键add to list
在这里插入图片描述
选中从本地系统导入hash,next即可

在这里插入图片描述在这里插入图片描述
这里需要注意的是,LM哈希的历史可以追溯到20世纪80年代,微软不再使用它们了。 Cain显示的LM哈希值只是虚拟填充值,不再包含任何有关真实密码的信息。
NT哈希是微软的“更安全”哈希,由Windows NT在1993年使用,并且从未以任何方式更新。接下里的破解也是针对NT哈希进行的
选中后将其导出
在这里插入图片描述
生成demo.lc文件
在这里插入图片描述
可以使用记事本打开
在这里插入图片描述
拿到hash后可以去搜索引擎找明文
在这里插入图片描述
这一串hash是如何生成的呢?

明文为pass1234,通过文本转16进制的网站转换后为
在这里插入图片描述
将得到的16进制转成unicode格式后在hashcalc中计算md4
在这里插入图片描述
由此得到了hash,可以和我们从cain中得到的比对,是完全一致的。

如果我们只是拿到hash,但是不知道类型的情况下,可以使用kali自带的hash-identifier识别
在这里插入图片描述
输入我们从win上拿到的hash即可
它会列出最可能的hash以及可能性极小的hash
在这里插入图片描述

知道了类型之后就可以使用hashcat
我们将NT Hash复制到kali中新建的一个文件命名为demo.hash
在这里插入图片描述
为了破解hash,需要足够强大的字典
Kali Linux包含来自RockYou的大约500,000个常用密码的列表。
在终端窗口中,执行以下命令以解压缩它们:
在这里插入图片描述
由于文件本身很大,我们可以使用head、tail、sed等方式有选择性的查看
在这里插入图片描述

5.3 实验任务三
接下来我们就使用这个字典配合hashcat来破解win的hash
在这里插入图片描述
-m 1000指破解windows NT Hash,-a 0指使用字典破解,接着指定输出文件、Hash文件、字典

结果很快就出来了
在这里插入图片描述
破解过程会显示“[s]tatus[p]ause [r]esume [b]ypass [q]uit =>”,键盘输入“s”显示破解状态,输入“p”暂停破解,输入“r”继续破解,输入“b”表示忽略破解,输入“q”表示退出

可以在输出文件demopass.txt查看
在这里插入图片描述
破解了,明文为pass1234正是我们创建用户时的密码。

除了hashcat意外,john the ripper也常用
同样新建一个demo.txt,里面输入从win下复制的hash
john的全部参数用法可以-h查看
在这里插入图片描述
可以
我们这里直接开始
在这里插入图片描述
我们在上面只指定了字典和hash文件
从回显中可以看出john判断出hash的类型为LM或NT,并建议我们加上format参数进行破解
在这里插入图片描述
加上format参数NT后可以看到破解后的明文pass1234
而指定format为LM则无法破解出正确的明文
在这里插入图片描述

彩蛋:
从上面破解win的hash的时候已经可以看出john的优点:
如果你不指定目标的hash类型它会给出判断并自动匹配
可以使用下面的命令查看john支持的所有散列类型
在这里插入图片描述

5.3.1. 练习
以下说法不是正确的是:【单选题】
【A】在NTLM认证中,NTLM响应分为NTLM v1,NTLMv2,NTLM session v2三种协议,不同协议使用相同同格式的Challenge和加密算法。
【B】hashcat支持的hash算法包括NetNTLMv1、NetNTLMv1+ESS、NetNTLMv2和NTLM。
【C】head 与 tail用来显示开头或结尾某个数量的文字区块
正确答案:A。

8 参考资源
1.jhon使用指导1:
https://countuponsecurity.files.wordpress.com/2016/09/jtr-cheat-sheet.pdf
2.John使用指导2http://msu-nftc.org/courses/intro/material/9%20Password%20Cracking/Tools/John%20the%20Ripper.pdf
3.hashcat指导:https://klionsec.github.io/2017/04/26/use-hashcat-crack-hash/
4.LM、NTLM、Net-NTLMv2介绍https://medium.com/@petergombos/lm-ntlm-net-ntlmv2-oh-my-a9b235c58ed4

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐