CVE-2026-46288
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Summary
In the Linux kernel, the following vulnerability has been resolved:
of: unittest: fix use-after-free in of_unittest_changeset()
The variable 'parent' is assigned the value of 'nchangeset' earlier in the function, meaning both point to the same struct device_node. The call to of_node_put(nchangeset) can decrement the reference count to zero and free the node if there are no other holders. After that, the code still uses 'parent' to check for the presence of a property and to read a string property, leading to a use-after-free.
Fix this by moving the of_node_put() call after the last access to 'parent', avoiding the UAF.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | 1c668ea65506e67ce2eae07b69bb09fcdd86e309 < 37318d1a27c9cc5a70d3cd7e49e30ec86f2b8ca1 | affected |
| Linux | Linux | 1c668ea65506e67ce2eae07b69bb09fcdd86e309 < 7f0f0926f3010b10cff5e93446258f971e42f2fd | affected |
| Linux | Linux | 1c668ea65506e67ce2eae07b69bb09fcdd86e309 < 6fdad20b7975bdc32e85b45f8f7c640f6687b81f | affected |
| Linux | Linux | 1c668ea65506e67ce2eae07b69bb09fcdd86e309 < faecdd423c27f0d6090156a435ba9dbbac0eaddb | affected |
| Linux | Linux | 6.12 | affected |
| Linux | Linux | 0 < 6.12 | unaffected |
| Linux | Linux | 6.12.86 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.27 <= 6.18.* | unaffected |
| Linux | Linux | 7.0.4 <= 7.0.* | unaffected |
| Linux | Linux | 7.1 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/37318d1a27c9cc5a70d3cd7e49e30ec86f2b8ca1
- https://git.kernel.org/stable/c/7f0f0926f3010b10cff5e93446258f971e42f2fd
- https://git.kernel.org/stable/c/6fdad20b7975bdc32e85b45f8f7c640f6687b81f
- https://git.kernel.org/stable/c/faecdd423c27f0d6090156a435ba9dbbac0eaddb
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.