如何避免IPv6“友邻发现”威胁?

如果企业正着手准备部署IPv6,那么一定要了解“友邻发现(ND)”及其漏洞。

IPv6友邻发现是IPv6协议套件的一个核心部件。它可用于IPv6解析和IPv6无状态地址自动配置。本文主要介绍各种基于友邻发现(ND)的攻击,以及阐述IT管理员如何使用一个开源IPv6工具套件来评估所有可能受此类问题影响的安全设备的有效性。

IPv6友邻发现(ND)是IPv6协议套件的一个关键组件,它部署在IPv6节点,包含许多的功能:

· IPv6地址解析

· 无状态地址自动配置

· 重复地址检测

· 友邻中断检测

IPv6地址解析包括将一个友邻节点的IPv6地址映射到相应的链路层地址上。在IPv4中,执行相同功能的是地址解析协议(Address Resolution Protocol, ARP)。无状态地址自动配置(Stateless address autoconfiguration, SLAAC)包括发现邻近路由器和获取用于建立IPv6连接的网络配置信息。重复地址检测(Duplicate address detection, DAD)是一个在部署一个IPv6网络通信地址之前用于检测重复IPv6地址的功能。最后,友邻中断检测(NUD)可用于评估一条通向相邻节点路径的可达性。在遇到节点中断时,可以部署一条替代路径。

友邻发现使用互联网控制消息协议v6消息控制它的所有功能;它不同于ARP,后者直接运行在底层的链路层协议之上。虽然这种设计方式看起来“更整洁一些”(因为ND不会绑定到任何一种链路层技术上),但是这里也包含一些重要影响。例如,任何用于监控ND流量或防御ND攻击的设备或技术都必须应对IPv6数据包的多样性及其复杂性。又例如,IPv6碎片和IPv6扩展头信息就被证实可能会影响任何ND安全性、监控设备或技术。

IPv6地址解析及其工作方式

当IPv6数据包发送到本地链路时,一个相邻节点的IPv6地址(可以是最终目标或中间路由器)需要映射到相应的链路层地址。

想要搞坏地址解析功能的最简单方法是部署nDisc6 IPv6诊断工具的ndisc6工具(开源)。ndisc6工具可以破坏两个功能:解析得到的IPv6地址和用于执行地址解析的网络接口。例如,它可能将IPv6地址fc00:1::1解析为下面的链路层地址: 

图1:解析一个IPv6地址

一个IPv6实现在一个名为友邻发现缓存(与之对应的是IPv4的ARP缓存)中保存着IPv6地址到链路层地址的映射列表。在手工评估一个节点是否下载了错误地址映射(可能由攻击造成的错误)的过程中,检查友邻缓存是非常有用的。所有IPv6实现都提供了用于检测友邻缓存的方法或工具。例如,在GNU/Linux系统中,使用“ip”命令就可以检查友邻缓存: 

 

图2:检查友邻发现缓存

结果中每一行包含一个IPv6地址、友邻所在的网络接口、相应的链路层地址、表示地址是否指向一个路由器的关键字(router)和这个记录的状态(例如,友邻是否可达、映射信息是否失效等)。

在BSD系列操作系统中,则可以使用ndp检查友邻缓存的内容: 

 

图3:在BSD系统中检查友邻缓存

注意,虽然上面的结果与Linux有一些不同,但是两者的信息是基本一致的。

如果有攻击者能够在友邻缓存中加入一些非法映射,那么他就能够将本地数据包随意引流到任意节点,然后执行中间人(MITM)攻击或分布式拒绝服务(DDoS)攻击。决定最终的攻击属于MITM还是DDoS的因素是受攻击地址映射的目标链路层地址:如果攻击者能够将受攻击的IPv6地址映射到自己的链路层地址,那么他执行的就是MITM攻击。如果他将受攻击地址映射到一个不存在的链路层地址,那么这就是DDoS攻击。

