课题研究 IPv6演进安全 子课题02 · 第5页 / 共8页
02子课题 · 邻居发现协议(NDP)安全与防护

NDP安全与防护第5页:检测、监测与验证体系建设

防护会被配置漂移、旁路端口与新型绕过静默瓦解——检测体系是NDP安全的"神经系统"。本页建立四层检测框架:数据源层(交换机ND检查日志、SPAN/TAP镜像、主机侧观测)、信号层(八大类NDP异常检测规则)、分析层(Suricata/Snort/Zeek/Wireshark工具链与欺骗诱捕)、行动层(SIEM关联、演练验证与指标度量)。核心设计原则是"报文级+内容级+状态级+行为级"四维并进:不仅发现伪造RA,更要发现RDNSS基线漂移、网关列表异常变更与中间人维持流量。最后给出控制有效性验证方法与演练场景设计,使检测能力可被度量、可被审计。

NDP异常检测Suricata / Snort IPv6ZeekWiresharkndpmon蜜罐/诱饵SIEM关联MTTD指标研究状态:研究中
所属专题互联网基础设施安全 › IPv6演进安全
目标受众网络与安全运维工程师、SOC与态势感知团队、安全研究人员、攻防演练组织者
全文结构8页:总览 → 协议机制 → 攻击分类 → 防护体系 → 检测监测 → 案例实证 → 风险治理 → 实践路线

01 · 检测体系框架与数据源

1.1 四层检测框架

层次组成产出
D1 数据源层接入交换机RA-Guard/ND检测丢弃日志与端口角色记录;关键VLAN的SPAN/TAP镜像流量;主机侧NDP事件日志(邻居缓存变更、DNS配置变更)原始事件流(报文级+设备级+主机级)
D2 信号层八大类异常规则(§02):伪造RA、RDNSS漂移、网关移除、DAD异常、NA投毒、耗尽洪泛、重定向滥用、协议栈畸形报文单点告警(带上下文字段)
D3 分析层工具链(§03)+欺骗诱捕(§04)+关联分析(同源MAC跨端口、同一时间窗多类信号共现)高置信事件(降噪后)
D4 行动层SIEM工单、自动化处置(端口关停脚本)、演练验证与度量报告(§05-§07)处置闭环与能力度量

1.2 数据源布点原则

  • 每个接入VLAN至少一个观测点:NDP攻击是链路本地行为——只在核心镜像无法看到链路层细节(NS/NA/RA的完整上下文)。
  • 设备日志与流量镜像双轨:RA-Guard丢弃记录证明"防护在工作",流量镜像证明"链路上实际发生了什么"——两者互证,缺一不可。
  • 主机侧补齐盲区:交换机看不到加密后的影响(DNS是否被实际劫持使用),需在样本主机采集DNS解析器列表变更(如resolv.conf/系统DNS配置变更事件)作为后果验证信号。

02 · NDP异常检测规则库(八类)

编号检测规则判定逻辑(概念级)对应攻击主要误报源
R-01非受信RA源RA(Type 134)源MAC/源端口不在受信任网关清单;或链路本地源地址不在网关地址段规划内AT-1/5新增路由器未登记
R-02RDNSS/DNSSL基线漂移RA携带的RDNSS/DNSSL集合与受控基线存在非规划差异(新增/替换/删除解析器或搜索域)AT-1投毒合法DNS变更未同步基线
R-03M/O标志与网络规划不符RA的M/O标志组合与网段配置策略基线不一致AT-1翻转网段策略调整未同步
R-04网关移除事件捕获Lifetime=0的RA;或主机默认路由器列表条目异常消失AT-5移除真实网关重启/维护窗
R-05DAD应答异常同一链路层地址对多个不同目标地址应答DAD;DAD应答速率超基线AT-3代理应答类工具
R-06NA投毒特征非请求式NA(Solicited=0)以组播发送;NA频率超NUD基线;NA宣告的目标地址与源链路层地址映射关系在受控绑定表中不存在;周期性NA刷新模式AT-2某些合法主机的主动宣告行为
R-07NDP耗尽/洪泛单位时间NS/NA/RA报文数超端口基线;INCOMPLETE条目占比超阈值(设备侧);随机源地址模式检测AT-4/5批量开机风暴
R-08重定向滥用Redirect(Type 137)源非当前默认路由器;Redirect目标链路层地址不在地址解析表中AT-6合法路由器优化行为(罕见)

