Cloudanix VulnDB

CVE-2025-38704

High · 7.8

CVSS

7.8

EPSS

0.2%

Published

Sep 4, 2025

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

A bug in the Linux kernel could let someone already logged into the computer crash the whole system or gain extra powers.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Moderate
Impact
Full Compromise
Component
OS kernel
Class
Use After Free
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Use-after-free allowing invalid pointer dereference on rdp->nocb_cb_kthread during CPU re-offload after a failed rcuop kthread creation left the pointer unassigned while nocb_gp_rdp remained valid.

Why it matters to the business

Local attackers may crash Linux kernels or escalate privileges on servers and devices, causing downtime, data loss, or unauthorized access across any environment running the affected kernel versions.

How an attack unfolds

A local attacker triggers CPU online preparation where rcuop kthread creation fails, resulting in de-offload without assigning nocb_cb_kthread; subsequent re-offload passes the safety check and calls kthread_unpark on the dangling pointer.

How to fix it

Apply the upstream fix in commit cce3d027227c69e85896af9fbc6fa9af5c68f067 and update to the corresponding stable kernel releases that contain it.

How to confirm the fix worked

Confirm the running kernel source or binary contains commit cce3d027227c69e85896af9fbc6fa9af5c68f067; exercise CPU offline/online paths under load and verify no invalid pointer accesses occur.

Typical attack path

  1. Obtain local unprivileged access on a Linux system
  2. Force repeated CPU hotplug and offline sequences to induce rcuop kthread creation failure
  3. Trigger re-offload of the affected CPU to dereference the freed nocb_cb_kthread pointer

How to detect it

Review kernel logs and dmesg for RCU nocb kthread warnings, use-after-free reports, or crashes during CPU hotplug events; correlate with audit logs showing repeated offline/online operations.

What your security team should do

  • Prioritize kernel updates containing cce3d027227c69e85896af9fbc6fa9af5c68f067 on all Linux hosts
  • Limit unprivileged local access and CPU hotplug permissions until patched
  • Subscribe to distribution kernel advisories for backported fixes

The record

In the Linux kernel, the following vulnerability has been resolved: rcu/nocb: Fix possible invalid rdp's->nocb_cb_kthread pointer access In the preparation stage of CPU online, if the corresponding the rdp's->nocb_cb_kthread does not exist, will be created, there is a situation where the rdp's rcuop kthreads creation fails, and then de-offload this CPU's rdp, does not assign this CPU's rdp->nocb_cb_kthread pointer, but this rdp's->nocb_gp_rdp and rdp's->rdp_gp->nocb_gp_kthread is still valid. This will cause the subsequent re-offload operation of this offline CPU, which will pass the conditional check and the kthread_unpark() will access invalid rdp's->nocb_cb_kthread pointer. This commit therefore use rdp's->nocb_gp_kthread instead of rdp_gp's->nocb_gp_kthread for safety check.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 No fix
Debian:12 linux 0 No fix
Debian:13 linux 0 6.12.43-1
Debian:14 linux 0 6.16.3-1
Linux Kernel 0 6.12.43
Linux Kernel 6.0.0 6.12.43
openSUSE:Leap 16.0 dtb-aarch64 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-64kb 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-azure 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-default 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-default-base 0 6.12.0-160000.9.1.160000.2.6
openSUSE:Leap 16.0 kernel-docs 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-kvmsmall 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-obs-build 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-obs-qa 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-rt 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-source 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-syms 0 6.12.0-160000.9.1
openSUSE:Leap 16.0 kernel-zfcpdump 0 6.12.0-160000.9.1

Related vulnerabilities