目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2024-35877— Linux kernel 安全漏洞

一分钟漏洞结论

影响对象
Linux Linux
利用判断
尚无明确在野利用证据,仍需结合暴露面评估
建议动作
优先检查厂商安全公告和参考链接中的修复版本;无法立即升级时,限制受影响服务暴露并加强监测。

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞,该漏洞源于 x86/mm/pat 模块存在漏洞。

AI 预测 5.5 利用难度: 较易 EPSS 0.25% · P16

可能的 ATT&CK 技术 1 AI

T1057 · Process Discovery

影响版本矩阵 18

厂商产品 版本范围状态
Linux Linux 5899329b19100c0b82dc78e9b21ed8b920c9ffb3< f18681daaec9665a15c5e7e0f591aad5d0ac622b affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 09e6bb53217bf388a0d2fd7fb21e74ab9dffc173 affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< c2b2430b48f3c9eaccd2c3d2ad75bb540d4952f4 affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 7cfee26d1950250b14c5cb0a37b142f3fcc6396a affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 97e93367e82752e475a33839a80b33bdbef1209f affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 51b7841f3fe84606ec0bd8da859d22e05e5419ec affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 1341e4b32e1fb1b0acd002ccd56f07bd32f2abc6 affected
5899329b19100c0b82dc78e9b21ed8b920c9ffb3< 04c35ab3bdae7fefbd7c7a7355f29fa03a035221 affected
… +10 条更多
获取后续新漏洞提醒 登录后订阅

一、 漏洞 CVE-2024-35877 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
x86/mm/pat: fix VM_PAT handling in COW mappings
来源: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: x86/mm/pat: fix VM_PAT handling in COW mappings PAT handling won't do the right thing in COW mappings: the first PTE (or, in fact, all PTEs) can be replaced during write faults to point at anon folios. Reliably recovering the correct PFN and cachemode using follow_phys() from PTEs will not work in COW mappings. Using follow_phys(), we might just get the address+protection of the anon folio (which is very wrong), or fail on swap/nonswap entries, failing follow_phys() and triggering a WARN_ON_ONCE() in untrack_pfn() and track_pfn_copy(), not properly calling free_pfn_range(). In free_pfn_range(), we either wouldn't call memtype_free() or would call it with the wrong range, possibly leaking memory. To fix that, let's update follow_phys() to refuse returning anon folios, and fallback to using the stored PFN inside vma->vm_pgoff for COW mappings if we run into that. We will now properly handle untrack_pfn() with COW mappings, where we don't need the cachemode. We'll have to fail fork()->track_pfn_copy() if the first page was replaced by an anon folio, though: we'd have to store the cachemode in the VMA to make this work, likely growing the VMA size. For now, lets keep it simple and let track_pfn_copy() just fail in that case: it would have failed in the past with swap/nonswap entries already, and it would have done the wrong thing with anon folios. Simple reproducer to trigger the WARN_ON_ONCE() in untrack_pfn(): <--- C reproducer ---> #include <stdio.h> #include <sys/mman.h> #include <unistd.h> #include <liburing.h> int main(void) { struct io_uring_params p = {}; int ring_fd; size_t size; char *map; ring_fd = io_uring_setup(1, &p); if (ring_fd < 0) { perror("io_uring_setup"); return 1; } size = p.sq_off.array + p.sq_entries * sizeof(unsigned); /* Map the submission queue ring MAP_PRIVATE */ map = mmap(0, size, PROT_READ | PROT_WRITE, MAP_PRIVATE, ring_fd, IORING_OFF_SQ_RING); if (map == MAP_FAILED) { perror("mmap"); return 1; } /* We have at least one page. Let's COW it. */ *map = 0; pause(); return 0; } <--- C reproducer ---> On a system with 16 GiB RAM and swap configured: # ./iouring & # memhog 16G # killall iouring [ 301.552930] ------------[ cut here ]------------ [ 301.553285] WARNING: CPU: 7 PID: 1402 at arch/x86/mm/pat/memtype.c:1060 untrack_pfn+0xf4/0x100 [ 301.553989] Modules linked in: binfmt_misc nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_g [ 301.558232] CPU: 7 PID: 1402 Comm: iouring Not tainted 6.7.5-100.fc38.x86_64 #1 [ 301.558772] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebu4 [ 301.559569] RIP: 0010:untrack_pfn+0xf4/0x100 [ 301.559893] Code: 75 c4 eb cf 48 8b 43 10 8b a8 e8 00 00 00 3b 6b 28 74 b8 48 8b 7b 30 e8 ea 1a f7 000 [ 301.561189] RSP: 0018:ffffba2c0377fab8 EFLAGS: 00010282 [ 301.561590] RAX: 00000000ffffffea RBX: ffff9208c8ce9cc0 RCX: 000000010455e047 [ 301.562105] RDX: 07fffffff0eb1e0a RSI: 0000000000000000 RDI: ffff9208c391d200 [ 301.562628] RBP: 0000000000000000 R08: ffffba2c0377fab8 R09: 0000000000000000 [ 301.563145] R10: ffff9208d2292d50 R11: 0000000000000002 R12: 00007fea890e0000 [ 301.563669] R13: 0000000000000000 R14: ffffba2c0377fc08 R15: 0000000000000000 [ 301.564186] FS: 0000000000000000(0000) GS:ffff920c2fbc0000(0000) knlGS:0000000000000000 [ 301.564773] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 301.565197] CR2: 00007fea88ee8a20 CR3: 00000001033a8000 CR4: 0000000000750ef0 [ 301.565725] PKRU: 55555554 [ 301.565944] Call Trace: [ 301.566148] <TASK> [ 301.566325] ? untrack_pfn+0xf4/0x100 [ 301.566618] ? __warn+0x81/0x130 [ 301.566876] ? untrack_pfn+0xf4/0x100 [ 3 ---truncated---
来源: CVE Program / CVE List V5
CVSS Information
N/A
来源: CVE Program / CVE List V5
Vulnerability Type
N/A
来源: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞,该漏洞源于 x86/mm/pat 模块存在漏洞。
来源: 中国国家信息安全漏洞库 CNNVD
CVSS Information
N/A
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Type
N/A
来源: 中国国家信息安全漏洞库 CNNVD

