从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题1: 函数在映射 DRAM_PANTHOR_USER_FLUSH_ID_MMIO_OFFSET 时,如果 VM_WRITE 标志设置,但不清理 VM_MAYWRITE 标志。这意味着用户空间可以使用 mprotect() 函数使映射变得可写,从而导致 Linux 内核驱动程序出现漏洞。 - 问题2: 函数没有阻止 MAP_PRIVATE 映射(没有 VM_SHARED 标志)。MAP_PRIVATE 与 VM_MAYWRITE 结合使用时,VMA 有 copy-on-write 语义,这使得 VM_PFNMAP 半支持但相当混乱。 2. 修复措施: - 清除 VM_MAYWRITE 标志(用户空间写入到 FLUSH_ID 不合理)并要求 VM_SHARED(对于 FLUSH_ID 来说,copy-on-write 语义没有意义)。 - 修复了两个场景的漏洞,并在邮件列表的注释中提供了修复程序。测试表明这些漏洞存在于 Rock 5B 机器上。 3. 补丁信息: - 该补丁修复了“drm/panthor: Add the device logical block”问题。 - 该补丁由 Jann Horn 提交,并得到了 Boris Brezillon、Liviu Duda 和 Steven Price 的审查和签署。 4. 补丁内容: - 在 文件中,对 函数进行了修改,增加了对 VM_MAYWRITE 标志的检查和清除。 这些信息表明,该漏洞与 Linux 内核驱动程序中的内存映射和权限管理有关,修复措施主要是通过修改驱动程序的映射逻辑来确保正确的权限设置。