前言:对于动态路由协议的攻击,向来是黑客关注的目标,OSPF协议作为园区网络中较为常见的路由协议,其配置的安全性和重要性自然不言而喻。如何有效防御OSPF的安全隐患,更多的网管往往将目标投向了路由器自身安全,习惯性的认为只要路由器保护得够安全,网络就够安全。其实,安全一直一来都是意识的竞争而技术仅仅是其中的表象。今天,我们就来看看一个简单的ospf插入恶意路由的方式。
模型:本次实验,我们采用dynamips模拟路由器,vmware+ubuntu模拟攻击方,攻击程序采用一个安装在ubuntu上的开源的路由软件quagga。拓扑如下:
模型中,R0和R1是原本收敛完成的ospf路由,通过一台二层交换机连接,这是园区网络非常常见的方式;我们通过在交换机上接入一台计算机C0,运行相应的程序,将R0原本指向R1的172.16.0.2的路由指向我们的攻击端C0。
原理:ospf的路由选择算法不在此赘述,简而言之。我们其实没有利用什么漏洞,而是针对没有设置校验的ospf路由进行握手和邻接,随后采用最小cost的方式强行压入路由。
前期准备:
路由器部分用dynamips,这里不再赘述用法,我们配置好的两台设备已经收敛完成,两台路由器采用f0/0链接交互ospf,此外R1新开启f0/1,用以将路由信息更新至R0,信息如下:
R0:
R0#sh ip int bri
Interface IP-Address OK? Method Status Protocol FastEthernet0/0 192.168.0.251 YES NVRAM up up FastEthernet0/1 unassigned YES NVRAM administratively down down R0#sh ip ospf ne
Neighbor ID Pri State Dead Time Address Interface
192.168.0.249 1 FULL/BDR 00:00:36 192.168.0.249 FastEthernet0/0
R0#sh ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 E1 - OSPF external type 1, E2 - OSPF external type 2 i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2 ia - IS-IS inter area, * - candidate default, U - per-user static route o - ODR, P - periodic downloaded static route
Gateway of last resort is not set
172.16.0.0/24 is subnetted, 1 subnets
O 172.16.0.0 [110/20] via 192.168.0.249, 00:09:42, FastEthernet0/0 C 192.168.0.0/24 is directly connected, FastEthernet0/0 |