一、文章信息

  • 作者:贾溢豪,任罡,刘莹
  • 单位:清华大学
  • 来源:软件学报
  • 时间:2017年

二、基于加密、签名及标记信息

2.1 技术原理

  采用端到端验证的设计结构,其中以密钥协商最为常见。通信双方在事前协商可供彼此验证的校验标识,并将其加载在通信过程中的数据报文内以供接收方进行身份确认。若接收方验证通过,则判定通信对端真实而接收报文;否则,视其为伪造而丢弃报文。

2.2 典型技术实例

2.2.1 SPM(spoofing prevention method)

  SPM的核心思想在于建立安全联盟体系。对于发往安全联盟成员内的数据报文进行伪造源地址过滤检测,并在此基础上对发送的合法源数据报文添加其与目的端事先协商的特定标签 Tag(Source,Destination)供目的端进行真实性检验,以防止安全联盟内外的任何其他自治域伪造本域源地址向此通信对端尝试非法通信。对于发生在联盟外对内的反射式攻击,联盟成员则不具备区分能力,只能争取扩大联盟范围以降低受到联盟外反射攻击的概率。

2.2.2 DISCS(distributed collaboration system)

  DISCS赋予防御技术的最大贡献在于,将防御功能分时空地按需调用执行。DISCS通过在BGP消息中设置可选、可传递的路径属性,以辨识不同的子联盟,当自治域在接收到若干 BGP报文后,可选择加入与之存在利益共识的联盟,并最终将整个互联网划分为多个并行的防御联盟,每个联盟内提供与SPM类似的防御保护,但联盟之间并不建立防御共识。

2.2.3 技术分析

  此类方法应用的安全性在于采用加密技术的安全性,主要技术难点在于设计安全、高效的标签协商方案,即端到端特征协商方案。此外,密钥协商的复杂性使得此类方案在大规模部署时具有较大的维护开销,可扩展性受限,制约了其实用价值。并且,过多的对端校验开销使其方案本身也极易成为DDoS的攻击目标,因而造成网络拥塞甚至服务瘫痪。

  此类方法优势在于不受网络拓扑动态性影响,过滤性能仅与拟采用加密算法的验证特征相关,且不具备固有假阳性,极大地规避了自治域部署的运维风险。

三、基于域间路由信息

3.1 技术原理

  攻击者仅能伪造数据报文的源地址信息而不能控制报文的转发路径,当伪造源地址的数据报文从非法的路由端口进入时,路由器可进行真伪性验证以过滤伪造报文。DPF(distributed packet filtering)通过对各个路由器的各转发端口建立合法源地址绑定列表,并对转发过程中接收到的绑定列表范围之外的源地址报文判伪并丢弃。

3.2  典型技术实例

3.2.1 IDPF(inter-domain packet filtering)

  IDPF通过学习BGP Update报文获取各段前缀的路由方式,通过假定每段前缀的抵达端口与转发端口一致,从而独立地通过监听BGP报文来建立过滤规则。最大优势在于:其免除了自治域间的相互协作,极大地提高了部署的可行性。然而,独立预测使得部署自治域不能获得真实完整的路由信息。

3.2.2 SN(selection notice)

  SN为BGP增加新的选路通知报文:当自治域接收到BGP路由更新时改变路由策略,均需要将新的选路策略通过BGP选路报文告知目的对端,而沿途所经各个自治域均可通过学习选路通知报文为其建立过滤规则。

3.2.3 技术分析

  建立基于域间路由信息的过滤技术需要依赖两项基本因素以建立过滤规则,一是获取自治域号对所持前缀的合法映射,二是获取源端路由选择信息。基于域间路由信息的源地址验证方法能够使伪造报文在传输途中被尽早过滤,从而保护了带宽资源的有效利用,其分布式的验证机制也要求验证规则必须根据路由变化而改变,因此具备较强的自适应性。然而,此类源地址验证技术通常需要广泛的部署才能够取得较佳的过滤性能。

