从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:uprobes: fix kernel info leak via "[uprobes]" vma - 描述:xol_add_vma() 函数将未初始化的页面(由__create_xol_area() 分配)映射到用户空间。在某些架构(如 x86)上,即使没有 VM_READ 权限,VM_EXEC 也会导致相同的 pgprot_t 为 VM_EXEC 2. 修复措施: - 代码更改:在 kernel/events/uprobes.c 文件中,将 area->pages[0] 更改为 alloc_page(GFP_HIGHUSER - 注释:如果 area->pages[0] 为空,则跳转到 free_bitmap 函数。 3. 上下文: - 链接:https://lore.kernel.org/all/20240929162047.GA12611@redhat.com/ - 报告人:Will Deacon - 修复:d4b3b6384f98 ("uprobes/core: Allocate XOL slots for uprobes use") - 作者:Oleg Nesterov - 合作者:Masami Hiramatsu (Google) - 签名-off:Oleg Nesterov 、Masami Hiramatsu (Google) 、Sasha Levin 4. 代码差异: - 文件:kernel/events/uprobes.c - 行数:-1198,7 +1198,7 - 更改内容: - 将 area->pages[0] 更改为 alloc_page(GFP_HIGHUSER 这些信息表明,该漏洞与内核中的信息泄露有关,并通过修改 uprobes 的 vma 来修复。修复措施包括在分配页面时使用 GFP_HIGHUSER 和 __GFP_ZERO 标志。