内网渗透之应用层隧道技术(2)

​ Web服务器是可以访问外网VPS的,所以此时web服务器的随机端口将会将会以客户机的形式去连接VPS(此时充当服务器)的22号端口。web服务器起到转发的功能,开启一个随机端口,将vps中执行的rdesktop 127.0.0.1:3307的流量转发至目标主句的3389端口。

内网渗透之应用层隧道技术

远程端口转发是在远程主机上监听一个端口,所有远程服务器指定的数据都会通过SSH隧道传输到本地指定主机的对应端口

​ 在内网中的Web服务器。我们去监听VPS的3307端口,由3307端口发出的数据都会通过由Web服务器与VPS的ssh服务器建立的隧道转发到数据库服务器的3389端口。

参考文章:ssh 本地转发 和远程转发 区别

本地转发和远程转发的的区别

(1)本地转发是将本地机(客户机)的某个端口转发到远端指定机器的指定端口;远程转发是将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口

(2)应用场景不同:

​ 1.本地转发:

A能访问B,B能访问C

A不能访问C

A通过本机端口,以B的名义访问C

​ 2.远程转发

环境和目的 与 本地端口转发是一样的,这里只是不在本地服务器A上执行命令,而是在中间服务器B上执行;

为什么不直接在服务器A自己身上执行命令呢?这个场景有别于本地端口转发的地方在于A不能主动连接B但反之可以,比如A在外网,B在内网;

而A去访问的时候,同样都是通过自己的IP和端口,同样首先建立AB之间的SSH通道,以服务器B的名义来访问目标服务器C。

动态转发

​ 测试环境和本地端口转发一致

​ 区别在于本地和远程端口转发都限定了目标服务器以及目标服务器的端口。而动态端口转发,A把B作为自己的全权代理,不限定目标服务器及其端口。A和代理服务器B之间的所有连接都是基于加密的SSH

​ 在VPS上执行如下命令建立动态的SOCKS 4/5代理通道,输入web服务器的密码

ssh -CfNg -D 7000 root@192.168.1.26

​ 接着在浏览器中设置

​ 这个操作就是vpn的原理

防御SSH隧道攻击的思路

​ 在系统中配置SSH远程管理白名单,在ACL中限制只有特定的IP地址才能连接SSH,以及设置系统完全使用带外管理等方法,都可以避免这一问题。

HTTP/HTTPS协议

​ HTTP Server代理用于将所有的流量转发到内网。常见的代理工具有reGeorg,meterpreter,tunna等。

​ reGeorg的主要功能是把内网服务器端口的数据通过的数据通过HTTP/HTTPS隧道转发到本机,实现基于HTTP协议的通信。reGeorg脚本的特征非常明显,很多杀毒软件都会对其进行查杀

​ 在公众号酒仙桥六号部队:铁头娃的渗透测试中看到了使用reGeog+proxifier代理的手法。

内网渗透之应用层隧道技术

reGeog+proxifier

​ 这个手法的使用场景,就如文章中说的一样,防火墙DMZ区域映射外网端口80

​ 学习一下这个手法该如何使用

​ 实验环境:

win10(外网IP:192.168.1.9)
Web服务器(外网IP:192.168.1.26 内网IP:172.168.1.16)
并且使用m0n0wall防火墙设置成仅允许80端口出外网

​ 下载reGeorg,github上就有,将适合目标服务器的脚本上传到服务器

内网渗透之应用层隧道技术

​ 执行如下命令

python reGeorgSocksProxy.py -p 9999 -u

​ 执行该命令后,目标主机和本机的9999端口建立了http/https隧道。

​ 这时候我们实际上已经和内网连通,使用proxifier代理经过9999端口的流量,那么我们使用proxifier代理的指定软件,指定端口的流量就会通过这条http隧道发给目标主机
参考:https://www.fujieace.com/penetration-test/regeorg-proxifier.html

​ 设置代理服务器和规则

在指定的软件,比如cmd.exe右键,以proxifier代理方式使用

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

转载注明出处:https://www.heiqu.com/c62b5d0921c3622e97dd427ed9d27cd0.html