CVE-2026-89495
Last modified
CVE-2026-89495 is a critical-severity vulnerability rated 9.8/10 on the CVSS scale. In the Linux kernel, the following vulnerability has been resolved: ocfs2: bound namelen in dlm_migrate_request_handler Patch series "ocfs2/dlm: bound peer-controlled lengths in the o2dlm". The o2dlm receive handlers trust u8 length and count fields from the wire without bounding them, so a node in a DLM domain can corrupt or panic any other node with a malformed message. Three defects: - dlm_migrate_request_handler() passes migrate->namelen unchecked to dlm_init_mle(), which memcpy()s it into the 32-byte mname[] of an o2dlm_mle slab object: a heap out-of-bounds write of up to ~215 attacker-controlled bytes. - dlm_mig_lockres_handler() passes mres->lockname_len unchecked to dlm_init_lockres(), which memcpy()s it into the 32-byte o2dlm_lockname slab object: a heap out-of-bounds write of up to ~223 bytes. - the same handler trusts mres->num_locks without checking that the message is large enough to hold that many entries, so dlm_process_recovery_data() walks mres->ml[] past the kmalloc(data_len) copy and trips a BUG_ON (an out-of-bounds read ending in a panic). The other o2dlm receive handlers already reject an oversized name; the migration and recovery handlers have omitted it since the DLM was added (see the Fixes tags). EPSS estimates a 0.63% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: ocfs2: bound namelen in dlm_migrate_request_handler Patch series "ocfs2/dlm: bound peer-controlled lengths in the o2dlm". The o2dlm receive handlers trust u8 length and count fields from the wire without bounding them, so a node in a DLM domain can corrupt or panic any other node with a malformed message. Three defects: - dlm_migrate_request_handler() passes migrate->namelen unchecked to dlm_init_mle(), which memcpy()s it into the 32-byte mname[] of an o2dlm_mle slab object: a heap out-of-bounds write of up to ~215 attacker-controlled bytes. - dlm_mig_lockres_handler() passes mres->lockname_len unchecked to dlm_init_lockres(), which memcpy()s it into the 32-byte o2dlm_lockname slab object: a heap out-of-bounds write of up to ~223 bytes. - the same handler trusts mres->num_locks without checking that the message is large enough to hold that many entries, so dlm_process_recovery_data() walks mres->ml[] past the kmalloc(data_len) copy and trips a BUG_ON (an out-of-bounds read ending in a panic). The other o2dlm receive handlers already reject an oversized name; the migration and recovery handlers have omitted it since the DLM was added (see the Fixes tags). Patch 1 bounds namelen; patch 2 validates lockname_len, num_locks, and the payload size. Conforming recovery and migration traffic is unaffected. o2net authenticates peers only by the DLM domain key, so any node that has joined the domain -- including a compromised or malicious member -- can send these messages. There is no local trigger; the attacker must already be a member of the cluster. Each sink was confirmed under KASAN with an out-of-tree module mirroring it exactly -- a kmem_cache/kmalloc of the real destination size, then the same unclamped memcpy/loop: slab-out-of-bounds Write for the two writes, Read for the recovery walk, and a panic. A userspace AddressSanitizer build faults identically under -m32 and -m64. Scrubbed logs are available on request. I reported this privately to security@kernel.org and the ocfs2 maintainers on 2026-06-20; with no response after the standard embargo period I am posting the fix publicly. I have no embargo requirement. This patch (of 2): A node receiving a DLM_MIGRATE_REQUEST message trusts the peer-supplied name length (migrate->namelen) without bounding it. dlm_init_mle() then copies that many bytes into the fixed DLM_LOCKID_NAME_MAX-byte mname[] array of an o2dlm_mle slab object, so a malformed message from a cluster peer overflows the slab object by up to ~215 bytes: a heap out-of-bounds write of attacker-controlled data, reachable by any node in the domain. Reject an oversized name, the way dlm_master_request_handler() and the other o2dlm receive handlers already do; the migration handler omits the check entirely. Conforming messages are unaffected.
Metrics
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < e1288865b8ceac0dcd1009ecba43de961f13d5bd; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < aabc5d8388e6f8826345f0073455dbcaaaa6491d; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < 006c96ea488eca2ef5155ec76038e0a4dbf65f0a; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < 24989909d3413b44b104102caa6661b1e424ba0f; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < f8658ee3327f73bd81c0bcd07cdeb5a8527fac98; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < de10cd3b062a5235af754925fcf49beb5a1109d4; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < 2487bea2098322669f0563baff53e797486b823f; >= 6714d8e86bf443f6f7af50f9d432025649f091f5, < ea5b5609305a8437bc955a0834a530c12246d78f |
| Linux | Linux | 2.6.16 |
References
Timeline
- Published
- Last Modified
- Status
- Received
Frequently Asked Questions
What is CVE-2026-89495?
How severe is CVE-2026-89495?
How do I fix CVE-2026-89495?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-8949Integer overflow in the Widget: Win32 component. This vulner…7.5
- CVE-2026-89490In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89491In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89492In the Linux kernel, the following vulnerability has been re…9.8
- CVE-2026-89493In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-89494In the Linux kernel, the following vulnerability has been re…9.8
- CVE-2026-89496In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89497In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-89498In the Linux kernel, the following vulnerability has been re…
- CVE-2026-89499In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-8950Same-origin policy bypass in the Networking: HTTP component.…9.3
- CVE-2026-89500In the Linux kernel, the following vulnerability has been re…7.8
Are you affected by CVE-2026-89495?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