四、基于IP分组转发经历跳数

  HCF(hop count filtering)不同于上述两类源地址验证技术,它巧妙地利用了报文TTL(time-to-live)剩余跳数的可行性范围来确立对端实体的合法性。由于通信双方的数据报文具备较为统一的转发路径,因此也应具备相对稳定的路由跳数。通信接收端在接受报文前对报文已转发跳数进行计算,若对于特定的通信源地址而言,其报文跳数在合理的范围之内,则可相信其在很大程度上未被伪造。  

  HCF的特征在于将验证执行的位置移至通信主机,并未针对域间而进行设计优化。因为路由震荡的存在,HCF仅能保持较粗的过滤粒度,过滤能力相对有限。尽管HCF消除了密码学带来的庞大计算开销,但其并不能取代为其提供的更为严密的安全保障。另一方面,互联网同样不对TTL的伪造执行任何检查,使其验证技术在得到攻击者足够“重视”后可以被彻底绕过。

五、基于自治域间商业互联关系

5.1 技术原理

  BGP协议的背后实质上却是自治域间的商业关系。自治域间的商业关系存在一种最为显著的商业特质:Valley-Free,即无低谷特性。Valley-Free特性使得任何自治域都没有动力去为自身及其Customer以外的任何流量付费。由于商业关系是域间路由流量流向的最终本质,以自治域商业关系为基础的过滤方案相比其他方案更加精炼和简要。由于其仅从商业关系出发构建过滤策略,使得方案的部署将不受任何因域间路由缺陷而产生的固有限制或束缚。

5.2 典型技术实例

  Arbif以自治域商业合作关系为基础,在相邻部署自治域内传递过滤规则。部署自治域在启动防御技术时,其过滤规则生成引擎在其邻居之间建立通信连接,生成初始过滤规则,并根据商业关系导出表选择性地将部分过滤规则传递给特定的部署邻居。部署邻居在接收到新的过滤规则后,判断是否需要更新自身过滤规则表,若更新发生,再决定是否选择性地将部分过滤规则继续传递给具备特定商业关系的部署邻居。在过滤规则更新传播中,规则将以自治域号的形式不断扩散,这要求部署自治域直接相邻,但Arbif却未能对增量部署策略提出好的建议。

5.3 技术分析

  此类方案的难点在于如何获取完整的域间商业关系。一方面,利用现有检测方案获取的商业关系未能保证100%的正确性,仍使得过滤技术有少许假阳性存在;另一方面,由于商业关系是通过BGP获取的,使得过滤系统未能与路由系统完全分离,而降低了防御方案的灵活性和扩展性。

六、源地址验证技术特征归纳

  通过对比可知:基于加密、签名及标记信息的源地址验证技术往往具有较好的过滤性能,极少引入假阳性的风险,但复杂性和开销较高,规模可扩展性较低;而自治域间的商业关系作为互联网域间的本质特征,无论直接利用商业关系或是间接以域间路由信息为基础构建的防御技术均具有更好的灵活性和可扩展性。通过分析、概括各种方案的技术特征,域间源地址验证技术面临的挑战主要包括以下 4 个方面:

  • 协议设计存在缺陷
  • 自治域间合作困难
  • 协议开销过重
  • 缺乏部署激励

  

