一、 漏洞 CVE-2025-38212 基础信息
漏洞信息
                                        # ipc:修复使用RCU保护IPCS查找的漏洞

## 概述
在Linux内核中发现了一个use-after-free漏洞,特别是在`ipcs`查找过程中,通过RCU保护来修复该漏洞。

## 细节
`idr_for_each()`函数虽然使用了rwsem保护,但这并不足以防止use-after-free漏洞。在`idr_for_each()`调用`radix_tree_node_free()`通过`call_rcu()`释放`radix_tree_node`结构时,如果没有RCU读关键区域保护,`radix_tree_node`结构可能会立即被释放。当后续通过`radix_tree_for_each_slot()`访问下一个节点时,可能会读取已经被释放的内存。

## 影响
在`syzbot`报告的`shm_destroy_orphaned()`函数中,`idr_for_each()`的调用需要添加保护代码,以确保其在RCU读关键区域中被调用。此漏洞可能导致内存损坏或信息泄露。
                                        
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
ipc: fix to protect IPCS lookups using RCU
来源:美国国家漏洞数据库 NVD
漏洞描述信息
In the Linux kernel, the following vulnerability has been resolved: ipc: fix to protect IPCS lookups using RCU syzbot reported that it discovered a use-after-free vulnerability, [0] [0]: https://lore.kernel.org/all/67af13f8.050a0220.21dd3.0038.GAE@google.com/ idr_for_each() is protected by rwsem, but this is not enough. If it is not protected by RCU read-critical region, when idr_for_each() calls radix_tree_node_free() through call_rcu() to free the radix_tree_node structure, the node will be freed immediately, and when reading the next node in radix_tree_for_each_slot(), the already freed memory may be read. Therefore, we need to add code to make sure that idr_for_each() is protected within the RCU read-critical region when we call it in shm_destroy_orphaned().
来源:美国国家漏洞数据库 NVD
CVSS信息
N/A
来源:美国国家漏洞数据库 NVD
漏洞类别
N/A
来源:美国国家漏洞数据库 NVD
漏洞标题
Linux kernel 安全漏洞
来源:中国国家信息安全漏洞库 CNNVD
漏洞描述信息
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于未保护IPC查找导致释放后重用。
来源:中国国家信息安全漏洞库 CNNVD
CVSS信息
N/A
来源:中国国家信息安全漏洞库 CNNVD
漏洞类别
其他
来源:中国国家信息安全漏洞库 CNNVD
二、漏洞 CVE-2025-38212 的公开POC
# POC 描述 源链接 神龙链接
三、漏洞 CVE-2025-38212 的情报信息