受影响产品

厂商 产品 影响版本 CPE 订阅
Linux Linux 5899329b19100c0b82dc78e9b21ed8b920c9ffb3 ~ f18681daaec9665a15c5e7e0f591aad5d0ac622b -
Linux Linux 2.6.29 -

二、漏洞 CVE-2024-35877 的公开POC

# POC 描述 源链接 神龙链接
AI 生成 POC 高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2024-35877 的情报信息

请登录查看更多情报信息。

CVE-2024-35877 邮件列表归档 (2)

CVE-2024-35877 其他参考 (6)

同批安全公告 · Linux · 2024-05-19 · 共 82 条

CVE-2024-35861 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35862 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35863 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35864 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35865 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35884 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35870 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35869 9.8 CRITICAL Linux kernel 安全漏洞
CVE-2024-35939 9.3 CRITICAL Linux kernel 安全漏洞
CVE-2024-35887 8.8 HIGH Linux kernel 安全漏洞
CVE-2024-35915 8.8 HIGH Linux kernel 安全漏洞
CVE-2024-35889 8.6 HIGH Linux kernel 安全漏洞
CVE-2024-35875 8.4 HIGH Linux kernel 安全漏洞
CVE-2024-35937 8.1 HIGH Linux kernel 安全漏洞
CVE-2024-35919 7.8 HIGH Linux kernel 安全漏洞
CVE-2024-35931 7.8 HIGH Linux kernel 安全漏洞
CVE-2024-35890 7.8 HIGH Linux kernel 安全漏洞
CVE-2024-35920 7.8 HIGH Linux kernel 安全漏洞
CVE-2024-35921 7.8 HIGH Linux kernel 安全漏洞
CVE-2024-35897 7.8 HIGH Linux kernel 安全漏洞

显示前 20 条,共 82 条。 查看全部 &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2024-35877

暂无评论


发表评论