内网穿透
Frp
根据对应的操作系统及架构,从 Release 页面下载最新版本的程序。
将 frps 及 frps.ini 放到具有公网 IP 的机器上。( s - server )
将 frpc 及 frpc.ini 放到处于内网环境的机器上。( c - client )
访问路径:攻击机
-> VPS(跑frps的)
-> 内网中转机(跑frpc的)
-> 访问内网其它环境
配置 frps
修改 frps.ini
文件,这里使用了最简化的配置
1 |
|
启动 frps
1 |
|
配置 frpc
修改 frpc.ini 文件,假设 frps 所在服务器的公网 IP 为 x.x.x.x
1 |
|
启动 frpc
1 |
|
连接代理
假设我们已经控制了一台内网机器,内网中存在另一个主机开启了 Web 服务。
网络为 192.168.174.0/24
段
存在 Web 服务的主机 IP 为 192.168.174.128
,我们正常是访问不了的
写好 frps
配置文件
启动 frps
在 192.168.174.132
上配置 frpc.ini
启动 frpc
Server 端接收到连接,连接成功
- 使用
Proxifier
添加代理
设置规则
访问成功
- 使用浏览器插件/配置系统代理
使用 SwitchyOmega
插件配置代理
选择代理
访问成功
系统代理同理,在 socks proxy 填上 server ip & port 即可:
二层代理
为了简便(懒),不开那么多容器/主机,直接在配置文件限制 Web 服务仅本机登录,正常访问是这样的:
单纯为了学习搭建代理,就不配置漏洞环境了(懒),这里假设我们通过 192.168.174.132
打进了 192.168.174.128
,需要用 192.168.174.128
,继续搭建代理中转来渗透另一个网段。
访问路径:攻击机
-> VPS(跑frps的)
-> 一层内网中转机(192.168.174.132)
-> 二层内网中转机(192.168.174.128)
-> 访问内网其它环境
配置文件
放在二层内网里的主机:frpc.ini
,如 192.168.174.128
1 |
|
放在一层内网里的主机:frps.ini
,如 192.168.174.132
1 |
|
frps
:
frpc
:
接收到了信号
配置 Proxychains
创建一个 Chains,并按顺序拖入代理,顺序从上到下
配置后成功访问
Summary
多层代理的原理是一样的,上层代理(如一层)运行 frps
,下一层(如二层)运行 frpc
时的 server
地址为一层的地址,端口为上层代理的监听端口 (bind_port)
,设置代理时所填的 IP 为一层主机的 IP,端口填二层主机里的 remote_port
IOX
简介
端口转发 & 内网代理工具,功能类似于 lcx/ew
,但是比它们更好
工作模式
fwd
监听 0.0.0.0:8888
和 0.0.0.0:9999
,将两个连接间的流量转发
1 |
|
监听 0.0.0.0:8888
,把流量转发到 1.1.1.1:9999
1 |
|
连接 1.1.1.1:8888
和 1.1.1.1:9999
, 在两个连接间转发
1 |
|
proxy
在本地 0.0.0.0:1080
启动 Socks5 服务
1 |
|
在被控机开启 Socks5 服务,将服务转发到公网 VPS
在 VPS 上转发 0.0.0.0:9999
到 0.0.0.0:1080
你必须将两条命令成对使用,因为它内部包含了一个简单的协议来控制回连
1 |
|
接着连接内网主机
1 |
|
详细可浏览 官方文档
使用方法
所有的参数都是统一的。-l/--local
意为监听本地端口;-r/--remote
意为连接远端主机
注意: v0.4
版本之后,-l/--local
参数可以指定监听哪个 IP。如果只指定了端口,则默认是 0.0.0.0:PORT
1 |
|
开搞
搞了 docker 靶场(终于)
192.168.100.10
是跳板机,开启了 Shiro 服务,外网可访问192.168.100.11
是内网服务器,开启了 st2,外网不可访问
修改 /etc/proxychains.conf
1 |
|
监听并映射端口
1 |
|
利用过程不多说,写入🐎后上传 iox
在目标机器上
1 |
|
接收到连接
配置 Proxifier
或浏览器插件都可以,代理地址为 x.x.x.x:10888
,22222
是客户端连接的端口,10888
是我们代理连接的端口,iox
会对 22222
端口和 10888
端口的流量进行转发,注意顺序,22222
和 10888
不能互换。
可用内网地址访问 Shiro
访问 st2 的机子 192.168.100.11:8080
Docker 中有 struts2 全版本的漏洞平台,需要检测哪一个漏洞就直接更改地址即可,这里以 S2-001
为例:192.168.100.11:8080/S2-001/
至此内网转发成功
地址也确认是 192.168.100.11
进接着添加新网络,st2 有两个网卡,IP 为 192.168.1.2
这个网段内存在 192.168.1.3
,开启了 thinkphp5
服务Shiro1 192.168.100.10
的主机只在一个网络内,因此与 tk5 是不通的
在 st2 192.168.100.11
里可以通
现在为双网卡
上传小马
上传大马
连接上去后开始上传 iox 建立代理
在 192.168.100.10
上开启监听 2222
和 1080
,192.168.100.11
上连接 2222
设置 chains
,连接成功
Summary
iox 相比起 frp 是更加的简便,iox yyds!
To be continued
先整理了 frp,更多代理工具挖坑待填。