另一个诊断工具是SI6 Networks的IPv6 Toolkit,它是一个开源IPv6安全评估和故障修改综合工具,它支持各种操作系统(包括GNU/Linux、BSD和Mac OS)。它包含许多实用工具,如可用于发送伪造友邻广告(NA)消息的na6工具。

na6可用于执行前面提到的MITM或DDoS攻击。例如,如果将通向IPv6地址fc00:1::1的所有流量转发到链路层地址11:22:33:44:55:66,攻击者可以执行下面的na6命令:

na6 -i eth0 -W fc00:1::1 -E 11:22:33:44:55:66 -L -v –o

按前面介绍的方法手工检查友邻缓存,就可以看到这个工具对于ND缓存的攻击效果。

正如前面所提到的,攻击者可能利用IPv6扩展头和/或碎片去回避安全控制。因此,如果攻击者想要绕开一些无法处理整个IPv6头信息的安全设备,那么他可以执行下面的命令,发送一些恶意NA消息:

na6 -i eth0 -W fc00:1::1 -E 11:22:33:44:55:66 -L -v -o

-u 64

显然,这个命令只是在前一条命令的基础上添加了选项“-u 64”,它的作用是在规定的IPv6头信息之后插入一条64字节的目标选项头信息。

最后,理论上ND消息(包括NA消息)都采用了碎片机制。虽然RFC 6980禁止在ND中使用碎片,但是一些未更新的实现可能仍然接受这些数据包。在评估一个IPv6网络或实现时,我们应该检查是否可以使用带有IPv6碎片的ND去绕开安全控制。这里有两个不同的测试例可以使用:发送一个IPv6原子碎片格式的NA消息和发送一个超大IPv6头信息链的NA消息。

RFC 6946定义的IPv6原子碎片实际上是一些包含偏移值为0和MF(更多碎片)位为0的IPv6碎片头信息的IPv6数据包——即包含一个碎片头但只有一个碎片的数据包。执行下面的命令,就可以在na6工具中发送原子碎片格式的数据包:

na6 -i eth0 -W fc00:1::1 -E 11:22:33:44:55:66 -L -v -o

-y 500

其中,选项“-y 500”表示工具会将友邻广告消息分割为500字节为单位的碎片——但是由于整个NA消息远远小于500字节,所以最终发送的消息将采用原子碎片格式。

第二个测试例是一个超大IPv6头信息链。如果一个数据包已经分割为碎片,并且第一个碎片不包含所有协议头信息,包括从第一个规定的IPv6头信息到最上层协议(如传输协议头信息),那么这个数据包就是一个超大IPv6头信息链。下图显示的就是一个超大IPv6头信息链。 

 

图4:一个超大IPv6头信息链

RFC 7112定义了超大IPv6头信息链,反对使用这种头信息,并且明确规定在遇到时允许丢弃相应的数据包。然而,一些过时的IPv6实现可能仍然接受这些数据包,因此不可能认为受攻击节点一定会丢弃这些数据包。使用na6工具,执行下面的命令就可以以超大IPv6头信息链的格式发送NA消息:

na6 -i eth0 -W fc00:1::1 -E 11:22:33:44:55:66 -L -v -o

-u 500 -u 100 -y 400

这实际上就是前面使用的同一个攻击命令,只是增加了两个目标选项头信息(一个是500字节,后面紧跟一个100字节的头信息),以及一个将NA消息分割为最大400字节碎片的请求(“-y 400”选项)。因此,第一个碎片的大小不足以传输整个IPv6头信息链,因此IPv6头信息链会被分割为两个碎片。

作为IPv6网络安全评估的一部分,我们可以执行这里的每一个测试例,从而评估所部署的安全控制措施是否能应对这些攻击方式。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/132264.html<

(0)
运维的头像运维
上一篇2025-02-26 22:39
下一篇 2025-02-26 22:41

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注