规则设计原则:①每条规则必须携带上下文字段(源MAC、源链路本地地址、入端口、VLAN、时间窗、RA内容摘要),否则无法支撑溯源与处置;②R-02/R-03属于"基线比对型"规则,其质量取决于基线管理流程(变更同步SOP),是运营问题而非技术问题;③所有规则应先在镜像流量上"只记录不告警"运行2—4周以建立正常性基线,再启用告警(压制开局误报风暴)。

报文级规则示例(Suricata/Snort通用语法,概念级——阈值为占位示例,落地前必须按本网段基线校准):

# R-01 非受信源RA:链路上所有RA(itype 134)均触发记录,在SIEM侧与网关清单比对
alert icmpv6 any any -> $HOME_NET any (msg:"NDP R-01 RA observed - verify trusted source"; \
  itype:134; icode:0; classtype:attempted-admin; sid:1000001; rev:1;)

# R-04 网关移除:Lifetime=0的RA具有立即可见性危害(lifetime字段位于RA第7-8字节)
alert icmpv6 any any -> $HOME_NET any (msg:"NDP R-04 RA lifetime-zero gateway removal"; \
  itype:134; icode:0; content:"|0000|"; offset:6; depth:2; \
  classtype:attempted-dos; sid:1000002; rev:1;)

# R-07 NDP洪泛:单位时间RA超阈值(配合交换机端口速率统计交叉验证)
alert icmpv6 any any -> $HOME_NET any (msg:"NDP R-07 RA flood"; \
  itype:134; icode:0; detection_filter:track by_dst, count 10, seconds 10; \
  classtype:attempted-dos; sid:1000003; rev:1;)

注:以上为概念演示规则(字段与阈值均为示意),R-02/R-03/R-06等基线比对型规则须在SIEM侧以日志关联实现;规则基于ICMPv6类型码(itype)与载荷内容(content/offset/depth)匹配,落地前须在镜像点验证本环境报文形态并校准阈值。

03 · 开源工具链实现

工具NDP检测相关能力典型用法
Suricata / SnortIPv6/ICMPv6解码与规则匹配;Emerging Threats等公开规则集含IPv6异常事件镜像流量旁路检测,承载R-01/R-04/R-07/R-08的报文级规则
ZeekIPv6协议分析器输出结构化日志(含ICMPv6/ND事件日志)长期流量基线学习与异常挖掘(R-06周期性模式识别)
Wireshark / tshark显示过滤器(icmpv6.type==134等)、字段提取、pcap取证事件复盘、规则开发验证、现场取证
ndpmon专用NDP监测守护进程:监听链路上的RA/NS/NA异常(流氓路由器、异常宣告)并告警小型网络低成本部署点监测
THC-IPv6(防御性使用)detect-new-ip6(新上线主机监测)、alive6(活跃主机发现)与攻击面无关的资产活性测绘(授权环境)
交换机自身特性RA-Guard/ND检测丢弃计数、SAVI绑定表变更日志、端口ND报文速率统计D1设备级数据源主力

实现路径建议:起步阶段(资源受限)以"交换机日志集中+ndpmon/TAP抽样+Wireshark取证"最小闭环起步;成熟阶段升级为"Suricata/Zeek全量镜像+SIEM关联"。工具选型服从数据可得性——没有镜像点的组织,先解决布点再谈规则。

04 · 欺骗与诱捕(主动防御)

4.1 设计思路

NDP攻击的探测阶段(DAD监听、活跃主机发现、现有网关/RDNSS侦察)必然在链路上留下交互痕迹——防守方可布设"已知答案的探针"将被动监听升级为主动诱捕:

  • 诱饵DAD探测:监测节点周期性对精心选择的未使用地址执行DAD——任何应答即为DAD攻击(R-05)的直接证据,且应答者地址、MAC、端口全量可得。
  • 金丝雀RDNSS预期:在管理域内保持一组"永不出现的DNS解析器"白名单立场,任何RA宣告其替代集即高置信告警。
  • 蜜罐主机:低交互IPv6蜜罐(无真实业务、地址不对外发布)收到任何NS解析请求/NA定向宣告即为链路侦察信号——正常网络中无人解析它。

4.2 边界与合规

诱捕仅产生观测数据,不对攻击者发起任何主动交互(不反向探测、不诱导连接)——符合防御研究合规边界;蜜罐地址规划须与生产地址段隔离标识,避免污染资产台账(与子课题04测绘协同)。

05 · 控制有效性验证方法(回答KQ-1/KQ-2)

