忆龙2009:URPF的处理流程
2009-12-04 20:37
309 查看
URPF(Unicast Reverse Path Forwarding,单播反向路径转发)的主要功能是用于防止基于源地址欺骗的网络攻击行为。
源地址欺骗攻击为入侵者构造出一系列带有伪造源地址的报文,对于使用基于IP地址验证的应用来说,此攻击方法可以导致未被授权用户以他人身份获得访问系统的权限,甚至是以管理员权限来访问。即使响应报文不能达到攻击者,同样也会造成对被攻击对象的破坏。
在Switch A上伪造源地址为2.2.2.1/8的报文,向服务器Switch B发起请求,Switch B响应请求时将向真正的“2.2.2.1/8”发送报文。这种非法报文对Switch B和Switch C都造成了攻击。
URPF技术可以应用在上述环境中,阻止基于源地址欺骗的攻击。
对于广播地址,直接予以丢弃。
对于全零地址,如果目的地址不是广播,则丢弃。(源地址为0.0.0.0,目的地址为255.255.255.255的报文,可能是DHCP或者BOOTP报文,不做丢弃处理。)
(2) 如果报文的源地址在交换机的FIB表中存在,反向查找报文出接口,若其中至少有一个出接口和报文的入接口相匹配,则报文通过检查;否则报文将被拒绝。(反向查找是指查找以该报文源IP地址为目的IP地址的报文的出接口)
(3) 如果报文的源地址在交换机的FIB表中不存在
如果配置了缺省路由,只要缺省路由的出接口与报文的入接口一致,则报文将通过URPF的检查,进行正常的转发;如果缺省路由的出接口和报文的入接口不一致,则报文将拒绝。
如果没有配置缺省路由,该报文将被拒绝。
源地址欺骗攻击为入侵者构造出一系列带有伪造源地址的报文,对于使用基于IP地址验证的应用来说,此攻击方法可以导致未被授权用户以他人身份获得访问系统的权限,甚至是以管理员权限来访问。即使响应报文不能达到攻击者,同样也会造成对被攻击对象的破坏。
在Switch A上伪造源地址为2.2.2.1/8的报文,向服务器Switch B发起请求,Switch B响应请求时将向真正的“2.2.2.1/8”发送报文。这种非法报文对Switch B和Switch C都造成了攻击。
URPF技术可以应用在上述环境中,阻止基于源地址欺骗的攻击。
URPF处理流程:
(1) 首先检查源地址合法性。对于广播地址,直接予以丢弃。
对于全零地址,如果目的地址不是广播,则丢弃。(源地址为0.0.0.0,目的地址为255.255.255.255的报文,可能是DHCP或者BOOTP报文,不做丢弃处理。)
(2) 如果报文的源地址在交换机的FIB表中存在,反向查找报文出接口,若其中至少有一个出接口和报文的入接口相匹配,则报文通过检查;否则报文将被拒绝。(反向查找是指查找以该报文源IP地址为目的IP地址的报文的出接口)
(3) 如果报文的源地址在交换机的FIB表中不存在
如果配置了缺省路由,只要缺省路由的出接口与报文的入接口一致,则报文将通过URPF的检查,进行正常的转发;如果缺省路由的出接口和报文的入接口不一致,则报文将拒绝。
如果没有配置缺省路由,该报文将被拒绝。
相关文章推荐
- 忆龙2009:URPF的处理流程
- 忆龙2009:PPPOE工作流程
- 忆龙2009:webBrowser事件处理
- 忆龙2009:PORTAL认证流程详解
- 忆龙2009:TACACS消息交互流程
- 忆龙2009:TACACS消息交互流程
- 忆龙2009:OPENGL处理帧刷新
- 忆龙2009:PPPOE工作流程
- 忆龙2009:深入BREW消息处理机制
- 忆龙2009:PORTAL认证流程详解
- 忆龙2009:深入BREW消息处理机制
- 忆龙2009:详解SSH的工作流程
- 忆龙2009:webBrowser事件处理
- 忆龙2009:PPPOE工作流程
- Spring MVC请求处理流程及源码分析
- 使用batch批处理做目录及流程选择
- 忆龙2009:三阶魔方的纯数学模型
- (C#)中断程序流程,处理事件(委托,事件,Lambda表达式)-1/3
- Android Low Battery 低电量处理流程
- 【Android休眠】之Android对PowerKey事件的处理(1)代码流程