Bug 2376396 (CVE-2025-38212) - CVE-2025-38212 kernel: ipc: fix to protect IPCS lookups using RCU
Summary: CVE-2025-38212 kernel: ipc: fix to protect IPCS lookups using RCU
Keywords:
Status: NEW
Alias: CVE-2025-38212
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2025-07-04 14:03 UTC by OSIDB Bzimport
Modified: 2025-07-07 04:28 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2025-07-04 14:03:45 UTC
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().

Comment 1 Avinash Hanwate 2025-07-07 04:19:29 UTC
Upstream advisory:
https://lore.kernel.org/linux-cve-announce/2025070422-CVE-2025-38212-5bd9@gregkh/T


Note You need to log in before you can comment on or make changes to this bug.