5.1 授权验证流程

  1. 授权与环境隔离:书面授权、专用实验VLAN/演练沙箱(迪妙攻防演练体系),不得在生产链路实施。
  2. 基线快照:记录验证前主机默认路由/DNS配置/邻居缓存、交换机绑定表、规则告警基线。
  3. 控制开启态测试:依次执行攻击载荷(THC-IPv6/SI6工具包,概念级:fake_router6/dos-new-ip6/ndpexhaust6/parasite6/redir6),记录:是否被阻断(设备日志)、是否被检测(D2告警)、检出耗时。
  4. 控制关闭态对照:同一载荷在防护关闭的对照组执行,确认影响面成立(验证测试有效性,避免"本来就没影响"的假阴性结论)。
  5. 指标计算:阻断率=被阻断载荷数/总载荷数;检出率=产生告警载荷数/总载荷数;MTTD=载荷发起至告警产生的中位时长;误报率=验证期间误报告警/总告警。

5.2 度量指标定义

指标定义目标参考(自定)
RA-Guard覆盖率启用RA-Guard的接入端口数/接入端口总数≥99%(例外端口清单化)
阻断率授权测试中RA类载荷被接入层阻断的比例100%(Rogue RA四变体)
检出率全部六类攻击载荷产生高置信告警的比例≥95%(AT-2合法地址形态可为下限)
MTTD攻击发起到高置信告警中位时长分钟级
误报率误报告警/总告警(按月)≤10%并持续下降
基线漂移处置时长RDNSS/网关基线告警到变更单闭环时长≤24小时

注:目标值为工程参考,组织应按资产重要性自定;关键网段(数据中心管理面、财务终端网段)应显著从严。

06 · SIEM集成与关联分析

6.1 日志字段规范

所有NDP事件进入SIEM前应规范化为统一字段:event_type(ra_spoofed/rdnss_drift/gateway_removed/dad_anomaly/na_poison/exhaust/redirect_abuse)、src_mac、src_lladdr、ingress_port、vlan、payload_summary(RDNSS列表/PIO/Preference/Router Lifetime等关键内容摘要)、action(blocked/permitted/logged)、confidence(规则置信度)。

6.2 关联规则示例(概念级)

  • 攻击链关联:同一源MAC在10分钟内先后触发R-01(伪造RA)+主机DNS变更事件(后果信号)→ 升级为"疑似链路中间人已生效"高置信事件。
  • 横向关联:同一源MAC跨VLAN出现(配合802.1X会话记录)→ 物理移动或MAC伪造排查。
  • 双栈对照:IPv4侧同时出现ARP异常(DAI日志)+IPv6侧NDP异常 → 攻击者不区分协议栈的横向行为画像。
  • 降噪关联:R-04(网关移除)与变更管理工单时间窗匹配即降级为"计划内变更"。

6.3 与态势感知联动

NDP事件流接入迪妙态势指标体系(子课题06成熟度框架):按月输出"链路安全事件热力图"(网段×攻击类型×处置状态),支撑管理决策与年度评估。

07 · 攻防演练场景设计

场景演练科目载荷(概念级)成功标准(蓝队)
ND-1伪造RA发现与处置受控fake_router6等价载荷,投递至演练VLAN接入层阻断+告警+源定位+端口处置全流程≤30分钟
ND-2RDNSS投毒猎杀仅注入RDNSS变更的受控RA(网关不变)内容级规则(R-02)命中;样本主机DNS变更被后果信号捕获
ND-3Toxic Proxies链复现(授权沙箱)RA+WPAD组合链链路环节(RA)与主机环节(WPAD禁用)双重拦截
ND-4DAD攻击韧性与新设备入网受控DAD应答干扰新设备入网成功率≥基线;R-05告警;SAVI联动处置
ND-5NDP耗尽抗压受控ndpexhaust6等价低速载荷合法业务无感;INCOMPLETE比例阈值告警触发;扩容/参数预案启动

注:全部科目在授权演练沙箱执行;载荷细节按"仅蓝队可见"原则管理;演练结果回写第8页成熟度评估。

08 · 本节参考来源(第5页)

[1]

Suricata开源IDS/IPS:suricata.io;Snort:snort.org;Zeek网络分析框架:zeek.org;Wireshark:wireshark.org。

[2]

ndpmon(NDP监测守护进程,开源项目,文档与代码库可检索于公开源码托管平台)。

[3]

THC-IPv6(检测性工具detect-new-ip6/alive6):github.com/vanhauser-thc/thc-ipv6;SI6 Networks IPv6工具包:si6networks.com/tools/ipv6toolkit。

[4]

IETF RFC 6583(NDP耗尽检测阈值思路来源):rfc-editor.org/rfc/rfc6583;RFC 9098(监测与审计运营要求):rfc-editor.org/rfc/rfc9098。

[5]

MITRE ATT&CK 战术知识库(演练场景设计参考框架):attack.mitre.org。