GhostLock(CVE-2026-43499)公开利用代码曝光:可导致Linux本地提权及容器逃逸

admin 2026-07-11 04:54:48 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: GhostLock(CVE-2026-43499)是Linux内核rtmutex代码中的栈释放后重用漏洞,影响2011年以来几乎所有内核版本。攻击者无需特殊权限即可利用PI-futex功能实现本地提权及容器逃逸。PoC代码已公开,可靠性接近97%。建议立即升级至Linux7.1或最新LTS版本,并启用内核栈随机化等缓解措施。 综合评分: 95 文章分类: 漏洞分析,威胁情报,应急响应,漏洞预警,安全工具


cover_image

GhostLock(CVE-2026-43499)公开利用代码曝光:可导致 Linux 本地提权及容器逃逸

sec随谈 sec随谈

sec随谈

2026年7月8日 13:35 北京

在小说阅读器读本章

去阅读

GhostLock(CVE-2026-43499)公开利用代码曝光:可导致 Linux 本地提权及容器逃逸

摘要

研究人员已公开发布了 GhostLock 的完整技术细节及概念验证(PoC)代码。这一 Linux 内核漏洞编号为 CVE-2026-43499,已在代码中潜伏超过 15 年之久。它可让一个无特权的本地用户获得 root 权限,并突破容器隔离环境。

为何重要

GhostLock 影响自 2011 年以来几乎所有的 Linux 内核版本。利用该漏洞不需要任何特殊权限、任何 capabilities,也不需要用户命名空间(user namespaces),唯一的前提条件是内核开启了 PI-futex(优先级继承 futex)功能——而很多内核都默认启用了这一选项。因此,该漏洞对桌面系统、服务器以及容器宿主机均构成威胁。攻击者格外看重那些无需任何立足点即可利用的内核漏洞——实际上,这个漏洞相当于直接把一条”干净”的 root 提权路径送到了攻击者手中。

其中最令人担忧的是容器逃逸问题:它可以让代码从一个被隔离的工作负载直接跳跃到宿主机上。云平台正是依靠这种隔离机制来保证不同租户之间的相互隔离,因此这一个漏洞足以瓦解精心设计的容器防护体系。由于目前可用的利用代码已经公开,这一威胁是真实存在的——研究人员评估该利用代码的可靠性接近 97%,具备很强的实战可行性。VEGA 研究团队甚至凭借这一发现从 Google 的 kernelCTF 项目中获得了 92,337 美元的奖金。

攻击原理

优先级继承 futex(PI-futex)机制帮助实时线程避免优先级反转问题。在这一机制中,一次”重新排队(requeue)”操作可以把一个等待者从一个此类 futex 转移到另一个。GhostLock 正隐藏在这条极少被测试的重新排队路径中。从本质上讲,该漏洞是 rtmutex 代码中的一个栈上释放后重用(stack use-after-free)缺陷,具体存在于一个名为 remove_waiter 的清理辅助函数中。这个辅助函数原本假设:当前正在运行的线程本身就是它所清理的锁等待者。然而,重新排队路径却悄悄打破了这一假设——在这种情况下,一个线程实际上是在为另一个处于休眠状态的线程做清理,导致该辅助函数错误地清除了另一个任务的状态信息。

这就在内核中留下了一个指向已被释放栈帧的悬空指针。随后,一次优先级链遍历(priority-chain walk)操作会沿着这个已失效的指针继续访问。攻击者借此机会,向已释放的栈空间中”喷洒”(spray)自己选定的数据,通过伪造一个虚假的锁结构体,从而获得一次有限但可控的内核写入能力。接着,攻击者利用这一写入能力重写一个函数指针表,从而劫持内核的控制流。最后一步则是翻转一个权限位,直接获得一个 root shell。最终结果是完整的本地提权,而这一整套能力同样也是实现容器逃逸的关键所在。VEGA 团队在其研究报告中详细记录了完整的攻击链条。

公开披露与利用现状

研究人员将技术分析报告和开源 PoC 代码一并公开发布。Google 的 kernelCTF 规则也要求获奖者必须公开其利用代码,因此相关代码和技术细节现已完全公开。团队还计划发布后续研究,专门针对难度更高的 Android 场景,涉及攻克地址随机化、控制流校验等更强的防护机制。尽管如此,目前尚未发现任何野外主动利用行为,该漏洞也未出现在 CISA 的”已知被利用漏洞”目录中。不过,公开的利用代码无疑会缩短未来被恶意利用的技术门槛。

受影响版本

GhostLock 是随着 2011 年对 rtmutex 机制的一次重构而被引入内核的,此后一直潜伏未被发现,历时约十五年之久。受影响的版本范围覆盖 Linux 2.6.39-rc1 至 7.1-rc1,这意味着几乎所有未打补丁的主流发行版都会受到影响——Ubuntu、Debian 以及 Red Hat 均存在这一相同的漏洞。唯一的利用前提条件是内核开启了 PI-futex 选项,而大多数主流内核默认都启用了该选项。

修复与缓解措施

维护者已在上游 Linux 7.1 版本中修复了 GhostLock 漏洞,补丁修正了在代理(proxy)路径下清除任务状态时的逻辑错误,确保清理操作作用于正确的任务。管理员现在应尽快升级到已修复的内核版本或最新的长期支持(LTS)版本。初版补丁针对某个边界情况还需要一次小规模的后续修正。在补丁尚未到位的情况下,纵深防御措施依然能提供一定帮助:开启内核栈随机化(kernel stack randomization)可以让内存重用这一步变得更加难以预测;此外,将 usermode-helper 设置为静态模式,也可以阻断本文所展示的这种 root 提权技巧。请尽快应用您所使用发行版厂商推送的内核更新补丁。

参考链接:

https://nebusec.ai/research/ionstack-part-2/


免责声明:

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

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

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

本文转载自:sec随谈 sec随谈 sec随谈《GhostLock(CVE-2026-43499)公开利用代码曝光:可导致 Linux 本地提权及容器逃逸》

评论:0   参与:  0