(二) 配置RIP路由协议
在Router A上做如下RIP路由配置
Router(config)#int fastEthernet 0/0
Router(config-if)#ip address 192.168.145.173 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#network 1.0.0.0
Router(config-router)#network 2.0.0.0
Router(config-router)end
在Router B上做如下RIP路由配置
Router(config)#int fastEthernet 0/0
Router(config-if)#ip address 192.168.145.174 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#router rip
Router(config-router)#version 2
Router(config-router)#network 3.0.0.0
Router(config-router)#network 4.0.0.0
Router(config-router)end
在Router B 通过show ip route
如下图,路由表为
Network 1.0.0.0
Network 2.0.0.0
Network 3.0.0.0
Network 4.0.0.0
这是正常的路由表
(三) 抓包分析
在PC上通过wireshark抓包工具抓到如下的包
如下图,看NO. 6,为Router A发给Router B的路由更新包
红圈处为rip路由信息
把这些信息保存,用sniffer pro 4.7.5打开
点选 File→save→保存类型NA Sniffer (windows) 2.00x (*.cap)
#p#
(四) 第一次改包
用sniffer pro 4.7.5打开保存了的cap文件
点选decode,如下图
找到RIP路由信息的二进制代码处,右键选择 edit,如下图
如下图红圈处,将01 00 00 00 ff 00 00 00修改为 01 01 01 00 ff ff ff 00,即将1.0.0.0 255.0.0.0 改为 1.1.1.0 255.255.255.0;将02 00 00 00 ff 00 00 00修改为 02 02 02 00 ff ff ff 00,即将2.0.0.0 255.0.0.0 改为 2.2.2.0 255.255.255.0
在NO.6路由包处,右键点选取 Send Current frame,如下图
(五) 第一次攻击
填写发送次数,或者选择一直发送,如下图
这时查看Router B的路由表,路由表没有被撰改,再分析发送的数据包
(六) 再抓包分析
通过wireshark抓包获得如下信息
通过下图可以得到如下信息,RIP路由的数据包已经发送到了Router B,rip路由封装在udp 520数据包中,返回udp包的checksum错误
checksum:0xc60c [incorrect,should be oxc309]
再通过sniffer pro 4.7.5修改checksum,将oxc60c修改为oxc309
修改方法请参考上文,这里不再骜叙
(七) 再次攻击,攻击成功
通过sniffer pro 4.7.5将修改了的数据发送
在Router B 通过show ip route
如下图,路由表为
Network 1.1.1.0
Network 2..2.2.0
Network 1.0.0.0
Network 2.0.0.0
Network 3.0.0.0
Network 4.0.0.0
其中network 1.1.1.0,network 2.2.2.0就是撰改后路由表
这里我们得出结论
对于运行RIP动态路由协议路由器的路由表可以通过本文的办法对其随意撰改,造成其路由表紊乱,并足以使其网络中断
最后在此感谢二位黄先生,泽鸿(CCIE)给于我在路由协议上的很多指点(很久没摸路由器了,都忘干净了^_^),超毅(黑客之王)给于我对攻击思路的指点,感谢二位牛人。
【编辑推荐】