内网渗透之中间人欺骗攻击
字数 1978 2025-08-24 20:49:22

内网渗透之中间人欺骗攻击技术详解

ARP欺骗攻击

ARP协议简介

ARP(Address Resolution Protocol)即地址解析协议,用于根据IP地址获取物理地址(MAC地址)。其工作原理如下:

  1. 主机发送包含目标IP地址的ARP请求广播到网络
  2. 收到返回消息后确定目标的物理地址
  3. 将IP和MAC地址存入本机ARP缓存并保留一定时间

ARP协议的安全缺陷

  • 建立在主机互信基础上
  • 主机可自主发送ARP应答消息
  • 其他主机收到应答时不验证真实性直接存入缓存

ARP欺骗原理

攻击者向目标主机发送伪造的ARP应答报文,导致:

  • 目标主机信息无法到达预期主机
  • 信息被重定向到错误主机
  • 攻击者可作为"中间人"监听通信

ARP欺骗实践

环境准备

  • 攻击主机:192.168.174.129 (00:0c:29:39:be:eb)
  • 目标主机:192.168.174.170 (00:0c:29:08:ad:eb)
  • 网关:192.168.174.2

断网攻击步骤

  1. 关闭攻击主机端口转发:echo 0 > /proc/sys/net/ipv4/ip_forward
  2. 目标主机查看ARP表并测试网络连通性
  3. 执行ARP欺骗攻击:
    arpspoof -i eth0 -t 192.168.174.170 192.168.174.2
    
  4. 观察目标主机网络中断情况
  5. 停止攻击后网络恢复

数据窃取攻击

  1. 开启端口转发:echo 1 > /proc/sys/net/ipv4/ip_forward
  2. 执行ARP欺骗攻击
  3. 使用driftnet获取受害者访问的图片数据

凭证窃取

  1. 使用ettercap捕获通信数据:
    ettercap -Tq -i eth0
    
  2. 当用户访问FTP等服务时捕获账户密码

Windows下ARP欺骗工具

NetFuke使用

  1. 运行NetFuke进行嗅探配置
  2. 配置ARP欺骗目标
  3. 设置插件命令参数
  4. 开启ARP欺骗
  5. 可定制重定向页面

ARP欺骗检测与防御

检测工具

  • XArp:检测ARP欺骗攻击并报警

防御措施

  1. 网络设备层面:

    • 交换机端口、MAC、IP三者绑定
    • 启用DAI(Dynamic ARP Inspection)检测
  2. 主机层面:

    • 安装ARP防火墙
    • 建立静态ARP条目(适用于小型网络):
      arp -s IP地址 MAC地址
      
    • 避免接入陌生网络

DNS欺骗攻击

DNS协议简介

DNS(Domain Name System)域名系统,用于将域名解析为IP地址。查询过程:

  1. 客户机向本地DNS服务器查询
  2. 本地DNS服务器检查缓存或向根域查询
  3. 递归查询直到获得最终IP地址

DNS欺骗原理

利用DNS协议设计缺陷:

  1. 通过ARP欺骗控制目标流量
  2. 嗅探DNS请求数据包
  3. 伪造DNS响应包返回攻击者控制的IP
  4. 目标主机将伪造解析存入缓存

DNS欺骗实践

环境准备

  • 攻击主机:192.168.174.129
  • 目标主机:192.168.174.170

基本测试

  1. 攻击主机启动Apache并准备钓鱼页面
  2. 修改etter.dns文件添加伪造记录:
    www.al1ex.com A 192.168.174.129
    
  3. 使用ettercap进行DNS欺骗:
    ettercap -G
    
  4. 观察目标访问伪造域名情况

钓鱼攻击

  1. 开启端口转发
  2. 修改etter.conf文件(设置ec_uid=0)
  3. 修改etter.dns添加钓鱼域名记录
  4. 使用setoolkit克隆目标网站
  5. 诱导用户访问伪造网站
  6. 捕获用户登录凭证

DNS欺骗防御

  1. 防范ARP欺骗攻击
  2. 减少对DNS的依赖,使用hosts文件
  3. 定期检查系统是否遭受攻击
  4. 使用DNSSEC

LLMNR/NBNS欺骗攻击

协议简介

LLMNR(Link-Local Multicast Name Resolution)是Windows Vista起支持的名称解析协议,特点:

  • 支持IPv4和IPv6
  • 解析顺序:本地NetBIOS缓存 → 子网广播查询
  • IPv4广播地址:224.0.0.252
  • IPv6广播地址:FF02:0:0:0:0:0:1:3或FF02::1:3

攻击原理

当用户访问不存在的网络资源时:

  1. 检查本地NetBIOS缓存(无记录)
  2. 向子网广播查询
  3. 攻击者伪造响应提供恶意IP
  4. 用户向攻击者IP发起请求并发送Net-NTLM Hash

攻击实践

使用Responder

  1. 启动Responder:
    ./Responder.py -I eth0
    
  2. 诱导用户访问不存在的资源(如\Al1ex.com)
  3. 捕获Net-NTLM Hash
  4. 使用hashcat爆破:
    hashcat -m 5600 hash.txt passkey.txt
    

使用Inveigh

  1. PowerShell中执行:
    . .\Inveigh.ps1
    Invoke-Inveigh -ConsoleOutput Y
    
  2. 诱导用户访问错误UNC路径
  3. 捕获Net-NTLM Hash

