通过Earthworm(EW)进行隧道穿透¶
在进行多层网段渗透时,我们经常会遇到各种代理隧道问题,仅靠使用端口转发无法完成,可以利用Socks协议建立隧道进行连接,Socks是代理服务可以说是lcx端口转发工具的升级版,有两种协议,分别是Socks 4和Socks 5。Socks 4只支持TCP,Socks 5支持TCP/UDP,核心功能是帮助他人通过socks访问网络。在主机上配置Socks协议代理服务,访问网站时Socks充当了中间人的角色,分别与双方(B/S)进行通信,然后将获得的结果通知对方,攻击者可以通过Socks客户端连接Socks服务,进而实现跳板攻击,EW工具使用具体参数如表所示。
参数 | 作用 |
---|---|
Ssocksd | 正向代理 (Simple Socks Daemon) |
Rcsock | 反向代理客户端 (Reverse Client Socks) |
Rssocks | 反向代理服务端 (Reverse Server Socks) |
Lcx_slave | 一侧通过反弹方式连接代理请求方,另一侧连接代理提供主机 (Link Connect Slave) |
Lcx_tran | 通过监听本地端口接收代理请求,并转发给代理提供主机 (Link Connect Transfer) |
Lcx_listen | 通过监听本地端口接收数据,并将其转交给目标网络会连的代理提供主机 (Link Connect Listen) |
案例 - 红日靶场7¶
网络环境¶
机器 | ip |
---|---|
攻击机(lcx_listen) | 192.168.111.128 |
Windows 服务器 (ssocksd) | 192.168.52.30 / 192.168.93.20 |
DMZ区域的Ubuntu 18(Lcx_slave) | 192.168.111.133 / 192.168.52.10 |
隧道穿透流程¶
1.攻击机 (192.168.111.128)¶
- 作用:在攻击机上启动一个监听端口(1090)的服务,等待来自其他主机的代理请求。接收到的请求将会转发到指定的目标地址(192.168.111.128:1235)。
- 后果:攻击机将成为一个入口点,任何通过1090端口发送的请求都将被转发到192.168.111.128的1235端口,建立代理通道。
2.Windows 服务器 (192.168.52.30, 192.168.93.20)¶
- 作用:在Windows服务器上启动一个SOCKS代理服务,监听999端口。
- 后果:任何连接到该Windows服务器的999端口的请求将通过此SOCKS代理进行处理。这使得其他主机可以通过该代理访问网络。
3.DMZ区域的Ubuntu 18 (192.168.111.133, 192.168.52.10)¶
- 作用:在DMZ区域的Ubuntu主机上启动一个代理连接,将来自192.168.52.30的999端口的请求转发到攻击机的1235端口。
- 后果:该Ubuntu主机会将连接到其999端口的请求转发至攻击机的1235端口,完成代理链的搭建,使得攻击机可以通过Ubuntu主机与Windows服务器的SOCKS代理进行通信。
4.然后攻击机上配置proxychains¶
此时,就可以设置proxychains等代理工具,通过访问攻击机的1090端口来使用架设在第二层网络Windows主机上的socks代理服务,来进入第三层网络了。