互联网自治域间IP源地址验证技术综述的更多相关文章

  1. 【转】网络中的AS自治域

    1. 什么是AS自治域? 全球的互联网被分成很多个AS 自治域,每个国家的运营商.机构.甚至公司等都可以申请AS号码,AS号码是有限的,最大数目是65536.各自分配的IP地址被标清楚属于哪个AS号码 ...

  2. [LeetCode] IP to CIDR 将IP地址转为CIDR无类别域间路由

    Given a start IP address ip and a number of ips we need to cover n, return a representation of the r ...

  3. Ip地址和子网掩码和CIDR无间别域间路由

    开始,网络的制定者将网络划分为A,B,C三种网络,想这个样子: A类网:  xxx.0.0.0         子网掩码:255.0.0.0 xxx.0.0.0/8 //后面的数字代表网络地址的字段 ...

  4. RIP、OSPF、BGP、动态路由选路协议、自治域AS

    相关学习资料 tcp-ip详解卷1:协议.pdf http://www.rfc-editor.org/rfc/rfc1058.txt http://www.rfc-editor.org/rfc/rfc ...

  5. IP组播技术

      1  概述 1.1  产生背景 传统的IP通信有两种方式:一种是在源主机与目的主机之间点对点的通信,即单播:另一种是在源主机与同一网段中所有其它主机之间点对多点的通信,即广播.如果要将信息发送给多 ...

  6. IP组播技术介绍及实现例子

    引 言 近年来,随着Internet的迅速普及和爆炸性发展,在Internet上产生了许多新的应用,其中不少是高带宽的多媒体应用,譬如网 络视频会议.网络音频/视频广播.AOD/VOD.股市行情发布. ...

  7. 转载-lvs官方文档-LVS集群中的IP负载均衡技术

    章文嵩(wensong@linux-vs.org) 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集群中实现的三种IP负载均衡技术(VS/NAT.VS/TUN ...

  8. LVS集群中的IP负载均衡技术

    LVS集群中的IP负载均衡技术 章文嵩 (wensong@linux-vs.org) 转自LVS官方参考资料 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集 ...

  9. TCP/IP笔记(五)IP协议相关技术

    IP旨在让最终目标主机收到数据包,但是在这一过程中仅仅有IP时无法实现通信的.必须还要又能够解析主机名称和MACdivide功能,以技术包在发送过程中异常情况处理的功能. 这篇主要介绍下DNS.ARP ...

随机推荐

  1. Python3.5 学习二十四

    本节课程大纲: -------------------------------------------------------------------------------------------- ...

  2. 写vue项目时候 零星的笔记

    1,挂载也可以用 .$mount() 2,子组件中通过this.$root拿到实例的数据.截图中是子组件中

  3. Linux学习笔记-基本操作4

    1. gdb调试2. makefile的编写3. 系统IO函数 1. gdb调试:        1. 启动gdb + 可执行文件        2. 查看代码:                l== ...

  4. typescript-koa-postgresql 实现一个简单的rest风格服务器 —— 集成 koa

    接上文 1.安装 koa yarn add koa koa-router koa-static yarn add @types/koa @types/koa-router @types/koa-sta ...

  5. odoo开发笔记 -- 权限机制

    转两篇关于权限的2篇文章,加深这方面的认识.注:后面附有原作者地址,希望不构成侵权. https://www.cnblogs.com/crazyguo/p/6999408.html 第一篇:http: ...

  6. Centos 7 开启BBR

    # 升级内核 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elr ...

  7. 机器学习基础——模型参数评估与选择

    当看过一些简单的机器学习算法或者模型后,对于具体问题该如何评估不同模型对具体问题的效果选择最优模型呢. 机器学习分类 1. 经验误差.泛化误差 假如m个样本中有a个样本分类错误 错误率:E = a / ...

  8. Redis学习系列六ZSet(有序列表)及Redis数据结构的过期

    一.简介 ZSet可以说是Redis中最有趣的数据结构了,因为他兼具了Hash集合和Set的双重特性,也是用的最多的,保证了value值的唯一性的同时,,同时又保证了高性能,最主要的是还可以给每个Va ...

  9. TCP滑动窗口

    TCP利用滑动窗口实现流量控制基本的数据单位不是数据段,而是字节 滑动窗口本质上是描述接受方(本地)的TCP数据报缓冲区大小的数据,发送方根据这个数据来计算自己最多能发送多长的数据.如果发送方收到接受 ...

  10. Nginx缓存配置之手动清除缓存

    访问我的博客 前言 前文介绍了利用 nginx 的 nginx_ngx_cache_purge 模块来实现缓存功能,并设置了缓存时间为一天. 但是如果前端修改了页面,比如首页,由于 Nginx 缓存的 ...