8.2 配置RIPv2的认证
8.2.1 原理概述
配置协议的认证可以降低设备接受非法路由选择更新消息的可能性,也可称为“验证”。非法的更新消息可能来自试图破坏网络的攻击者,或试图通过欺骗路由器发送数据到错误的目的地址的方法来捕获数据包。RIPv2协议能够通过更新消息所包含的口令来验证某个路由选择消息源的合法性,有简单和MI文两种验证密方式。
简单验证是指在认证的消息当中所携带的认证口令是以明文传输的,可以通过抓包软件抓取到数据包中的密码。
MD5密文验证是一种单向消息摘要(message digest)算法或安全散列函数。有时MD5也被作为一个加密校验和(cryptographic checksum)。MD算法是通过一个随意长度的明文消息(例如,一个RIPv2的更新消息)和口令计算出一个128位的hash值。hash值类似“指纹”,这个“指纹”随同消息一起传送,拥有相同口令的接收者会计算它自己的hash值,如果消息的内容没有被更改,接收者的hash值应该和消息发送者的hash值相匹配。
8.2.2 实验内容
本实验模拟企业网络场景。某公司有两台路由器R1与R2,各自连接着一台主机,并且R1和R2之间配置RIPv2协议学习路由条目。R3模拟作为网络中的攻击者,窃取R1与R2间的路由信息,并发布了一些虚假路由,使R1和R2的相关路由的选路指向了R3,形成了路由欺骗。为了避免遭受攻击,提高网络安全性,网络管理员将配置RIPv2认证。
8.2.3 实验拓扑
8.2.4 实验编址
设备 | 接口 | IP地址 | 子网掩码 | 默认网关 |
---|---|---|---|---|
PC3 | Ethernet 0/0/1 | 192.168.10.1 | 255.255.255.0 | 192.168.10.254 |
R1(AR2220) | GE 0/0/0 | 192.168.10.254 | 255.255.255.0 | N/A |
R1(AR2220) | GE 0/0/1 | 172.16.1.1 | 255.255.255.0 | N/A |
R2(AR2220) | GE 0/0/1 | 172.16.1.2 | 255.255.255.0 | N/A |
R2(AR2220) | GE 0/0/0 | 192.168.20.254 | 255.255.255.0 | N/A |
PC4 | Ethernet 0/0/1 | 192.168.20.1 | 255.255.255.0 | 192.168.20.254 |
R3(AR2220) | GE 0/0/0 | 172.16.1.3 | 255.255.255.0 | N/A |
R3(AR2220) | Loopback 0 | 192.168.10.254 | 255.255.255.0 | N/A |
R3(AR2220) | Loopback 1 | 192.168.20.254 | 255.255.255.0 | N/A |
8.2.5 实验步骤
1、基本配置
根据实验编址表进行相应的基本配置,并使用ping命令检测各直连链路的连通性,R3上的两个环回接口先不用配置IP地址。
[R1]interface GigabitEthernet 0/0/0
[R1-GigabitEthernet0/0/0]ip address 192.168.10.254 24
[R1-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]ip address 172.16.1.1 24
[R2]interface GigabitEthernet 0/0/0
[R2-GigabitEthernet0/0/0]ip address 192.168.20.254 24
[R2-GigabitEthernet0/0/0]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]ip address 172.16.1.2 24
[R3]interface GigabitEthernet 0/0/0
[R3-GigabitEthernet0/0/0]ip address 172.16.1.3 24
2、搭建RIP网络
配置路由器R1和R2的RIPv2的协议,并添加需要通告的网段。
[R1]rip 1
[R1-rip-1]version 2
[R1-rip-1]network 192.168.10.0
[R1-rip-1]network 172.16.0.0
[R2]rip 1
[R2-rip-1]version 2
[R2-rip-1]network 192.168.20.0
[R2-rip-1]network 172.16.0.0
配置完成后,查看R1和R2的路由表,可以观察到,双方已经获得了RIP路由条目。
[R1-rip-1]display ip rou
[R1-rip-1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 GigabitEthernet0/0/1
172.16.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
172.16.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
192.168.10.0/24 Direct 0 0 D 192.168.10.254 GigabitEthernet0/0/0
192.168.10.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.10.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.20.0/24 RIP 100 1 D 172.16.1.2 GigabitEthernet0/0/1
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
[R2-rip-1]display ip rou
[R2-rip-1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.2 GigabitEthernet0/0/1
172.16.1.2/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
172.16.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
192.168.10.0/24 RIP 100 1 D 172.16.1.1 GigabitEthernet0/0/1
192.168.20.0/24 Direct 0 0 D 192.168.20.254 GigabitEthernet0/0/0
192.168.20.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.20.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
此时可以ping通pc3和pc4.
3、模拟网络攻击
配置路由器R3作为攻击者,接入公司网络,并配置RIPv2协议,通告该网段。配置完成后查看路由表。
[R3]rip 1
[R3-rip-1]version 2
[R3-rip-1]network 172.16.0.0
[R3-rip-1]
[R3-rip-1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 9 Routes : 9
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.3 GigabitEthernet0/0/0
172.16.1.3/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
172.16.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.10.0/24 RIP 100 1 D 172.16.1.1 GigabitEthernet0/0/0
192.168.20.0/24 RIP 100 1 D 172.16.1.2 GigabitEthernet0/0/0
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
此时可以观察到R3上面已经非法获取到了R1和R2上用户的两个网段路由信息,此时就可以向两个网段发送大量的ping包,导致网络拥堵,形成攻击。
在R3上配置两个用于欺骗的环回接口,并在RIP协议中通告路由信息。配置完成后查看R1路由表。
[R3]interface loopback 0
[R3-LoopBack0]ip address 192.168.10.254 24
[R3-LoopBack0]interface loopback 1
[R3-LoopBack1]ip address 192.168.20.254 24
[R3-LoopBack1]rip 1
[R3-rip-1]version 2
[R3-rip-1]network 192.168.10.0
[R3-rip-1]network 192.168.20.0
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 12
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 GigabitEthernet0/0/1
172.16.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
172.16.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
192.168.10.0/24 Direct 0 0 D 192.168.10.254 GigabitEthernet0/0/0
192.168.10.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.10.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.20.0/24 RIP 100 1 D 172.16.1.2 GigabitEthernet0/0/1
RIP 100 1 D 172.16.1.3 GigabitEthernet0/0/1
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
可以观察到R3也发来了路由更新,因为R2和R3发送RIP更新的cost都是一跳,所以在R1路由表中,目的地址为192.168.20.0的网段有两条等价负载均衡的路径,下一跳分别是R2和R3,这样就会导致去往192.168.20.0的数据包有部分转发给了欺骗路由R3。
4、配置RIPv2简单验证
在路由器R1和R2的GE0/0/1接口配置认证,使用简单验证方式,密码为huawei,两端的密码必须保持一致,否则会导致认证失败。等待一段时间再次查看R1和R2的路由表,可以发现路由表恢复正常,R3的欺骗路由在路由表中消失。
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]rip authentication-mode simple huawei
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]rip authentication-mode simple huawei
[R1]display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 11 Routes : 11
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
172.16.1.0/24 Direct 0 0 D 172.16.1.1 GigabitEthernet0/0/1
172.16.1.1/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
172.16.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/1
192.168.10.0/24 Direct 0 0 D 192.168.10.254 GigabitEthernet0/0/0
192.168.10.254/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.10.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet0/0/0
192.168.20.0/24 RIP 100 1 D 172.16.1.2 GigabitEthernet0/0/1
255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
在路由器R1的GE 0/0/1接口上面抓包可以看得到密码。
5、配置RIPv2 MD5密文验证
在R1和R2的GE 0/0/1接口上删除上一步骤中的简单验证配置,选择使用MD5密文验证方式配置。配置时可以选择MD5密文验证方式的报文格式,usual参数表示使用通用报文格式;nonstandard参数表示使用非标准报文格式(IETF标准),但是必须保证两端的报文格式一致,这里选用通用标准格式。
[R1]interface GigabitEthernet 0/0/1
[R1-GigabitEthernet0/0/1]undo rip authentication-mode
[R1-GigabitEthernet0/0/1]rip authentication-mode md5 usual hauwei
[R2]interface GigabitEthernet 0/0/1
[R2-GigabitEthernet0/0/1]undo rip authentication-mode
[R2-GigabitEthernet0/0/1]rip authentication-mode md5 usual hauwei
这就是密文密码抓包看到的结果,密码是加密的。