VPN:配置抗重放功能
2021-11-09
来源:计算机与网络安全
只有IKE动态协商的SA才支持抗重放功能,手工方式生成的SA不支持抗重放功能。因为手工方式建立的SA是永久不老化的,而只有在SA重新建立时,AH或ESP报文的序列号才会重新开始计算,这需要IKE协议的支持。
重放报文是指已经处理过的报文,报文的序列号与原来的某个报文一样。IPSec通过滑动窗口(抗重放窗口)机制检测重放报文。AH和ESP协议报文头中带有32比特序列号,在同一个SA内,报文的序列号依次递增。当设备收到一个经过认证的报文后,如果报文的序列号与已经解封装过的某个报文的序列号相同,或报文的序列号较小且不在滑动窗口内,则认为该报文为重放报文。
由于对重放报文的解封装无实际作用,并且解封装过程会消耗设备大量的资源,导致业务可用性下降,实际上构成了拒绝服务DoS(Denial of Service)攻击。通过使能IPSec抗重放功能,将检测到的重放报文在解封装处理之前丢弃,可以降低设备资源的消耗。但在某些特定的环境下(如当网络出现拥塞时或报文经过QoS处理后),业务数据报文的序列号顺序可能与正常的顺序差别较大,虽然并非有意的重放攻击,但其会被抗重放检测认为是重放报文,导致业务数据报文被丢弃。这种情况下就可以通过关闭全局IPSec抗重放功能来避免报文的错误丢弃,也可以通过适当地增大抗重放窗口的宽度,来适应业务正常运行的需要。
使用较大的抗重放窗口宽度会引起系统增大的开销,导致系统性能下降,因此与抗重放功能用于降低系统在接收重放报文时的开销的初衷不符,因此建议在能够满足业务运行需要的情况下,使用较小的抗重放窗口宽度。
抗重放功能可以基于全局配置,也可以在IPSec安全策略或策略模板下配置。全局IPSec抗重放功能的配置对所有已创建的IPSec安全策略生效,针对个别IPSec安全策略配置的抗重放功能仅在对应的安全策略下生效,不再受全局配置的影响。具体的抗重放功能配置步骤见表1。
表1 配置抗重放功能的步骤