突破网关 用端口重定向进入内网

日期: 2008-06-01 作者:alyssameng 来源:TechTarget中国

  经常有人问我这个问题“怎样进入内网”,怎么回答呢,归纳起来就是一句话“突破网关,利用端口重定向进入内网”。


  首选要突破网关(GetWay),这很容易理解,因为一个内网要访问internet总是必然通过网关接入的,至于怎样突破网关,这和进入不是网关的服务器没有什么两样,就不说了。


  突破网关以后,我们的目标就是通过网关(IP为202.98.*.*)上网的192.168.21.75。以后的方法就是在网关力端口重定向,建立包转发。端口重定向分两种(local和remote),但是我们要进而内网,显然不能用local方式的重定向,local方式的重定向主要用来绕过_blank”>防火墙(关于这个问题我将在随后单独写一篇文章来讨论怎样用端口重定向绕过_blank”>防火墙)。


  一、利用Fpipe建立端口重定向。


  Fpipe是个非常有趣的东东。为了证明Fpipe的端口重定向功能,我们来做这样的试验。


  首先在自己的机器上运行Fpipe,如下:


  E:toolFPip>fpipe -l 80 -s 90 -r 80 202.98.177.162


  FPipe v2.1 – TCP/UDP port redirector.


  Copyright 2000 (c) by Foundstone, Inc.


  http://www.foundstone.com


  //解释一下这个命令


  fpipe -l 80 -s 90 -r 80 202.98.177.162


  将到本机80端口的连接通过90端口连接到202.98.177.162的80端口。


  一下是详细语法:


  FPipe [-hv?] [-brs ] IP


  -?/-h – shows this help text 


  -c – maximum number of allowed simultaneous connections. Default is 32 #连接的最大数目,默认是32


  -l – listening port number #要监听的TCP端口号


  -r – remote TCP port number #要定向到的IP主机的端口号


  -s – outbound connection source port number #从哪个端口发出重定向信息


  -v – verbose mode #详细显示过程


  在上面的过程中,我们在自己的机器上建立了端口重定向:将到本机80端口的连接通过90端口连接到202.98.177.162的80端口 


  然后我们在浏览器中输入:


  http://127.0.0.1,结果发现昆明高新区的网页打了,这说明我们的重定向成功。
  
  此时fpipe现实了如下的内容:


  Pipe connected:


  In: 127.0.0.1:2092 –> 127.0.0.1:80


  Out: 192.168.168.112:90 –> 202.98.177.162:80
  
  从上面的输出可以看出数据包经过的路径(192.168.168.112是我的IP)


  好了成功以后,下面的东西我不说大家也知道了,将Fpipe拷贝到我们控制的网关上,执行重定向:


  fpipe -l 81 -s 91 -r 21 192.168.21.75 #在网关(202.98.*.*)执行,将到202.98.*.*的81端口的数据通过91端口转发向192.168.21.75的21端口。同样的:


  fpipe -l 82 -s 92 -r 23 192.168.21.75 #将到202.98.*.*的82端口的数据通过92端口转发向192.168.21.75的23端口


  fpipe -l 83 -s 93 -r 80 192.168.21.75 #将到202.98.*.*的83端口的数据通过93端口转发向192.168.21.75的80端口


  fpipe -l 84 -s 94 -r 139 192.168.21.75 #将到202.98.*.*的84端口的数据通过94端口转发向192.168.21.75的139端口


  下面的你更应该知道了:


  如果你在本机telnet到202.98.*.*的81就等价于你telnet到192.168.21.75的21,不对啊!192.168.21.75的21应该FTP上去才对啊(哈哈),那就ftp到202.98.*.*的81端口吧!


  二、利用rinetd建立重定向。


  方法和上面一样。在网关上运行rineted,不过要建立个配置文件(文件名和扩展名随意了在这里我以配置文件为conf.ini做例子说)


  在本地用计事本建立如下内容的配置文件(其中的*不方便说,别找这写哦!他的意思是将到202.98.*.* 的90的包转发到192.168.21.75的80)


  202.98.*.* 90 192.168.21.75 80


  将他存为conf.ini文件然后和rineted拷贝到那个网关上(202.98.*.* ),然后


  在网关上执行


  rinetd -c conf.ini


  然后你连接到202.98.*.* 90和连接到192.168.21.75 80的效果是一样的。


  顺便说说rinetd配置文件的语法为


  bindaddress bindport connectaddress connectport

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