CVE-2025-37949 Details
Description
In the Linux kernel, the following vulnerability has been resolved: xenbus: Use kref to track req lifetime Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace: <TASK> __wake_up_common_lock+0x82/0xd0 process_msg+0x18e/0x2f0 xenbus_thread+0x165/0x1c0 process_msg+0x18e is req->cb(req). req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply(). It seems like it was xs_wake_up() in this case. It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req. When xenbus_thread resumes, it faults on the zero-ed data. Linux Device Drivers 2nd edition states: "Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns." ... which would match the behaviour observed. Change to keeping two krefs on each request. One for the caller, and one for xenbus_thread. Each will kref_put() when finished, and the last will free it. This use of kref matches the description in Documentation/core-api/kref.rst
A NULL pointer dereference vulnerability has been identified in the Linux kernel's xenbus component. This issue arises in the xenbus_thread function, where a request callback can inadvertently free a request object. If the xenbus_thread resumes execution after the request has been freed, it leads to a NULL pointer dereference. The vulnerability has been addressed by modifying the request handling to use reference counting, ensuring that request objects are properly managed and not prematurely freed.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/0e94a246bb6d9538010b6c02d2b1d4717a97b2e5 | kernel.org | Patch |
| https://git.kernel.org/stable/c/1f0304dfd9d217c2f8b04a9ef4b3258a66eedd27 | kernel.org | Patch |
| https://git.kernel.org/stable/c/2466b0f66795c3c426cacc8998499f38031dbb59 | kernel.org | Patch |
| https://git.kernel.org/stable/c/4d260a5558df4650eb87bc41b2c9ac2d6b2ba447 | kernel.org | Patch |
| https://git.kernel.org/stable/c/8b02f85e84dc6f7c150cef40ddb69af5a25659e5 | kernel.org | Patch |
| https://git.kernel.org/stable/c/8e9c8a0393b5f85f1820c565ab8105660f4e8f92 | kernel.org | Patch |
| https://git.kernel.org/stable/c/cbfaf46b88a4c01b64c4186cdccd766c19ae644c | kernel.org | Patch |
| https://git.kernel.org/stable/c/f1bcac367bc95631afbb918348f30dec887d0e1b | kernel.org | Patch |
| https://lists.debian.org/debian-lts-announce/2025/08/msg00010.html | CVE | Third Party Advisory |
| https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html | CVE | Third Party Advisory |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-476 | NULL Pointer Dereference | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 4.11, < 5.4.294 >= 5.5, < 5.10.238 >= 5.11, < 5.15.183 >= 5.16, < 6.1.139 >= 6.2, < 6.6.91 >= 6.7, < 6.12.29 >= 6.13, < 6.14.7 6.15 rc1 6.15 rc2 6.15 rc3 6.15 rc4 6.15 rc5 |
CPE
Remediation
| |
| debian debian linux | 11.0 |
CPE
Remediation
| |
Change History
7 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jul 30, 2026 | CVE Modified | kernel.org |
| Jun 17, 2026 | CVE Modified | kernel.org |
| Dec 17, 2025 | Initial Analysis | [email protected] |
| Nov 3, 2025 | CVE Modified | CVE |
| Nov 3, 2025 | CVE Modified | CVE |
| Jun 4, 2025 | CVE Modified | kernel.org |
| May 20, 2025 | New CVE Received | kernel.org |