CVE-2026-80844:Linux内核IPv6AH6路由头重排越界漏洞

admin 2026-09-23 06:30:38 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: CVE-2026-80844是Linux内核IPv6AH6路由头重排越界漏洞,可致内核越界读写、崩溃或本地提权。触发需原始IPv6hdrincl套接字及AH6策略,非特权用户命名空间可提升风险。上游已修复,建议升级内核、禁用非特权用户命名空间及卸载ah6模块,并加强监控。 综合评分: 85 文章分类: 漏洞分析,应急响应,安全建设


CVE-2026-80844:Linux 内核 IPv6 AH6 路由头重排越界漏洞

deadbeef deadbeef

deadbeef

2026年9月21日 10:08 四川

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

一、漏洞简介

1.1 漏洞原理

Linux 内核在计算/校验 ICV(完整性校验值) 之前,会调用 ipv6_rearrange_rthdr() 对 IPv6 路由头(Routing Header,Type 0 及同类结构)中的地址做重排。它默认假定两件事是成立的:

  • 路由头的 hdrlen 所描述的地址数量 ≥ segments_left;
  • 即地址指针不会向后移动超过实际存在的地址区。

但这两条“不变量”对原始 IPv6 HDRINCL 报文并不成立。攻击者可以构造一个 hdrlen=2(按标准只描述 1 个地址)、但 segments_left 被填到 255 的路由头。代码按 segments_left 反向推算地址指针,会把指针向前(反向)移动约 255×16 = 4064 字节,随后将 4064 字节 的长度传入 memmove(),从而引发:

  • 内核堆/报文缓冲区的越界读 + 越界写(CWE-787 / CWE-119);
  • 内存损坏、ICV 校验逻辑异常;
  • 典型触发后果是内核 oops / panic(DoS);在特定内存布局下可进一步用于本地提权(LPE)。

修复方式:上游在 AH6 的输入/输出路径上,先校验 segments_left 与 hdrlen 所表示的地址数是否一致;畸形包直接进入错误分支,不再执行指针算术和 memmove()。

1.2 漏洞要点小结

| 项目 | 内容 | | — | — | | 漏洞组件 | Linux 内核 net/ipv6/ah6.c 相关 XFRM AH6 处理,涉及 ipv6_rearrange_rthdr() 路径 | | 漏洞类型 | 内核内存越界(读+写),潜在本地提权 / 内核崩溃 | | 触发前提 | 原始 IPv6 HDRINCL 套接字 + AH6 策略参与报文处理 | | 典型后果 | 内核 oops / panic(DoS),特定内存布局下可本地提权 |


二、利用条件

2.1 本地提权(主要风险)

  1. 普通用户能够创建/使用网络命名空间,尤其是开启了非特权用户命名空间(unprivileged userns);
  2. 能通过原始套接字 / HDRINCL 构造畸形 IPv6 路由头,或在本机 AH6 策略处理的报文路径上注入;
  3. 内核启用了 IPv6、XFRM/IPsec AH6(含 ah6、xfrm 相关代码);
  4. 已有研究者在 2026-09 公开 PoC,声称可在特定内核构建下实现本地到 root 提权;但该 PoC 对内核版本/内存布局敏感,并非通用的一键提权。

2.2 远程 / 网络侧(主要体现为 DoS)

  1. 目标作为 IPv6 路由器/网关,对入向流量套用 IPsec AH 传输模式;
  2. 攻击者可向该节点发送携带畸形 IPv6 路由头的 AH 报文;
  3. 极端条件下研究者称在实验室中做过“远程 root”,但依赖前期的内存 grooming,实际公网利用难度极大;通常仍按“远程内核崩溃 / 拒绝服务”评估。

💡 若主机完全不用 IPv6 IPsec AH、不加载 ah6、不做 IPv6 路由转发,则实际可达性会大幅下降。


三、影响范围

3.1 组件与类型

  • 受影响组件:Linux 内核 net/ipv6/ah6.c 相关 XFRM AH6、ipv6_rearrange_hdr 路径;涉及原始 IPv6 HDRINCL 与 AH 输入/输出。
  • 漏洞类型:内核内存越界,潜在本地提权、内核崩溃。

3.2 漏洞评分(各方口径略有差异)

  • Oracle / 部分发行商:CVSS v3.1 7.8,AV:L/AC:L/PR:L/UI:N,机密/完整/可用全高(按“本地低权”计算);
  • SUSE:同样为 v3.1 7.8 本地重要级;另补充 v4.0 8.3、AV:A(相邻网络)场景;
  • NVD:目前已收录,但 NIST 基础分尚未给出,目前仅引用上游描述。

3.3 发行版状态(已核实部分)

  • 上游修复:修复 commit 如 7bad4bda74dc…(在 7.3-rc1 引入),stable 分支已做多个 backport;

  • Debian:

  • bookworm:6.1.176 / 安全 6.1.180 —— vulnerable

  • trixie:6.12.94 / 安全 6.12.107 —— vulnerable

  • forky:7.1.12 —— vulnerable;sid:7.1.13-1 fixed

  • Oracle Linux UEK:7/8/9/10 相关 ELSA-2026-500328/329/330 系列,2026-09-17 出补丁;

  • SUSE:整体 pending;Tumbleweed kernel-source ≥ 7.2.5-1 已列为修复,其余企业版以 SUSE 公告产品矩阵为准;

  • Azure Linux 3:kernel 受影响记录到 6.6.150.1-1(OSV 导入,具体修复版见其公告)。

⚠️ 其余发行版(Ubuntu / RHEL / CentOS Stream / Gentoo 等)需分别查询各自安全跟踪器。该 CVE 属于内核网络子系统,理论上所有启用 IPv6 AH6 的版本都处于关注范围,但是否修复取决于受影响版本的内核小版本与 backport 进度。


四、本地复现

  • 复现环境:Linux ubuntu24-04 6.17.0-35-generic #35~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 19:30:42 UTC 2026 x86_64 GNU/Linux


五、修复与加固建议

  1. 及时升级内核:将内核升级到包含修复 commit 的版本(或对应的发行版安全补丁);
  2. 关注各发行版安全公告:Ubuntu、RHEL、Oracle、SUSE、Debian 等;
  3. 在不影响业务的前提下:
  • 禁用非特权用户命名空间(sysctl kernel.unprivileged_userns_clone=0);
  • 卸载/不加载 ah6 模块;
  • 关闭不必要的 IPv6 路由转发;
  1. 加强监控:对异常 IPv6 报文、内核 oops/panic 事件做告警。

参考:上游 oss-security 公告、Linux 内核 net/ipv6/ah6.c 补丁、各发行版安全跟踪器(OSV、NVD)。

文章仅用于技术交流与漏洞研究,请勿用于非法用途。

POC获取关注私信CVE-2026-80844



免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。

本文转载自:deadbeef deadbeef deadbeef《CVE-2026-80844:Linux 内核 IPv6 AH6 路由头重排越界漏洞》

评论:0   参与:  0