后渗透——SMB钓鱼篇
字数 1281 2025-08-18 11:38:41
SMB钓鱼攻击技术详解
一、SMB钓鱼攻击概述
SMB钓鱼是一种利用服务器消息块(SMB)协议漏洞进行的攻击方式,主要通过伪造SMB服务器捕获目标系统的认证凭证(NTLM哈希)。这种攻击在内网渗透中非常有效,特别是针对仍在使用旧版本Windows系统的环境。
二、实验环境准备
-
用户机:
- WinXP (172.16.111.32)
- Win2008R2 (172.16.111.57)
- Win10 (172.16.111.200)
-
攻击机:
- ParrotSec 4.6 KDE版 (172.16.111.31)
三、NTLM认证机制详解
NTLM认证流程分为四个步骤:
- 协商:客户端向服务器发送请求,包含明文的登录用户名
- 挑战:服务器生成16位随机数(Challenge),明文返回客户端
- 响应:客户端使用用户密码hash加密Challenge,生成Response
- 验证:服务器比较自己计算的Challenge1和客户端返回的Response
四、伪造SMB服务器
使用Metasploit框架伪造SMB服务器:
use auxiliary/server/capture/smb
关键点:
- 伪造的SMB服务器使用固定Challenge值
1122334455667788 - 这样可以利用预先生成的彩虹表进行破解
五、哈希捕获与分析
1. LM哈希与NT哈希区别
- LM哈希:较弱的加密方式,Windows Vista及更高版本默认禁用
- NT哈希:更安全的加密方式,现代系统默认使用
2. 不同系统的哈希捕获情况
- WinXP/Win2003:可捕获LM哈希和NT哈希
- Win2008R2/Win10:仅捕获NT哈希
六、哈希破解技术
1. NET-NTLMv1破解
针对WinXP等旧系统的破解方法:
john --format=netntlm repass_netntlm
2. NET-NTLMv2破解
针对现代系统的破解方法:
john --format=netntlmv2 repass_netntlmv2
七、实战钓鱼技术
1. 基本钓鱼Payload
关键点:
rabbit可以是任意字符串但不能为空- 该标签会强制浏览器发起SMB连接
2. 触发条件
- 本地HTML文件:任何浏览器都可触发
- 网站页面:仅IE浏览器可触发
八、高阶攻击技术
1. 445端口转发
- 将攻击机的445端口转发到内网
- 使伪SMB服务器能够接收更多内网主机的哈希
2. DNS劫持
- 结合MITM攻击劫持所有域名解析
- 强制目标访问包含SMB钓鱼Payload的页面
- 可配合社会工程学,如"联网需要身份认证"等提示
九、防御措施
- 禁用LM哈希(现代系统已默认)
- 启用SMB签名
- 限制NTLM认证的使用
- 升级到最新Windows版本
- 在内网中禁用IE浏览器
十、适用场景
- 内网环境中存在旧系统(WinXP/Win2003)
- 目标使用IE浏览器访问网页
- 已获得内网Web服务器控制权
- 配合其他攻击手段(如永恒之蓝)使用
十一、技术限制
- 现代浏览器(除IE外)对SMB协议的限制
- 现代系统默认禁用LM哈希
- 需要目标主动访问恶意页面
- 需要攻击者在内网有一定立足点
通过以上技术,攻击者可以在内网环境中有效捕获用户凭证,特别是针对仍在使用旧系统的环境。防御者应了解这些攻击手法并采取相应防护措施。