使用Inveigh-Zero

  1. CMD中执行:
    Inveigh.exe
    
  2. 诱导用户访问错误UNC路径
  3. 捕获Net-NTLM Hash

防御措施

关闭LLMNR(可能影响正常功能):

reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\DNSClient" /v EnableMulticast /t REG_DWORD /d 0 /f
reg add "HKLM\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows NT\DNSClient" /v EnableMulticast /t REG_DWORD /d 0 /f

总结

中间人攻击技术在内网渗透中极为重要,主要包括:

  1. ARP欺骗:控制目标流量方向
  2. DNS欺骗:劫持域名解析
  3. LLMNR/NBNS欺骗:窃取用户凭证

防御需要多层次防护:

  • 网络设备配置安全策略
  • 主机安全加固
  • 用户安全意识培养
  • 定期安全检测
内网渗透之中间人欺骗攻击技术详解 ARP欺骗攻击 ARP协议简介 ARP(Address Resolution Protocol)即地址解析协议,用于根据IP地址获取物理地址(MAC地址)。其工作原理如下: 主机发送包含目标IP地址的ARP请求广播到网络 收到返回消息后确定目标的物理地址 将IP和MAC地址存入本机ARP缓存并保留一定时间 ARP协议的安全缺陷 : 建立在主机互信基础上 主机可自主发送ARP应答消息 其他主机收到应答时不验证真实性直接存入缓存 ARP欺骗原理 攻击者向目标主机发送伪造的ARP应答报文,导致: 目标主机信息无法到达预期主机 信息被重定向到错误主机 攻击者可作为"中间人"监听通信 ARP欺骗实践 环境准备 攻击主机:192.168.174.129 (00:0c:29:39:be:eb) 目标主机:192.168.174.170 (00:0c:29:08:ad:eb) 网关:192.168.174.2 断网攻击步骤 关闭攻击主机端口转发: echo 0 > /proc/sys/net/ipv4/ip_forward 目标主机查看ARP表并测试网络连通性 执行ARP欺骗攻击: 观察目标主机网络中断情况 停止攻击后网络恢复 数据窃取攻击 开启端口转发: echo 1 > /proc/sys/net/ipv4/ip_forward 执行ARP欺骗攻击 使用driftnet获取受害者访问的图片数据 凭证窃取 使用ettercap捕获通信数据: 当用户访问FTP等服务时捕获账户密码 Windows下ARP欺骗工具 NetFuke使用 运行NetFuke进行嗅探配置 配置ARP欺骗目标 设置插件命令参数 开启ARP欺骗 可定制重定向页面 ARP欺骗检测与防御 检测工具 XArp:检测ARP欺骗攻击并报警 防御措施 网络设备层面: 交换机端口、MAC、IP三者绑定 启用DAI(Dynamic ARP Inspection)检测 主机层面: 安装ARP防火墙 建立静态ARP条目(适用于小型网络): 避免接入陌生网络 DNS欺骗攻击 DNS协议简介 DNS(Domain Name System)域名系统,用于将域名解析为IP地址。查询过程: 客户机向本地DNS服务器查询 本地DNS服务器检查缓存或向根域查询 递归查询直到获得最终IP地址 DNS欺骗原理 利用DNS协议设计缺陷: 通过ARP欺骗控制目标流量 嗅探DNS请求数据包 伪造DNS响应包返回攻击者控制的IP 目标主机将伪造解析存入缓存 DNS欺骗实践 环境准备 攻击主机:192.168.174.129 目标主机:192.168.174.170 基本测试 攻击主机启动Apache并准备钓鱼页面 修改etter.dns文件添加伪造记录: 使用ettercap进行DNS欺骗: 观察目标访问伪造域名情况 钓鱼攻击 开启端口转发 修改etter.conf文件(设置ec_ uid=0) 修改etter.dns添加钓鱼域名记录 使用setoolkit克隆目标网站 诱导用户访问伪造网站 捕获用户登录凭证 DNS欺骗防御 防范ARP欺骗攻击 减少对DNS的依赖,使用hosts文件 定期检查系统是否遭受攻击 使用DNSSEC LLMNR/NBNS欺骗攻击 协议简介 LLMNR(Link-Local Multicast Name Resolution)是Windows Vista起支持的名称解析协议,特点: 支持IPv4和IPv6 解析顺序:本地NetBIOS缓存 → 子网广播查询 IPv4广播地址:224.0.0.252 IPv6广播地址:FF02:0:0:0:0:0:1:3或FF02::1:3 攻击原理 当用户访问不存在的网络资源时: 检查本地NetBIOS缓存(无记录) 向子网广播查询 攻击者伪造响应提供恶意IP 用户向攻击者IP发起请求并发送Net-NTLM Hash 攻击实践 使用Responder 启动Responder: 诱导用户访问不存在的资源(如\\Al1ex.com) 捕获Net-NTLM Hash 使用hashcat爆破: 使用Inveigh PowerShell中执行: 诱导用户访问错误UNC路径 捕获Net-NTLM Hash 使用Inveigh-Zero CMD中执行: 诱导用户访问错误UNC路径 捕获Net-NTLM Hash 防御措施 关闭LLMNR(可能影响正常功能): 总结 中间人攻击技术在内网渗透中极为重要,主要包括: ARP欺骗:控制目标流量方向 DNS欺骗:劫持域名解析 LLMNR/NBNS欺骗:窃取用户凭证 防御需要多层次防护: 网络设备配置安全策略 主机安全加固 用户安全意识培养 定期安全检测