Files
Sean 483a2b88fd 部署文档定期更新
部署文档定期更新
2026-08-22 20:36:37 +08:00

197 lines
8.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 【漏洞预警】Linux 内核本地提权(CVE-2026-43499)
![【漏洞预警】Linux 内核本地提权(CVE-2026-43499)](https://assets.xuanyuan.me/docker/blog/docker-security-advisory.png)
*分类: 安全公告 | 标签: Linux,Kernel,CVE,安全公告,漏洞预警,futex,容器逃逸 | 发布时间: 2026-07-11 14:08:30*
> Linux kernel rtmutex/Futex PI Requeue-PI 路径栈上 Use-After-Free(GhostLock),普通本地用户可通过 futex 系统调用触发,造成本地提权与容器逃逸。影响 2.6.39 至 7.0 多个未修复分支,请升级至 6.1.175、6.6.140、6.12.86、6.18.27、7.0.4、7.1 或更高版本。
**发布日期:** 2026 年 7 月 9 日
**风险等级:** 中危(风险可能进一步升级)
**漏洞编号:** CVE-2026-43499(GhostLock)
---
## 一、漏洞概述
Linux kernel 是 Linux 操作系统的核心内核,负责进程调度、内存管理、系统调用、文件系统、网络协议栈和硬件抽象等基础能力。rtmutex 与 Futex PI(Priority Inheritance,优先级继承)是内核中广泛使用的同步原语,被 glibc、多线程应用、容器运行时及各类服务器软件大量依赖。
CVE-2026-43499(GhostLock)是 Linux kernel **rtmutex / Futex PI Requeue-PI** 路径中的 **栈上 Use-After-Free** 漏洞。在 proxy-lock 回滚场景下,`remove_waiter()` 错误地清理了 `current` 任务,导致 `waiter->task` 的 `pi_blocked_on` 指向已返回内核栈帧的悬空指针。
**普通本地用户** 可通过常规的 **futex / threading 系统调用** 触发该漏洞,最终可造成 **本地提权(LPE)** 与 **容器逃逸**。
---
## 二、漏洞状态
**统计截止:** 2026 年 7 月 8 日 18:00:00(UTC+8)
| 项目 | 状态 |
|------|------|
| 漏洞细节 | 已公开 |
| PoC | 已公开 |
| 在野利用 | 暂未发现 |
> **说明:** 漏洞细节与 PoC 均已公开,虽暂未发现在野利用,但攻击门槛相对较低,建议尽快排查并升级。
---
## 三、影响范围
以下 Linux kernel 版本均受影响:
| 版本分支 | 受影响范围 |
|----------|------------|
| 6.1.x | **2.6.39 ≤** 版本 **< 6.1.175** |
| 6.2–6.6.x | **6.2 ≤** 版本 **< 6.6.140** |
| 6.7–6.12.x | **6.7 ≤** 版本 **< 6.12.86** |
| 6.13–6.18.x | **6.13 ≤** 版本 **< 6.18.27** |
| 6.19–7.0.x | **6.19 ≤** 版本 **< 7.0.4** |
**典型受影响场景:**
- 运行上述版本内核的 Linux 服务器、工作站与云主机
- 使用受影响内核的 **Docker / containerd / Kubernetes 宿主机**(存在容器逃逸风险)
- 允许多用户本地登录或开放 shell 的共享开发、测试环境
- 基于受影响内核分支的嵌入式 Linux 与定制发行版
---
## 四、修复建议
请尽快将 Linux kernel 升级至以下 **已修复版本或更高版本**:
| 分支 | 最低安全版本 |
|------|--------------|
| 6.1.x | **6.1.175** |
| 6.6.x | **6.6.140** |
| 6.12.x | **6.12.86** |
| 6.18.x | **6.18.27** |
| 7.0.x | **7.0.4** |
| 7.1+ | **7.1** 或更高 |
自行维护内核的用户,也可升级至包含以下修复 commit 的内核子版本:
```
3bfdc63936dd4773109b7b8c280c0f3b5ae7d349
```
**版本检查示例:**
```bash
uname -r
```
**发行版用户说明:** 若内核由操作系统发行版或云厂商托管,请同步关注 **Ubuntu / Debian / RHEL / CentOS / 阿里云 / 腾讯云** 等渠道的安全通告,按官方渠道安装内核安全更新或重启至已修复内核。
> **重要:** 不能仅凭 `uname -r` 输出的版本号「看起来较新」就认为已修复。发行版会对上游内核做 backport 打包,**必须以发行版安全跟踪器列出的修复包版本为准**,而非直接对照上游最低安全版本号。
### Ubuntu 用户排查步骤
在 Ubuntu 宿主机上可按以下步骤自查:
```bash
# 1. 查看当前运行内核
uname -r
# 2. 确认发行版版本
lsb_release -a
# 3. 查看已安装的内核包版本
dpkg -l | grep -E 'linux-image|linux-headers' | grep "$(uname -r | cut -d- -f1-2)"
# 4. 检查安全源是否有可用的内核更新
sudo apt update
apt list --upgradable 2>/dev/null | grep -E 'linux-image|linux-headers'
```
修复包发布后,安装并重启:
```bash
sudo apt install --only-upgrade linux-image-generic linux-headers-generic
sudo reboot
uname -r # 确认已启动到新内核,版本号应高于受影响版本
```
也可对照 Canonical 官方跟踪页面:[UBUNTU-CVE-2026-43499](https://osv.dev/vulnerability/UBUNTU-CVE-2026-43499)
### 实测案例:Ubuntu 24.04 + 6.8.0-134-generic(确认受影响)
以下为 **Ubuntu 24.04.4 LTS(noble)** 云主机实测,截至 **2026 年 7 月 11 日** 仍无可用修复内核:
```bash
root@VM-8-16-ubuntu:~# uname -r
6.8.0-134-generic
root@VM-8-16-ubuntu:~# lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 24.04.4 LTS
Release: 24.04
Codename: noble
root@VM-8-16-ubuntu:~# dpkg -l | grep -E 'linux-image|linux-headers' | grep 6.8.0-134
ii linux-image-6.8.0-134-generic 6.8.0-134.134 amd64 Signed kernel image generic
root@VM-8-16-ubuntu:~# apt list --upgradable 2>/dev/null | grep -i linux-image
# (无输出,表示当前 apt 源中尚无修复版内核)
```
**判断结论:**
| 检查项 | 实测结果 | 含义 |
|--------|----------|------|
| 上游内核 | Linux **6.8** | 落在受影响区间 **6.7 ≤ 内核 < 6.12.86** |
| 发行版包版本 | `6.8.0-134.134` | Canonical 安全跟踪中 **明确列为受影响版本** |
| apt 可升级内核 | 无 `linux-image` 更新 | 修复包 **尚未进入** `noble-security` 源(含腾讯云等镜像) |
因此:`6.8.0-134-generic` **不能视为已修复**,即使它已是 Ubuntu 24.04 当前主线源中的最新内核包。在 Canonical 发布包含 GhostLock 修复的安全更新前,应将该宿主机视为 **存在本地提权与容器逃逸风险**,并定期重试 `apt update` 与升级检查。
---
## 五、临时缓解措施
在无法立即完成内核升级前,建议采取以下措施:
1. **限制系统权限**
仅对可信用户开放 shell 及本地登录权限;减少非必要账户的多用户共享访问,降低不可信用户获得本地执行环境的机会。
2. **加强容器宿主机隔离**
对运行不可信容器工作负载的宿主机 **优先安排内核升级**;敏感业务考虑临时迁移至已修复内核的节点。
3. **收紧容器运行时权限**
避免以 `--privileged` 或过度宽松的 capabilities 运行容器;生产环境遵循最小权限原则,减少逃逸后的横向影响。
4. **启用监控与告警**
关注异常本地进程行为、内核 oops / panic 日志,并结合 EDR 或主机安全产品做异常检测。
---
## 六、与 Docker / 容器用户的相关说明
GhostLock 属于 **内核层漏洞**,与镜像拉取加速服务无关,但直接影响容器宿主机安全:
- 使用 [轩辕镜像](https://xuanyuan.cloud) 等镜像加速源 **不会自动修复** 本漏洞,仍需在 **各宿主机升级 Linux kernel** 至安全版本。
- 容器默认与宿主机共享内核,**容器内普通用户** 在特定条件下可借助该漏洞突破命名空间隔离,获得宿主机 root 权限。
- 我们建议用户:**优先升级宿主机内核**,同时继续通过可信镜像源拉取镜像,并配合最小权限、网络隔离与准入策略,降低整体攻击面。
配置与排错可参考:[轩辕镜像使用手册](https://xuanyuan.cloud/usage)、[镜像拉取 FAQ](https://xuanyuan.cloud/faq)。
---
## 七、参考链接
- IonStack 漏洞分析(Part 2):<https://nebusec.ai/research/ionstack-part-2/>
- PoC 与 exploit 项目:[NebuSec/CyberMeowfia — CVE-2026-43499](https://github.com/NebuSec/CyberMeowfia/tree/main/IonStack/CVE-2026-43499)
- 内核官方修复 commit:[3bfdc63936dd](https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=3bfdc63936dd4773109b7b8c280c0f3b5ae7d349)
- Ubuntu 安全跟踪:[UBUNTU-CVE-2026-43499](https://osv.dev/vulnerability/UBUNTU-CVE-2026-43499)
- Ubuntu 内核安全通告(示例):[USN-8492-1](https://ubuntu.com/security/notices/USN-8492-1)
---
**轩辕镜像安全团队**
2026 年 7 月 9 日
---