安全攻防 | frp内网穿透

admin 2023年1月29日18:27:53评论89 views字数 2269阅读7分33秒阅读模式

声明:本人坚决反对利用文章内容进行恶意攻击行为,一切错误行为必将受到惩罚,绿色网络需要靠我们共同维护,推荐大家在了解技术原理的前提下,更好的维护个人信息安全、企业安全、国家安全。



安全攻防 | frp内网穿透

frp代理功能介绍



内网穿透从本质上来讲也是端口映射,两者都是将内网地址映射到公网可访问的地址,而区别是端口映射直接在路由器中配置即可,而内网穿透配置的端口映射则需要客户端和服务端进行绑定后实现,相当于客户端和服务端之间建立了一条隧道,然后访问服务端的请求会通过隧道转发给内网主机,该情况多用于没有公网 IP 的情况下使用;

frp是一个高性能的反向代理应用,可以轻松地进行内网穿透,对外网提供服务, 支持tcp, udp, http, https等协议类型,可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网;

## 中文文档地址:  
https://gofrp.org/docs/ 
## github 下载地址:  
https://github.com/fatedier/frp/releases
## 文件介绍
frpc   客户端程序 
frpc_full.ini 客户端完整配置文件 
frpc.ini  客户端简易配置文件 
frps   服务端程序 
frps_full.ini 服务端完整配置文件 
frps.ini  服务端简易配置文件


安全攻防 | frp内网穿透

frp实验演示


安全攻防 | frp内网穿透
安全攻防 | frp内网穿透

(1)映射内网SSH服务

提示:需要被映射SSH的服务器运行frpc,接收映射的服务器运行frps

查看服务端简易配置文件

安全攻防 | frp内网穿透

这里我在另一台ubuntu(192.168.0.129)上上传frp并开启服务端进行演示

 ./frps -c ./frps.ini
安全攻防 | frp内网穿透

然后在kali(192.168.0.128)上,上传frp

安全攻防 | frp内网穿透
## 客户端简易配置文件frpc.ini
[common]             ## 这个部分类似于口令-对接口
server_addr = 192.168.0.129    ## 服务端的公网ip地址
server_port = 7000                ## 服务端侦听的端口
[ssh] 
type = tcp      ## 协议类型     
local_ip = 127.0.0.1   ## 本地的ip地址
local_port = 22    ## 需要映射的本地端口
remote_port = 6000    ## 将需要映射的本地端口映射到服务端的端口

./frpc -c frpc.ini
安全攻防 | frp内网穿透

服务端和客户端都运行之后,我们访问Ubuntu(192.168.0.129)的6000端口即可穿透访问到Kali(192.168.0.128)的22端口

安全攻防 | frp内网穿透
安全攻防 | frp内网穿透
安全攻防 | frp内网穿透

然后通过Ubuntu(192.168.0.129)的6000端口来访问到Kali(192.168.0.128)的22端口

安全攻防 | frp内网穿透

(2)映射内网Web服务

这里Ubuntu(192.168.0.129)里面有个docker容器(172.17.0.2)的8080端口有spring服务,我们现在将其映射到Kali(192.168.0.128)的8085端口上。

安全攻防 | frp内网穿透

这样我们访问Kali(192.168.0.128)的8085端口就可以访问到Ubuntu(192.168.0.129)内docker(172.17.0.2)的web服务

Kali的frps.ini配置如下

安全攻防 | frp内网穿透

然后开启frps

安全攻防 | frp内网穿透

然后我们编辑下ubuntu上的frpc.ini

[common]
server_addr = 192.168.0.128     # 服务端的主机IP
server_port = 7000              # 服务端主机监听的端口

[http]
type = tcp  # 连接类型
local_port = 8080   # 本地端口
local_ip = 172.17.0.2   # 本地地址
remote_port = 8085      # 映射成服务端的端口

安全攻防 | frp内网穿透

然后开启frpc

安全攻防 | frp内网穿透

接下来我们访问下Kali(192.168.0.128)的8085端口看看,可以发现成功访问

安全攻防 | frp内网穿透

下面这张图是Ubuntu本机访问docker里面Web服务的截图

安全攻防 | frp内网穿透

(3)msf映射frp流量

Kali:192.168.0.128(外网) Ubuntu:192.168.0.129(外网),10.0.1.6(内网) Win7:10.0.1.7(内网)

我在Kali上编辑frps.ini

[common]
bind_addr = 192.168.0.128
bind_port = 7000
安全攻防 | frp内网穿透

然后在Ubuntu上编辑frpc.ini

[common]
server_addr = 192.168.0.128
server_port = 7000

[msf]
type = tcp
remote_port = 1088
plugin = socks5

这里我们将Kali的1088端口作为进入内网的端口,只要流量通过Kali的1088端口就可以达到Ubuntu从而进入内网

先开启Kali上的frps,然后在开启ubuntu上的frpc

安全攻防 | frp内网穿透
安全攻防 | frp内网穿透

然后我们开启msf

# 设置代理和允许反向连接
setg Proxies socks5:192.168.0.128:1088
setg ReverseAllowProxy true

然后我们扫描下10.0.1.7是否开启了smb服务

use auxiliary/scanner/smb/smb_version
set RhOSTS 10.0.1.7
run
安全攻防 | frp内网穿透

原文始发于微信公众号(betasec):安全攻防 | frp内网穿透

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年1月29日18:27:53
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   安全攻防 | frp内网穿透http://cn-sec.com/archives/1400018.html

发表评论

匿名网友 填写信息