漏洞标题
Ring-Buffer:修复在更改子缓冲区顺序时读取器锁定问题漏洞
漏洞描述信息
在Linux内核中,已修复以下漏洞:
环形缓冲区:修复在更改子缓冲区顺序时的读取锁定问题
函数ring_buffer_subbuf_order_set()更新每个ring_buffer_per_cpu,并安装与请求的页面顺序匹配的新子缓冲区。此操作可能会与依赖于某些修改数据(如头位(RB_PAGE_HEAD)或ring_buffer_per_cpu.pages和reader_page指针)的读取者并发调用。然而,ring_buffer_subbuf_order_set()并未获取独占访问权限。在读取者也操作这些数据时修改上述数据会导致不正确的内存访问和各种崩溃。
通过在ring_buffer_subbuf_order_set()中更新特定的ring_buffer_per_cpu时获取reader_lock来修复此问题。
CVSS信息
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
漏洞类别
使用共享资源的并发执行不恰当同步问题(竞争条件)
漏洞标题
ring-buffer: Fix reader locking when changing the sub buffer order
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved:
ring-buffer: Fix reader locking when changing the sub buffer order
The function ring_buffer_subbuf_order_set() updates each
ring_buffer_per_cpu and installs new sub buffers that match the requested
page order. This operation may be invoked concurrently with readers that
rely on some of the modified data, such as the head bit (RB_PAGE_HEAD), or
the ring_buffer_per_cpu.pages and reader_page pointers. However, no
exclusive access is acquired by ring_buffer_subbuf_order_set(). Modifying
the mentioned data while a reader also operates on them can then result in
incorrect memory access and various crashes.
Fix the problem by taking the reader_lock when updating a specific
ring_buffer_per_cpu in ring_buffer_subbuf_order_set().
CVSS信息
N/A
漏洞类别
N/A
漏洞标题
Linux kernel 安全漏洞
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于存在子缓冲区顺序更改时的读者锁定问题。
CVSS信息
N/A
漏洞类别
其他