首页 > 其他分享 >FRP 反向代理渗透

FRP 反向代理渗透

时间:2023-02-16 18:23:49浏览次数:71  
标签:渗透 端口 代理 FRP 反向 公网 服务器 内网

前言

之前在一个项目中遇到了一个渗透环境,只能使用工具代理远程访问内网,于是便接触了FRP这款内网穿透工具,通过内网反向代理进行远程渗透测试。这篇文章就简单介绍如何实现FRP反向代理渗透,作为个人笔记方便以后查阅,也分享给大家提供参考。

0x01 工具简介

FRP 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。通过在具有公网 IP 的节点上部署 FRP 服务端,可以轻松地将内网服务穿透到公网。

0x02 模拟场景

使用一台工作电脑(处于外网),对一个处于内网的系统进行渗透测试。但是这两个处于不互通的网段,唯一的共同点就是都可以访问互联网。

如果直接将内网系统绑定到服务器的端口上进行访问,那么无疑是将内网系统暴露于公网之上,是非常不安全的。

为了安全性考虑,可以通过一个加密访问的代理服务,实现两个网段的互通。使用一台在公网上的ip服务器,对这两个不互通的网段进行流量中转,使它们能够进行间接性互通访问。

  • 云服务器(对两个不互通的网段流量进行中转)
  • 内网主机(存在web系统,不能被外网访问)
  • 外网主机(开启中转代理,访问内网系统)

0x03 服务器操作

首先,需要自己准备一台有公网IP的服务器,然后将FRP下载到服务器上,进入到FRP文件夹下,修改配置文件 frps.ini 如下:

[common]
bind_addr = 0.0.0.0 
bind_port = 7100     # 绑定服务器端口
token = 123456789    # 自定义的配对密钥

启动服务端FRP命令

./frps -c ./frps.ini

注意:服务器上相对应的端口7100要对外开放,如果服务器上安装了宝塔,也必须要在宝塔上设置下开放端口。

0x04 客户端操作

在内网任意一台主机上也需要下载FRP文件,进入FRP文件夹下,修改配置文件 frpc.ini 如下:

[common]
server_addr = x.x.x.x # 服务器的IP
server_port = 7100    # 服务器的绑定端口
token = 123456789     # 服务器的配对密钥

[http_proxy]
type = tcp
remote_port = 9876    # 服务器的另一个端口
plugin = http_proxy   # 设置为http代理

启动客户端FRP命令

.\frpc.exe -c ./frpc.ini

注意:不是内网主机,是服务器上相对应的端口9876也要对外开放。如果服务器上安装了宝塔,也必须要在宝塔上设置下开放端口。

0x05 代理访问内网

当服务器与内网主机都开启FRP后,在工作电脑(处于外网)的浏览器中设置服务器的frp_http代理

注意:浏览器设置代理ip为服务器的公网ip,以及端口为9876

然后就可以直接远程访问内网的web系统了

0x06 Burp 代理抓包

做渗透测试的话,抓取数据包是必不可少的步骤,接下来介绍如何用Burp抓取访问内网web系统的数据包。

首先,设置Burp的下游代理,监听本地的8080端口

然后,设置Burp的上游代理,内容为服务器上的公网ip和9876端口

之后,在浏览器中设置代理,与Burp的下游代理一致

最后,就可以使用Burp进行抓取数据包了。

0x07 AWVS 代理扫描

同样,渗透测试也必须要对内网系统进行扫描测试,可以用到的扫描器有很多,例如常见的AWVS、Nessus、AppScan等等。

以 AWVS 10.5 为例,设置AWVS的代理,内容为服务器的公网ip和9876端口

设置完代理后,就可以对内网web站点进行渗透扫描了

0x08 SQLmap 代理测试

当扫描器扫出来SQL注入点后,或者自己对于其他可疑注入点进行测试验证,可以利用SQLmap工具进一步验证结果的准确性。

sqlmap 可以使用 --proxy 参数,设置为服务器代理对目标系统进行测试

python sqlmap.py -u "http://192.168.31.177/labs/num_sql.php?id=2" -p "id" --proxy "http://x.x.x.x:9876"

总结

综上所述,这篇文章总结了如何使用FRP访问内网系统,以及如何使用渗透工具去远程测试内网环境的系统。至于后续怎么去挖掘系统的漏洞,想必各位师傅们心里都有一套熟练的操作了,欢迎大家一起学习交流。

标签:渗透,端口,代理,FRP,反向,公网,服务器,内网
From: https://www.cnblogs.com/ta1zi/p/17127813.html

相关文章

  • 内网渗透-winserver2012抓取明文密码
    问题引入:winserver2012使用mimikatz是无法抓取明文密码的,要获取明文密码需要修改其注册表。法一:在未修改注册表的情况下,使用mimikatz来读取密码:privilege::debugseku......
  • 【Azure 应用服务】在App Service for Windows中实现反向代理
    问题描述如何在AppServiceforWindows(.NETStack)中,如何实现反向代理呢?正向代理:客户端想要访问一个服务器,但是它可能无法直接访问这台服务器,这时候这可找一台可以访......
  • DVWA渗透测试笔记 low篇
    DVWA配置项目地址:https://github.com/digininja/DVWA.gitclone到服务器目录下即可将DVWA目录拷贝到Kali的Apache服务器目录/var/www/html下,启动Apache和mysql服务。ser......
  • 记一次无线网卡实现wifi渗透
    前言:#请大家遵守网络安全法!本教程仅供学习和教学,切勿做违法的事情,让我们一起做一个守法公民!这里的无网卡指的是不去上网购买网卡,但是还是需要用到笔记本电脑自带的网卡。这......
  • CFS三层靶机-内网环境渗透
    <1>靶场介绍及环境配置三个主机的网络环境拓扑图,攻击机的网段在192.168.236.0/24,三台靶机的IP地址分别如图:上面的Target1、2、3分别对应CentOS7、Ubuntu、Windows7三......
  • 反向代理-YARP
    .NET反向代理-YARP 什么是YARPYARP(另一个反向代理)设计为一个库,提供核心代理功能,你可以根据应用程序的特定需求进行自定义。YARP是使用.NET的基础架构构建在......
  • tomcat反向代理,监控,性能优化详细步骤
    第1章tomcat简介Tomcat是Apache软件基金会(ApacheSoftwareFoundation)的Jakarta项目中的一个核心项目,由Apache,Sun和其他一些公司及个人共同开发而成Tomcat服务器是一......
  • nginx反向代理
    nginx配置1.xshell进入根目录/etc2.进入etc目录,这个目录下有一个nginx目录,进入到这个目录(如果已经安装过nginx,会有很多文件,未安装的话,只有四五个文件)3.如果向安装nginx......
  • Nignx 反向代理
    编译源码包准备安装编译所用的依赖和工具$sudoyum-yinstallmakezlibzlib-develgccgcc-c++libtoolopensslopenssl-develwgetpcrepcre-develgit解压并安装$l......
  • frp配置
    windows配置[common]server_addr=serverIPserver_port=porttls_enable=true[ssh]type=tcplocal_ip=127.0.0.1local_port=3389——远程桌面端口remot......