漏洞标题
netfs: 修复在写入开始时将ceph复制到缓存的问题
漏洞描述信息
在Linux内核中,已修复以下漏洞:
netfs: 修复写入开始时将ceph复制到缓存的问题
在netfs_unlock_read_folio()的结尾,folios被适当标记以便复制到缓存(通过标记为脏或设置其私有数据,或者设置PG_private_2),然后解锁。此时,folio_queue结构中的条目指向folio被清除。这为netfs_pgpriv2_write_to_the_cache()带来了问题,该函数用于将标记为PG_private_2的folios写入缓存,它期望能够遍历folio_queue列表以找到相关的folios,从而导致挂起。
通过在执行已弃用的复制到缓存操作时不清除folio_queue条目来解决此问题。清除操作将在folios写入缓存时进行。
该问题可以通过启动cachefiles,以"-o fsc"挂载ceph文件系统并写入文件系统来复现。
CVSS信息
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
漏洞类别
跨界内存写
漏洞标题
netfs: Fix ceph copy to cache on write-begin
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved:
netfs: Fix ceph copy to cache on write-begin
At the end of netfs_unlock_read_folio() in which folios are marked
appropriately for copying to the cache (either with by being marked dirty
and having their private data set or by having PG_private_2 set) and then
unlocked, the folio_queue struct has the entry pointing to the folio
cleared. This presents a problem for netfs_pgpriv2_write_to_the_cache(),
which is used to write folios marked with PG_private_2 to the cache as it
expects to be able to trawl the folio_queue list thereafter to find the
relevant folios, leading to a hang.
Fix this by not clearing the folio_queue entry if we're going to do the
deprecated copy-to-cache. The clearance will be done instead as the folios
are written to the cache.
This can be reproduced by starting cachefiles, mounting a ceph filesystem
with "-o fsc" and writing to it.
CVSS信息
N/A
漏洞类别
N/A
漏洞标题
Linux kernel 安全漏洞
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于netfs模块在写入时未正确处理缓存操作。这可能导致系统挂起或缓存操作失败。
CVSS信息
N/A
漏洞类别
其他