扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:zdnet安全频道 来源:论坛整理 2008年9月15日
关键字: 网关
经常有人问我这个问题“怎样进入内网”,怎么回答呢,归纳起来就是一句话“突破网关,利用端口重定向进入内网”。
首选要突破网关(GetWay),这很容易理解,因为一个内网要访问internet总是必然通过网关接入的,至于怎样突破网关,这和进入不是网关的服务器没有什么两样,就不说了。
突破网关以后,我们的目标就是通过网关(IP为202.98.*.*)上网的192.168.21.75。以后的方法就是在网关力端口重定向,建立包转发。端口重定向分两种(local和remote),但是我们要进而内网,显然不能用local方式的重定向,local方式的重定向主要用来绕过_blank">防火墙(关于这个问题我将在随后单独写一篇文章来讨论怎样用端口重定向绕过_blank">防火墙)。
一、利用Fpipe建立端口重定向。
Fpipe是个非常有趣的东东。为了证明Fpipe的端口重定向功能,我们来做这样的试验。
首先在自己的机器上运行Fpipe,如下:
E:\tool\FPip>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
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者