Action not permitted
Modal body text goes here.
Modal Title
Modal Body
OESA-2026-3705 (CVE-2026-53309)
Vulnerability from osv_openeuler – Published: 2026-09-14 16:33 – Updated: 2026-09-14 16:33 – Source websiteThe Linux Kernel, the operating system core itself.
Security Fix(es):
In the Linux kernel, the following vulnerability has been resolved:
ocfs2/dlm: fix off-by-one in dlm_match_regions() region comparison
The local-vs-remote region comparison loop uses '<=' instead of '<', causing it to read one entry past the valid range of qr_regions. The other loops in the same function correctly use '<'.
Fix the loop condition to use '<' for consistency and correctness.(CVE-2026-53309)
In the Linux kernel, the following vulnerability has been resolved:
ixgbevf: fix use-after-free in VEPA multicast source pruning
ixgbevf_clean_rx_irq() prunes frames whose source MAC matches the VF's own address (VEPA multicast workaround) by freeing the skb and continuing to the next descriptor:
dev_kfree_skb_irq(skb);
continue;
The skb pointer is declared outside the while loop and persists across iterations. Because the continue skips the "skb = NULL" reset at the bottom of the loop, the next iteration enters the "else if (skb)" path and calls ixgbevf_add_rx_frag() on the freed skb, dereferencing skb_shinfo(skb)->nr_frags - a use-after-free in NAPI softirq context.
The sibling driver iavf already handles this correctly by nulling the pointer before continuing. Apply the same pattern here.
I do not have ixgbevf hardware; the bug was found by static analysis (scan_drop_continue_loops.py + semgrep drop_continue_in_loop, multi-tool corroboration with the highest score in the scan). The UAF was confirmed under KASAN by loading a test module that reproduces the exact code pattern (alloc skb, kfree_skb, then read skb_shinfo(skb)->nr_frags):
BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000 Read of size 8 at addr 000000006163ae78 by task insmod/30 freed 208-byte region [000000006163adc0, 000000006163ae90)
QEMU emulates igb (82576) but not ixgbe (82599), and the igbvf VF driver does not include the VEPA source pruning path, so a full end-to-end reproduction with emulated hardware was not possible.(CVE-2026-64113)
In the Linux kernel, the following vulnerability has been resolved:
sctp: validate STALE_COOKIE cause length before reading staleness
When an ERROR chunk with a STALE_COOKIE cause is received in the COOKIE_ECHOED state, sctp_sf_do_5_2_6_stale() reads the 4-byte Measure of Staleness that follows the cause header:
err = (struct sctp_errhdr *)(chunk->skb->data);
stale = ntohl(*(__be32 *)((u8 *)err + sizeof(*err)));
err is the first cause in the chunk, not the STALE_COOKIE cause that caused the dispatch, and nothing guarantees the staleness field is present. sctp_walk_errors() only requires a cause to be as long as the 4-byte header, so for a STALE_COOKIE cause of length 4 the read runs past the cause, and for a minimal ERROR chunk past skb->tail. The value is echoed to the peer in the Cookie Preservative of the reply INIT, leaking uninitialized memory.
sctp_sf_cookie_echoed_err() already walks to the STALE_COOKIE cause, so check its length there and pass it to sctp_sf_do_5_2_6_stale(), which reads that cause instead of the first one. A STALE_COOKIE cause too short to hold the staleness field is discarded.
The read is reachable by any peer that can drive an association into COOKIE_ECHOED, including an unprivileged process using a raw SCTP socket in a user and network namespace.(CVE-2026-64551)
In the Linux kernel, the following vulnerability has been resolved:
libceph: fix two unsafe bare decodes in decode_lockers()
decode_lockers() in cls_lock_client.c contains two bare decode operations that allow a malicious or compromised OSD to trigger slab-out-of-bounds reads:
- ceph_decode_32(p) at the num_lockers field has no preceding bounds check. ceph_start_decoding() accepts struct_len=0 as valid -- the internal ceph_decode_need(p, end, 0, bad) always passes -- so when an OSD sends struct_len=0, ceph_start_decoding() returns success with p == end. The immediately following bare ceph_decode_32(p) then reads 4 bytes past the validated buffer boundary. The garbage value is passed directly to kzalloc_objs() as the locker count.
The sibling function decode_watchers() in osd_client.c already uses ceph_decode_32_safe() after its own ceph_start_decoding() call. decode_lockers() was the only site using the bare variant.
- ceph_decode_8(p) after the decode_locker() loop has no preceding bounds check. If an OSD crafts num_lockers such that the loop advances p exactly to end, the subsequent bare ceph_decode_8(p) reads one byte past the validated buffer boundary. The result is passed directly into *type, which is used as a lock type discriminator by callers, giving an OSD-controlled one-byte OOB read with direct influence over the lock type field.
Fix both by replacing bare operations with their safe variants: ceph_decode_32(p) -> ceph_decode_32_safe(p, end, *num_lockers, err_inval) ceph_decode_8(p) -> ceph_decode_8_safe(p, end, *type, err_free_lockers)
The goto targets differ intentionally: err_inval: is a new label returning -EINVAL directly. It is used for the pre-allocation failure path where *lockers is not yet allocated and must not be passed to ceph_free_lockers().
err_free_lockers: is the existing label. It is used for the post-allocation failure path where *lockers is allocated and must be freed.
ret is set to -EINVAL before ceph_decode_8_safe() so that err_free_lockers returns the correct error code on bounds violation. Without this, err_free_lockers would return a stale ret value (0 from the successful decode_locker() loop), silently swallowing the error.
-EINVAL is correct for both failure paths. The data received from the OSD is structurally malformed. -ENOMEM would misrepresent the failure class to callers and to stable@ backporters triaging error paths.
Attacker model: a malicious or compromised OSD in a multi-tenant Ceph deployment can trigger this against any kernel client that issues the lock.get_info class method (e.g. during RBD exclusive lock acquisition).
idryomov: trim changelog, formatting
In the Linux kernel, the following vulnerability has been resolved:
dmaengine: Fix possible use after free
In dma_release_channel(), check chan->device->privatecnt after call dma_chan_put(). However, dma_chan_put() call dma_device_put() which could release the last reference of the device if the DMA provider is already gone and hence free it.
Fixes it by moving dma_chan_put() after the check.(CVE-2026-72476)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/mlx5: Release the HW‑provided UAR index rather than the SW one
Free the UAR index returned by the hardware.(CVE-2026-74296)
In the Linux kernel, the following vulnerability has been resolved:
RDMA/mlx5: Fix undefined shift of user RQ WQE size
set_rq_size() computes the RQ WQE size as "1 << rq_wqe_shift" based on the user-provided rq_wqe_shift, which is only checked to be greater than 32, so shifts of 32 are still accepted. A shift of 31 also overflows a signed integer, leading to undefined behavior.
Use check_shl_overflow() to compute the RQ WQE size and reject any invalid values.(CVE-2026-74297)
In the Linux kernel, the following vulnerability has been resolved:
vhost/net: complete zerocopy ubufs only once
vhost-net initializes one ubuf_info per outstanding zerocopy TX descriptor and hands it to the backend socket. The networking stack may then clone a zerocopy skb before all skb references are released. For example, batman-adv fragmentation reaches skb_split(), which calls skb_zerocopy_clone() and increments the same ubuf_info refcount.
vhost_zerocopy_complete() currently treats every ubuf callback as a completed vhost descriptor. It dereferences ubuf->ctx, writes the descriptor completion state, and drops the vhost_net_ubuf_ref even when the callback only releases a cloned skb reference. A backend reset can therefore wait for and free the vhost_net_ubuf_ref while another cloned skb still carries the same ubuf_info. A later completion then dereferences the freed ubufs pointer.
KASAN reports the stale completion as:
BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x1d7/0x1f0 BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x101/0x1f0 vhost_zerocopy_complete skb_copy_ubufs __dev_forward_skb2 veth_xmit
The freed object was allocated from vhost_net_ioctl() while setting the backend and freed through kfree_rcu()/kvfree_rcu_bulk after backend removal, while delayed skb completion still reached vhost_zerocopy_complete().
Honor the generic ubuf_info refcount before touching vhost state, and run the vhost descriptor completion only for the final ubuf reference. This matches the msg_zerocopy_complete() ownership rule for cloned zerocopy skbs.(CVE-2026-74310)
In the Linux kernel, the following vulnerability has been resolved:
bpf: Preserve pointer state for commuted arithmetic
When scalar += pointer is handled in adjust_ptr_min_max_vals(), the destination register inherits the pointer state from the source pointer. Copying only selected fields is fragile because pointer provenance is tracked by several bpf_reg_state fields.
Use the caller's temporary offset register to preserve the scalar operand while replacing the destination with the full pointer state. This preserves the frame number for PTR_TO_STACK registers and keeps parent identity fields consistent.(CVE-2026-74720)
In the Linux kernel, the following vulnerability has been resolved:
libceph: Avoid using invalid osd indices from primary_temp
A corrupted osdmap received from a Ceph monitor or OSD may contain osd indices in its pg_temp, primary_temp, pg_upmap, and pg_upmap_items parts that don't exist, i.e., that are greater than max_osd or smaller than CEPH_HOMELESS_OSD (-1). These indices are used to create the up and acting set in ceph_pg_to_up_acting_osds(), called from calc_target(). While most of these osd indices are checked, the one from primary_temp is not. Subsequently, this may lead to calc_target() returning this (potentially invalid) index as target osd for a (linger) request. Because the osd_state, osd_weight, and osd_addr arrays only contain max_osd entries (with indices 0 to max_osd -1), this leads to out-of-bounds accesses when trying to read values from these arrays.
This patch fixes the issue by adding a check to get_temp_osds(), so that only valid osd indices from primary_temp are used, and it falls back to using the primary from pg_temp or the up set if it is invalid.
{
"affected": [
{
"ecosystem_specific": {
"aarch64": [
"bpftool-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"bpftool-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-debugsource-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-devel-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-source-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-tools-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-tools-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"kernel-tools-devel-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"perf-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"python2-perf-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"python2-perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"python3-perf-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm",
"python3-perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.aarch64.rpm"
],
"src": [
"kernel-4.19.90-2609.1.0.0389.oe2003sp4.src.rpm"
],
"x86_64": [
"bpftool-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"bpftool-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-debugsource-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-devel-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-source-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-tools-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-tools-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"kernel-tools-devel-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"perf-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"python2-perf-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"python2-perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"python3-perf-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm",
"python3-perf-debuginfo-4.19.90-2609.1.0.0389.oe2003sp4.x86_64.rpm"
]
},
"package": {
"ecosystem": "openEuler:20.03-LTS-SP4",
"name": "kernel",
"purl": "pkg:rpm/openEuler/kernel\u0026distro=openEuler-20.03-LTS-SP4"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "4.19.90-2609.1.0.0389.oe2003sp4"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"database_specific": {
"severity": "Critical"
},
"details": "The Linux Kernel, the operating system core itself.\r\n\r\nSecurity Fix(es):\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nocfs2/dlm: fix off-by-one in dlm_match_regions() region comparison\n\nThe local-vs-remote region comparison loop uses \u0026apos;\u0026lt;=\u0026apos; instead of \u0026apos;\u0026lt;\u0026apos;,\ncausing it to read one entry past the valid range of qr_regions. The\nother loops in the same function correctly use \u0026apos;\u0026lt;\u0026apos;.\n\nFix the loop condition to use \u0026apos;\u0026lt;\u0026apos; for consistency and correctness.(CVE-2026-53309)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nixgbevf: fix use-after-free in VEPA multicast source pruning\n\nixgbevf_clean_rx_irq() prunes frames whose source MAC matches the VF\u0026apos;s\nown address (VEPA multicast workaround) by freeing the skb and\ncontinuing to the next descriptor:\n\n dev_kfree_skb_irq(skb);\n continue;\n\nThe skb pointer is declared outside the while loop and persists across\niterations. Because the continue skips the \u0026quot;skb = NULL\u0026quot; reset at the\nbottom of the loop, the next iteration enters the \u0026quot;else if (skb)\u0026quot; path\nand calls ixgbevf_add_rx_frag() on the freed skb, dereferencing\nskb_shinfo(skb)-\u0026gt;nr_frags - a use-after-free in NAPI softirq context.\n\nThe sibling driver iavf already handles this correctly by nulling the\npointer before continuing. Apply the same pattern here.\n\nI do not have ixgbevf hardware; the bug was found by static analysis\n(scan_drop_continue_loops.py + semgrep drop_continue_in_loop, multi-tool\ncorroboration with the highest score in the scan). The UAF was confirmed\nunder KASAN by loading a test module that reproduces the exact code\npattern (alloc skb, kfree_skb, then read skb_shinfo(skb)-\u0026gt;nr_frags):\n\n BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000\n Read of size 8 at addr 000000006163ae78 by task insmod/30\n freed 208-byte region [000000006163adc0, 000000006163ae90)\n\nQEMU emulates igb (82576) but not ixgbe (82599), and the igbvf VF\ndriver does not include the VEPA source pruning path, so a full\nend-to-end reproduction with emulated hardware was not possible.(CVE-2026-64113)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nsctp: validate STALE_COOKIE cause length before reading staleness\n\nWhen an ERROR chunk with a STALE_COOKIE cause is received in the\nCOOKIE_ECHOED state, sctp_sf_do_5_2_6_stale() reads the 4-byte Measure\nof Staleness that follows the cause header:\n\n\terr = (struct sctp_errhdr *)(chunk-\u0026gt;skb-\u0026gt;data);\n\tstale = ntohl(*(__be32 *)((u8 *)err + sizeof(*err)));\n\nerr is the first cause in the chunk, not the STALE_COOKIE cause that\ncaused the dispatch, and nothing guarantees the staleness field is\npresent. sctp_walk_errors() only requires a cause to be as long as the\n4-byte header, so for a STALE_COOKIE cause of length 4 the read runs\npast the cause, and for a minimal ERROR chunk past skb-\u0026gt;tail. The value\nis echoed to the peer in the Cookie Preservative of the reply INIT,\nleaking uninitialized memory.\n\nsctp_sf_cookie_echoed_err() already walks to the STALE_COOKIE cause, so\ncheck its length there and pass it to sctp_sf_do_5_2_6_stale(), which\nreads that cause instead of the first one. A STALE_COOKIE cause too\nshort to hold the staleness field is discarded.\n\nThe read is reachable by any peer that can drive an association into\nCOOKIE_ECHOED, including an unprivileged process using a raw SCTP socket\nin a user and network namespace.(CVE-2026-64551)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nlibceph: fix two unsafe bare decodes in decode_lockers()\n\ndecode_lockers() in cls_lock_client.c contains two bare decode operations\nthat allow a malicious or compromised OSD to trigger slab-out-of-bounds\nreads:\n\n1. ceph_decode_32(p) at the num_lockers field has no preceding bounds\n check. ceph_start_decoding() accepts struct_len=0 as valid -- the\n internal ceph_decode_need(p, end, 0, bad) always passes -- so when an\n OSD sends struct_len=0, ceph_start_decoding() returns success with\n p == end. The immediately following bare ceph_decode_32(p) then reads\n 4 bytes past the validated buffer boundary. The garbage value is\n passed directly to kzalloc_objs() as the locker count.\n\n The sibling function decode_watchers() in osd_client.c already uses\n ceph_decode_32_safe() after its own ceph_start_decoding() call.\n decode_lockers() was the only site using the bare variant.\n\n2. ceph_decode_8(p) after the decode_locker() loop has no preceding\n bounds check. If an OSD crafts num_lockers such that the loop\n advances p exactly to end, the subsequent bare ceph_decode_8(p) reads\n one byte past the validated buffer boundary. The result is passed\n directly into *type, which is used as a lock type discriminator by\n callers, giving an OSD-controlled one-byte OOB read with direct\n influence over the lock type field.\n\nFix both by replacing bare operations with their safe variants:\n ceph_decode_32(p) -\u0026gt; ceph_decode_32_safe(p, end, *num_lockers,\n err_inval)\n ceph_decode_8(p) -\u0026gt; ceph_decode_8_safe(p, end, *type,\n err_free_lockers)\n\nThe goto targets differ intentionally:\n err_inval: is a new label returning -EINVAL directly. It is used for\n the pre-allocation failure path where *lockers is not yet allocated\n and must not be passed to ceph_free_lockers().\n\n err_free_lockers: is the existing label. It is used for the\n post-allocation failure path where *lockers is allocated and must\n be freed.\n\nret is set to -EINVAL before ceph_decode_8_safe() so that\nerr_free_lockers returns the correct error code on bounds violation.\nWithout this, err_free_lockers would return a stale ret value (0 from\nthe successful decode_locker() loop), silently swallowing the error.\n\n-EINVAL is correct for both failure paths. The data received from the\nOSD is structurally malformed. -ENOMEM would misrepresent the failure\nclass to callers and to stable@ backporters triaging error paths.\n\nAttacker model: a malicious or compromised OSD in a multi-tenant Ceph\ndeployment can trigger this against any kernel client that issues the\nlock.get_info class method (e.g. during RBD exclusive lock acquisition).\n\n[ idryomov: trim changelog, formatting ](CVE-2026-68082)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ndmaengine: Fix possible use after free\n\nIn dma_release_channel(), check chan-\u0026gt;device-\u0026gt;privatecnt after call\ndma_chan_put(). However, dma_chan_put() call dma_device_put() which could\nrelease the last reference of the device if the DMA provider is already\ngone and hence free it.\n\nFixes it by moving dma_chan_put() after the check.(CVE-2026-72476)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx5: Release the HW\u2011provided UAR index rather than the SW one\n\nFree the UAR index returned by the hardware.(CVE-2026-74296)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx5: Fix undefined shift of user RQ WQE size\n\nset_rq_size() computes the RQ WQE size as \u0026quot;1 \u0026lt;\u0026lt; rq_wqe_shift\u0026quot; based on\nthe user-provided rq_wqe_shift, which is only checked to be greater than\n32, so shifts of 32 are still accepted. A shift of 31 also overflows a\nsigned integer, leading to undefined behavior.\n\nUse check_shl_overflow() to compute the RQ WQE size and reject any\ninvalid values.(CVE-2026-74297)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nvhost/net: complete zerocopy ubufs only once\n\nvhost-net initializes one ubuf_info per outstanding zerocopy TX\ndescriptor and hands it to the backend socket. The networking stack may\nthen clone a zerocopy skb before all skb references are released. For\nexample, batman-adv fragmentation reaches skb_split(), which calls\nskb_zerocopy_clone() and increments the same ubuf_info refcount.\n\nvhost_zerocopy_complete() currently treats every ubuf callback as a\ncompleted vhost descriptor. It dereferences ubuf-\u0026gt;ctx, writes the\ndescriptor completion state, and drops the vhost_net_ubuf_ref even when\nthe callback only releases a cloned skb reference. A backend reset can\ntherefore wait for and free the vhost_net_ubuf_ref while another cloned\nskb still carries the same ubuf_info. A later completion then\ndereferences the freed ubufs pointer.\n\nKASAN reports the stale completion as:\n\n BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x1d7/0x1f0\n BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x101/0x1f0\n vhost_zerocopy_complete\n skb_copy_ubufs\n __dev_forward_skb2\n veth_xmit\n\nThe freed object was allocated from vhost_net_ioctl() while setting the\nbackend and freed through kfree_rcu()/kvfree_rcu_bulk after backend\nremoval, while delayed skb completion still reached\nvhost_zerocopy_complete().\n\nHonor the generic ubuf_info refcount before touching vhost state, and run\nthe vhost descriptor completion only for the final ubuf reference. This\nmatches the msg_zerocopy_complete() ownership rule for cloned zerocopy\nskbs.(CVE-2026-74310)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Preserve pointer state for commuted arithmetic\n\nWhen scalar += pointer is handled in adjust_ptr_min_max_vals(), the\ndestination register inherits the pointer state from the source pointer.\nCopying only selected fields is fragile because pointer provenance is\ntracked by several bpf_reg_state fields.\n\nUse the caller\u0026apos;s temporary offset register to preserve the scalar operand\nwhile replacing the destination with the full pointer state. This preserves\nthe frame number for PTR_TO_STACK registers and keeps parent identity\nfields consistent.(CVE-2026-74720)\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nlibceph: Avoid using invalid osd indices from primary_temp\n\nA corrupted osdmap received from a Ceph monitor or OSD may contain osd\nindices in its pg_temp, primary_temp, pg_upmap, and pg_upmap_items parts\nthat don\u0026apos;t exist, i.e., that are greater than max_osd or smaller than\nCEPH_HOMELESS_OSD (-1). These indices are used to create the up and\nacting set in ceph_pg_to_up_acting_osds(), called from calc_target().\nWhile most of these osd indices are checked, the one from primary_temp\nis not. Subsequently, this may lead to calc_target() returning this\n(potentially invalid) index as target osd for a (linger) request.\nBecause the osd_state, osd_weight, and osd_addr arrays only contain\nmax_osd entries (with indices 0 to max_osd -1), this leads to\nout-of-bounds accesses when trying to read values from these arrays.\n\nThis patch fixes the issue by adding a check to get_temp_osds(), so that\nonly valid osd indices from primary_temp are used, and it falls back to\nusing the primary from pg_temp or the up set if it is invalid.\n\n[ idryomov: changelog ](CVE-2026-80558)",
"id": "OESA-2026-3705",
"modified": "2026-09-14T16:33:32Z",
"published": "2026-09-14T16:33:32Z",
"references": [
{
"type": "ADVISORY",
"url": "https://www.openeuler.org/zh/security/security-bulletins/detail/?id=openEuler-SA-2026-3705"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-53309"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-64113"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-64551"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-68082"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-72476"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74296"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74297"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74310"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74720"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-80558"
}
],
"schema_version": "1.7.2",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "kernel security update",
"upstream": [
"CVE-2026-53309",
"CVE-2026-64113",
"CVE-2026-64551",
"CVE-2026-68082",
"CVE-2026-72476",
"CVE-2026-74296",
"CVE-2026-74297",
"CVE-2026-74310",
"CVE-2026-74720",
"CVE-2026-80558"
]
}
CVE-2026-53309 (GCVE-0-2026-53309)
Vulnerability from cvelistv5 – Published: 2026-06-26 19:41 – Updated: 2026-08-05 12:34| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/760ab35040aca8399… | |
| https://git.kernel.org/stable/c/c60a2710b73838d25… | |
| https://git.kernel.org/stable/c/2a0673836f019e7c0… | |
| https://git.kernel.org/stable/c/819d8ebad3200a53d… | |
| https://git.kernel.org/stable/c/d5403ae28085761d5… | |
| https://git.kernel.org/stable/c/1fb7f356547d96888… | |
| https://git.kernel.org/stable/c/426cd8eedac89b861… | |
| https://git.kernel.org/stable/c/01b61e8dda9b0fdb0… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
ea2034416b54700e30371f2ad6517cbb94674083 , < 760ab35040aca8399021fdb9ff1db1089feb7194
(git)
Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < c60a2710b73838d250cda57344c049b89abc5d52 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < 2a0673836f019e7c032acbf48d022d5ccf02a845 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < 819d8ebad3200a53de99bd7e297bc428e41ced54 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < d5403ae28085761d58b555645bc7d5feadb10073 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < 1fb7f356547d9688822315cd2b205ff0bd5429b4 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < 426cd8eedac89b86148d4478990eeef16e8a2520 (git) Affected: ea2034416b54700e30371f2ad6517cbb94674083 , < 01b61e8dda9b0fdb0d4cda43de25f4e390554d7b (git) |
|
| Linux | Linux |
Affected:
2.6.37
Unaffected: 0 , < 2.6.37 (semver) Unaffected: 5.10.258 , ≤ 5.10.* (semver) Unaffected: 5.15.209 , ≤ 5.15.* (semver) Unaffected: 6.1.175 , ≤ 6.1.* (semver) Unaffected: 6.6.141 , ≤ 6.6.* (semver) Unaffected: 6.12.91 , ≤ 6.12.* (semver) Unaffected: 6.18.33 , ≤ 6.18.* (semver) Unaffected: 7.0.10 , ≤ 7.0.* (semver) Unaffected: 7.1 , ≤ * (original_commit_for_fix) |
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"fs/ocfs2/dlm/dlmdomain.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "760ab35040aca8399021fdb9ff1db1089feb7194",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "c60a2710b73838d250cda57344c049b89abc5d52",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "2a0673836f019e7c032acbf48d022d5ccf02a845",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "819d8ebad3200a53de99bd7e297bc428e41ced54",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "d5403ae28085761d58b555645bc7d5feadb10073",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "1fb7f356547d9688822315cd2b205ff0bd5429b4",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "426cd8eedac89b86148d4478990eeef16e8a2520",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
},
{
"lessThan": "01b61e8dda9b0fdb0d4cda43de25f4e390554d7b",
"status": "affected",
"version": "ea2034416b54700e30371f2ad6517cbb94674083",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"fs/ocfs2/dlm/dlmdomain.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.37"
},
{
"lessThan": "2.6.37",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.258",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.209",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.175",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.141",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.91",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.33",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.0.*",
"status": "unaffected",
"version": "7.0.10",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.1",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.258",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.209",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.175",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.141",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.91",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.33",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.0.10",
"versionStartIncluding": "2.6.37",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1",
"versionStartIncluding": "2.6.37",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nocfs2/dlm: fix off-by-one in dlm_match_regions() region comparison\n\nThe local-vs-remote region comparison loop uses \u0027\u003c=\u0027 instead of \u0027\u003c\u0027,\ncausing it to read one entry past the valid range of qr_regions. The\nother loops in the same function correctly use \u0027\u003c\u0027.\n\nFix the loop condition to use \u0027\u003c\u0027 for consistency and correctness."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - DLM_QUERY_REGION is received and dispatched by the ocfs2 o2net TCP cluster transport, so the vulnerable comparison is reached through network messages from a peer node.\nAC:L - A peer that can reach the OCFS2 cluster transport can deterministically drive the join sequence and send a crafted region list; the off-by-one comparison is not a race and needs no unusual timing.\nPR:N - The receive path does not require credentials or a local account on the target; it relies on cluster node/IP/heartbeat state rather than authenticated target privileges.\nUI:N - Once the OCFS2/DLM cluster service is running, exploitation is driven entirely by network protocol messages and requires no victim user action.\nS:U - The vulnerable component and resulting kernel/cluster filesystem effects remain within the same kernel and OCFS2 cluster security authority.\nC:H - The bug is an out-of-bounds read of a region-sized entry beyond the valid qr_regions range, driven by attacker-supplied network state; under the required kernel scoring guidance, non-trivial out-of-bounds reads are treated as high confidentiality impact.\nI:H - The off-by-one can let a joining node pass heartbeat-region validation with an inconsistent region set, undermining DLM cluster membership safety and enabling severe shared-filesystem integrity corruption in a plausible OCFS2 deployment.\nA:H - Accepting inconsistent heartbeat regions can lead to cluster miscoordination, fencing, hangs, or filesystem disruption, and the malformed query can be sent without user interaction once the join path is reachable."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-05T12:34:59.157Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/760ab35040aca8399021fdb9ff1db1089feb7194"
},
{
"url": "https://git.kernel.org/stable/c/c60a2710b73838d250cda57344c049b89abc5d52"
},
{
"url": "https://git.kernel.org/stable/c/2a0673836f019e7c032acbf48d022d5ccf02a845"
},
{
"url": "https://git.kernel.org/stable/c/819d8ebad3200a53de99bd7e297bc428e41ced54"
},
{
"url": "https://git.kernel.org/stable/c/d5403ae28085761d58b555645bc7d5feadb10073"
},
{
"url": "https://git.kernel.org/stable/c/1fb7f356547d9688822315cd2b205ff0bd5429b4"
},
{
"url": "https://git.kernel.org/stable/c/426cd8eedac89b86148d4478990eeef16e8a2520"
},
{
"url": "https://git.kernel.org/stable/c/01b61e8dda9b0fdb0d4cda43de25f4e390554d7b"
}
],
"title": "ocfs2/dlm: fix off-by-one in dlm_match_regions() region comparison",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-53309",
"datePublished": "2026-06-26T19:41:03.505Z",
"dateReserved": "2026-06-09T07:44:35.397Z",
"dateUpdated": "2026-08-05T12:34:59.157Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-64113 (GCVE-0-2026-64113)
Vulnerability from cvelistv5 – Published: 2026-07-19 15:40 – Updated: 2026-10-19 20:28- CWE-416 - Use After Free
| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/3d931ac62411a7e43… | |
| https://git.kernel.org/stable/c/6ef30384a50a50e4a… | |
| https://git.kernel.org/stable/c/55b3e91d62b2f7a24… | |
| https://git.kernel.org/stable/c/add70e2682c0ad3be… | |
| https://git.kernel.org/stable/c/a244395d8c563ed1b… | |
| https://git.kernel.org/stable/c/dfef79e09ed2f5df9… | |
| https://git.kernel.org/stable/c/e8768bcbe5cd30c4e… | |
| https://git.kernel.org/stable/c/5d49b568c188dc771… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
bad17234ba702a50aeec50ab04724ee58af89607 , < 3d931ac62411a7e43b85dba5fe45e1a4a91bd5cb
(git)
Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < 6ef30384a50a50e4a484cddf341bc27de31aa3de (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < 55b3e91d62b2f7a24109b2d7c9f4c66d2e3b1ec1 (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < add70e2682c0ad3be2a5810bcf1bc13963ba4df9 (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < a244395d8c563ed1bb26c3ef708db6aeeaa08084 (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < dfef79e09ed2f5df975c98547f97f5d7f8982a24 (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < e8768bcbe5cd30c4ea36a22022c9ffaa66903693 (git) Affected: bad17234ba702a50aeec50ab04724ee58af89607 , < 5d49b568c188dc77199d8d2b959c91da8cc27cf1 (git) |
|
| Linux | Linux |
Affected:
3.19
Unaffected: 0 , < 3.19 (semver) Unaffected: 5.10.258 , ≤ 5.10.* (semver) Unaffected: 5.15.209 , ≤ 5.15.* (semver) Unaffected: 6.1.175 , ≤ 6.1.* (semver) Unaffected: 6.6.142 , ≤ 6.6.* (semver) Unaffected: 6.12.92 , ≤ 6.12.* (semver) Unaffected: 6.18.34 , ≤ 6.18.* (semver) Unaffected: 7.0.11 , ≤ 7.0.* (semver) Unaffected: 7.1 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-64113",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T15:36:28.876679Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-416",
"description": "CWE-416 Use After Free",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-19T20:28:12.519Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "3d931ac62411a7e43b85dba5fe45e1a4a91bd5cb",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "6ef30384a50a50e4a484cddf341bc27de31aa3de",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "55b3e91d62b2f7a24109b2d7c9f4c66d2e3b1ec1",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "add70e2682c0ad3be2a5810bcf1bc13963ba4df9",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "a244395d8c563ed1bb26c3ef708db6aeeaa08084",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "dfef79e09ed2f5df975c98547f97f5d7f8982a24",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "e8768bcbe5cd30c4ea36a22022c9ffaa66903693",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
},
{
"lessThan": "5d49b568c188dc77199d8d2b959c91da8cc27cf1",
"status": "affected",
"version": "bad17234ba702a50aeec50ab04724ee58af89607",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.19"
},
{
"lessThan": "3.19",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.258",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.209",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.175",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.142",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.92",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.34",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.0.*",
"status": "unaffected",
"version": "7.0.11",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.1",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.258",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.209",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.175",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.142",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.92",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.34",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.0.11",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1",
"versionStartIncluding": "3.19",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nixgbevf: fix use-after-free in VEPA multicast source pruning\n\nixgbevf_clean_rx_irq() prunes frames whose source MAC matches the VF\u0027s\nown address (VEPA multicast workaround) by freeing the skb and\ncontinuing to the next descriptor:\n\n dev_kfree_skb_irq(skb);\n continue;\n\nThe skb pointer is declared outside the while loop and persists across\niterations. Because the continue skips the \"skb = NULL\" reset at the\nbottom of the loop, the next iteration enters the \"else if (skb)\" path\nand calls ixgbevf_add_rx_frag() on the freed skb, dereferencing\nskb_shinfo(skb)-\u003enr_frags - a use-after-free in NAPI softirq context.\n\nThe sibling driver iavf already handles this correctly by nulling the\npointer before continuing. Apply the same pattern here.\n\nI do not have ixgbevf hardware; the bug was found by static analysis\n(scan_drop_continue_loops.py + semgrep drop_continue_in_loop, multi-tool\ncorroboration with the highest score in the scan). The UAF was confirmed\nunder KASAN by loading a test module that reproduces the exact code\npattern (alloc skb, kfree_skb, then read skb_shinfo(skb)-\u003enr_frags):\n\n BUG: KASAN: slab-use-after-free in ixgbevf_uaf_test_init+0x100/0x1000\n Read of size 8 at addr 000000006163ae78 by task insmod/30\n freed 208-byte region [000000006163adc0, 000000006163ae90)\n\nQEMU emulates igb (82576) but not ixgbe (82599), and the igbvf VF\ndriver does not include the VEPA source pruning path, so a full\nend-to-end reproduction with emulated hardware was not possible."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - The bug is in the ixgbevf NAPI receive path triggered by incoming Ethernet frames delivered by the VF hardware; per kernel guidance, driver bugs reachable via received packets are scored as Network.\nAC:L - An attacker can reliably trigger the bug by sending a VEPA-reflected multicast/broadcast frame whose source MAC matches the VF address, then immediately sending a follow-on frame so the next loop iteration reuses the freed skb pointer in the same NAPI poll.\nPR:N - Exploitation requires only the ability to inject crafted L2 frames at the VF (e.g., a co-tenant VM on the same VLAN/cloud segment); no local account or capabilities on the victim system are needed.\nUI:N - No victim user action is required; the UAF occurs automatically during softirq packet processing once the crafted frames are received.\nS:U - Impact is kernel memory corruption within the same privilege domain (guest or host kernel running the VF driver), not a cross-VM/host security-boundary escape.\nC:H - The UAF reads freed slab memory via `skb_shinfo(skb)-\u003enr_frags` in `ixgbevf_add_rx_frag()`, which KASAN confirmed and which can be leveraged for arbitrary kernel memory disclosure.\nI:H - The same UAF path writes into the freed skb through `skb_add_rx_frag()` (fragment metadata, lengths), enabling heap corruption and potential control-flow hijack.\nA:H - Use-after-free in NAPI softirq context can cause kernel oops/panic during receive processing even without full exploitation."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-05T12:39:22.189Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/3d931ac62411a7e43b85dba5fe45e1a4a91bd5cb"
},
{
"url": "https://git.kernel.org/stable/c/6ef30384a50a50e4a484cddf341bc27de31aa3de"
},
{
"url": "https://git.kernel.org/stable/c/55b3e91d62b2f7a24109b2d7c9f4c66d2e3b1ec1"
},
{
"url": "https://git.kernel.org/stable/c/add70e2682c0ad3be2a5810bcf1bc13963ba4df9"
},
{
"url": "https://git.kernel.org/stable/c/a244395d8c563ed1bb26c3ef708db6aeeaa08084"
},
{
"url": "https://git.kernel.org/stable/c/dfef79e09ed2f5df975c98547f97f5d7f8982a24"
},
{
"url": "https://git.kernel.org/stable/c/e8768bcbe5cd30c4ea36a22022c9ffaa66903693"
},
{
"url": "https://git.kernel.org/stable/c/5d49b568c188dc77199d8d2b959c91da8cc27cf1"
}
],
"title": "ixgbevf: fix use-after-free in VEPA multicast source pruning",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-64113",
"datePublished": "2026-07-19T15:40:14.251Z",
"dateReserved": "2026-07-19T07:54:57.035Z",
"dateUpdated": "2026-10-19T20:28:12.519Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-64551 (GCVE-0-2026-64551)
Vulnerability from cvelistv5 – Published: 2026-07-27 20:10 – Updated: 2026-10-19 20:48- CWE-125 - Out-of-bounds Read
| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/6022da37786701df1… | |
| https://git.kernel.org/stable/c/861f884f5471632c7… | |
| https://git.kernel.org/stable/c/588706ebaf8cdb4a4… | |
| https://git.kernel.org/stable/c/a257b41ddfe9e327b… | |
| https://git.kernel.org/stable/c/08a8f2d13f7039243… | |
| https://git.kernel.org/stable/c/ebe0a55d954fa8da3… | |
| https://git.kernel.org/stable/c/bbd6b2ea966cf57b6… | |
| https://git.kernel.org/stable/c/1cd23ca80784223fa… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 6022da37786701df1fc5dd946a6dcba59d5473b1
(git)
Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 861f884f5471632c731cbbd612a1c072e391a624 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 588706ebaf8cdb4a4161602949eba365514b1db1 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < a257b41ddfe9e327b26581ad2777f04b23ac73f5 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 08a8f2d13f703924316e9aeac863a88ef50990c7 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < ebe0a55d954fa8da383b6192edb8f763dcb002d5 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < bbd6b2ea966cf57b6ae095cf5a8dbc993cd197a0 (git) Affected: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 , < 1cd23ca80784223fa2204e16203f754da4e821f8 (git) |
|
| Linux | Linux |
Affected:
2.6.12
Unaffected: 0 , < 2.6.12 (semver) Unaffected: 5.10.261 , ≤ 5.10.* (semver) Unaffected: 5.15.212 , ≤ 5.15.* (semver) Unaffected: 6.1.178 , ≤ 6.1.* (semver) Unaffected: 6.6.145 , ≤ 6.6.* (semver) Unaffected: 6.12.97 , ≤ 6.12.* (semver) Unaffected: 6.18.40 , ≤ 6.18.* (semver) Unaffected: 7.1.5 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-64551",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "partial"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T15:42:25.961430Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-125",
"description": "CWE-125 Out-of-bounds Read",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-19T20:48:40.456Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/sctp/sm_statefuns.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "6022da37786701df1fc5dd946a6dcba59d5473b1",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "861f884f5471632c731cbbd612a1c072e391a624",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "588706ebaf8cdb4a4161602949eba365514b1db1",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "a257b41ddfe9e327b26581ad2777f04b23ac73f5",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "08a8f2d13f703924316e9aeac863a88ef50990c7",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "ebe0a55d954fa8da383b6192edb8f763dcb002d5",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "bbd6b2ea966cf57b6ae095cf5a8dbc993cd197a0",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
},
{
"lessThan": "1cd23ca80784223fa2204e16203f754da4e821f8",
"status": "affected",
"version": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/sctp/sm_statefuns.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.12"
},
{
"lessThan": "2.6.12",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.261",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.212",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.5",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.261",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.212",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "2.6.12",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "2.6.12",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsctp: validate STALE_COOKIE cause length before reading staleness\n\nWhen an ERROR chunk with a STALE_COOKIE cause is received in the\nCOOKIE_ECHOED state, sctp_sf_do_5_2_6_stale() reads the 4-byte Measure\nof Staleness that follows the cause header:\n\n\terr = (struct sctp_errhdr *)(chunk-\u003eskb-\u003edata);\n\tstale = ntohl(*(__be32 *)((u8 *)err + sizeof(*err)));\n\nerr is the first cause in the chunk, not the STALE_COOKIE cause that\ncaused the dispatch, and nothing guarantees the staleness field is\npresent. sctp_walk_errors() only requires a cause to be as long as the\n4-byte header, so for a STALE_COOKIE cause of length 4 the read runs\npast the cause, and for a minimal ERROR chunk past skb-\u003etail. The value\nis echoed to the peer in the Cookie Preservative of the reply INIT,\nleaking uninitialized memory.\n\nsctp_sf_cookie_echoed_err() already walks to the STALE_COOKIE cause, so\ncheck its length there and pass it to sctp_sf_do_5_2_6_stale(), which\nreads that cause instead of the first one. A STALE_COOKIE cause too\nshort to hold the staleness field is discarded.\n\nThe read is reachable by any peer that can drive an association into\nCOOKIE_ECHOED, including an unprivileged process using a raw SCTP socket\nin a user and network namespace."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.1,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - The vulnerable code is in the SCTP receive-side state machine and is driven entirely by an attacker-crafted ERROR chunk arriving over the network; no local access is needed. Per kernel guidance, net/ stack bugs reachable via received packets (SCTP explicitly) are Network.\nAC:L - The attacker fully controls the trigger: acting as the SCTP peer it answers INIT with INIT-ACK to place the association in COOKIE_ECHOED, then sends a minimal ERROR chunk with a 4-byte STALE_COOKIE cause as the last chunk in the packet. There is no race, no memory-layout dependency, and the vtag needed is the one the victim itself advertised in its INIT.\nPR:N - SCTP association setup is unauthenticated; the only check is sctp_vtag_verify() against a tag the peer already received in the victim\u0027s INIT. The attacker needs no credentials or privileges on the target system.\nUI:N - No human user action is required \u2014 SCTP client daemons (SIGTRAN, Diameter, cluster transports) establish and retry associations automatically, and an on-path attacker can inject the ERROR into an in-progress handshake. In the local variant an unprivileged process creates both sides itself with no user involved.\nS:U - The out-of-bounds read and the resulting disclosure stay within the kernel\u0027s own security authority; no VM, sandbox, or IOMMU boundary is crossed.\nC:H - Uninitialized kernel memory past skb-\u003etail is read and then transmitted straight back to the attacker inside the reply INIT\u0027s Cookie Preservative parameter, and the attack can be repeated indefinitely to sample recycled network-buffer memory that may contain remnants of other connections\u0027 traffic. This is a remote, unauthenticated, repeatable kernel heap disclosure oracle, matching the C:H treatment given to the sibling SCTP uninit-read CVE-2026-53225.\nI:N - The bug is a pure read; nothing in kernel memory or in the victim\u0027s association state is modified. The only affected value is a protocol field in a packet sent to the attacker itself.\nA:H - The read runs past the end of the received packet data, a memory-safety violation whose target is not proven to remain inside the skb\u0027s allocation across all receive paths (GSO/frag_list segments, UDP-encapsulated and linearized skbs), so it can fault and oops; kernel guidance and the CNA\u0027s scoring of the equivalent SCTP out-of-bounds-read bug both treat this class as A:H."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T04:57:28.771Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/6022da37786701df1fc5dd946a6dcba59d5473b1"
},
{
"url": "https://git.kernel.org/stable/c/861f884f5471632c731cbbd612a1c072e391a624"
},
{
"url": "https://git.kernel.org/stable/c/588706ebaf8cdb4a4161602949eba365514b1db1"
},
{
"url": "https://git.kernel.org/stable/c/a257b41ddfe9e327b26581ad2777f04b23ac73f5"
},
{
"url": "https://git.kernel.org/stable/c/08a8f2d13f703924316e9aeac863a88ef50990c7"
},
{
"url": "https://git.kernel.org/stable/c/ebe0a55d954fa8da383b6192edb8f763dcb002d5"
},
{
"url": "https://git.kernel.org/stable/c/bbd6b2ea966cf57b6ae095cf5a8dbc993cd197a0"
},
{
"url": "https://git.kernel.org/stable/c/1cd23ca80784223fa2204e16203f754da4e821f8"
}
],
"title": "sctp: validate STALE_COOKIE cause length before reading staleness",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-64551",
"datePublished": "2026-07-27T20:10:40.012Z",
"dateReserved": "2026-07-19T15:36:31.796Z",
"dateUpdated": "2026-10-19T20:48:40.456Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-68082 (GCVE-0-2026-68082)
Vulnerability from cvelistv5 – Published: 2026-08-08 09:17 – Updated: 2026-10-19 20:48- CWE-125 - Out-of-bounds Read
| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/c8ade01170a27d8ed… | |
| https://git.kernel.org/stable/c/001835c599899ef1b… | |
| https://git.kernel.org/stable/c/7c422364acd93d7da… | |
| https://git.kernel.org/stable/c/02430f6f729b297e8… | |
| https://git.kernel.org/stable/c/57ba829804fe6d34b… | |
| https://git.kernel.org/stable/c/89df5d71f83f8e278… | |
| https://git.kernel.org/stable/c/a54be593d0b749161… | |
| https://git.kernel.org/stable/c/a109a556115271ca7… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
d4ed4a530562881cc5225050e42d96034f405aae , < c8ade01170a27d8ede0d761c255268af81e417f8
(git)
Affected: d4ed4a530562881cc5225050e42d96034f405aae , < 001835c599899ef1bd3506a815110a6374451554 (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < 7c422364acd93d7da1dfc27d6b54635a269653a1 (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < 02430f6f729b297e803d0605871f0a670b4eafd6 (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < 57ba829804fe6d34bbac3b826c4b15c1caa54862 (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < 89df5d71f83f8e2781286798fd8ae5e42cf5f1a7 (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < a54be593d0b749161b08a1e56189b2cb9114267a (git) Affected: d4ed4a530562881cc5225050e42d96034f405aae , < a109a556115271ca7896dcda7b4b7e45e156c227 (git) |
|
| Linux | Linux |
Affected:
4.9
Unaffected: 0 , < 4.9 (semver) Unaffected: 5.10.266 , ≤ 5.10.* (semver) Unaffected: 5.15.217 , ≤ 5.15.* (semver) Unaffected: 6.1.184 , ≤ 6.1.* (semver) Unaffected: 6.6.153 , ≤ 6.6.* (semver) Unaffected: 6.12.105 , ≤ 6.12.* (semver) Unaffected: 6.18.46 , ≤ 6.18.* (semver) Unaffected: 7.1.6 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-68082",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T15:43:33.803451Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-125",
"description": "CWE-125 Out-of-bounds Read",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-10-19T20:48:44.160Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/ceph/cls_lock_client.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "c8ade01170a27d8ede0d761c255268af81e417f8",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "001835c599899ef1bd3506a815110a6374451554",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "7c422364acd93d7da1dfc27d6b54635a269653a1",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "02430f6f729b297e803d0605871f0a670b4eafd6",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "57ba829804fe6d34bbac3b826c4b15c1caa54862",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "89df5d71f83f8e2781286798fd8ae5e42cf5f1a7",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "a54be593d0b749161b08a1e56189b2cb9114267a",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
},
{
"lessThan": "a109a556115271ca7896dcda7b4b7e45e156c227",
"status": "affected",
"version": "d4ed4a530562881cc5225050e42d96034f405aae",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/ceph/cls_lock_client.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "4.9"
},
{
"lessThan": "4.9",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.266",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.217",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.184",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.153",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.105",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.46",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.6",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.266",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.217",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.184",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.153",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.105",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.46",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.6",
"versionStartIncluding": "4.9",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "4.9",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nlibceph: fix two unsafe bare decodes in decode_lockers()\n\ndecode_lockers() in cls_lock_client.c contains two bare decode operations\nthat allow a malicious or compromised OSD to trigger slab-out-of-bounds\nreads:\n\n1. ceph_decode_32(p) at the num_lockers field has no preceding bounds\n check. ceph_start_decoding() accepts struct_len=0 as valid -- the\n internal ceph_decode_need(p, end, 0, bad) always passes -- so when an\n OSD sends struct_len=0, ceph_start_decoding() returns success with\n p == end. The immediately following bare ceph_decode_32(p) then reads\n 4 bytes past the validated buffer boundary. The garbage value is\n passed directly to kzalloc_objs() as the locker count.\n\n The sibling function decode_watchers() in osd_client.c already uses\n ceph_decode_32_safe() after its own ceph_start_decoding() call.\n decode_lockers() was the only site using the bare variant.\n\n2. ceph_decode_8(p) after the decode_locker() loop has no preceding\n bounds check. If an OSD crafts num_lockers such that the loop\n advances p exactly to end, the subsequent bare ceph_decode_8(p) reads\n one byte past the validated buffer boundary. The result is passed\n directly into *type, which is used as a lock type discriminator by\n callers, giving an OSD-controlled one-byte OOB read with direct\n influence over the lock type field.\n\nFix both by replacing bare operations with their safe variants:\n ceph_decode_32(p) -\u003e ceph_decode_32_safe(p, end, *num_lockers,\n err_inval)\n ceph_decode_8(p) -\u003e ceph_decode_8_safe(p, end, *type,\n err_free_lockers)\n\nThe goto targets differ intentionally:\n err_inval: is a new label returning -EINVAL directly. It is used for\n the pre-allocation failure path where *lockers is not yet allocated\n and must not be passed to ceph_free_lockers().\n\n err_free_lockers: is the existing label. It is used for the\n post-allocation failure path where *lockers is allocated and must\n be freed.\n\nret is set to -EINVAL before ceph_decode_8_safe() so that\nerr_free_lockers returns the correct error code on bounds violation.\nWithout this, err_free_lockers would return a stale ret value (0 from\nthe successful decode_locker() loop), silently swallowing the error.\n\n-EINVAL is correct for both failure paths. The data received from the\nOSD is structurally malformed. -ENOMEM would misrepresent the failure\nclass to callers and to stable@ backporters triaging error paths.\n\nAttacker model: a malicious or compromised OSD in a multi-tenant Ceph\ndeployment can trigger this against any kernel client that issues the\nlock.get_info class method (e.g. during RBD exclusive lock acquisition).\n\n[ idryomov: trim changelog, formatting ]"
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - The flaw is reached when libceph decodes a crafted MOSDOpReply for the lock.get_info class method received over the Ceph messenger TCP session from a compromised or malicious OSD; no local syscall or ioctl is required on the victim.\nAC:L - A malicious OSD can deterministically send struct_len=0 or craft num_lockers so the decode pointer reaches end, triggering both bare decodes on every attempt without races, special memory layout, or rare kernel configuration.\nPR:N - The attacker acts as the remote Ceph OSD peer and needs no account or privileges on the victim Linux host; any kernel RBD client connected to a multi-tenant or attacker-controlled cluster is exposed during automatic exclusive-lock operations.\nUI:N - Once an RBD image is mapped, ceph_cls_lock_info() is invoked automatically during exclusive-lock acquisition and object-map lock recovery; no further victim user or administrator action is required at exploit time.\nS:U - The slab out-of-bounds reads and any resulting kernel memory corruption occur entirely within the victim host kernel running the Ceph client, without crossing VM, container, or IOMMU security boundaries.\nC:H - Bare ceph_decode_32/8 past the validated reply boundary perform slab out-of-bounds reads of adjacent kernel memory; the leaked u32 can drive kzalloc_objs() sizing and the OOB u8 directly controls the lock-type field consumed by RBD lock logic.\nI:H - Attacker-influenced out-of-bounds values feed heap allocation sizing and lock-type discrimination in kernel lock-handling paths, providing memory-corruption primitives in a privileged parser that can be leveraged beyond simple information disclosure.\nA:H - Slab out-of-bounds reads can trigger KASAN faults or kernel oops on instrumented builds, and attacker-controlled locker counts can force very large kzalloc attempts causing severe memory pressure, OOM conditions, and loss of availability on RBD client hosts."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-23T12:45:46.891Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/c8ade01170a27d8ede0d761c255268af81e417f8"
},
{
"url": "https://git.kernel.org/stable/c/001835c599899ef1bd3506a815110a6374451554"
},
{
"url": "https://git.kernel.org/stable/c/7c422364acd93d7da1dfc27d6b54635a269653a1"
},
{
"url": "https://git.kernel.org/stable/c/02430f6f729b297e803d0605871f0a670b4eafd6"
},
{
"url": "https://git.kernel.org/stable/c/57ba829804fe6d34bbac3b826c4b15c1caa54862"
},
{
"url": "https://git.kernel.org/stable/c/89df5d71f83f8e2781286798fd8ae5e42cf5f1a7"
},
{
"url": "https://git.kernel.org/stable/c/a54be593d0b749161b08a1e56189b2cb9114267a"
},
{
"url": "https://git.kernel.org/stable/c/a109a556115271ca7896dcda7b4b7e45e156c227"
}
],
"title": "libceph: fix two unsafe bare decodes in decode_lockers()",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-68082",
"datePublished": "2026-08-08T09:17:45.394Z",
"dateReserved": "2026-07-30T09:28:09.367Z",
"dateUpdated": "2026-10-19T20:48:44.160Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-72476 (GCVE-0-2026-72476)
Vulnerability from cvelistv5 – Published: 2026-08-15 05:57 – Updated: 2026-10-16 18:55| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/444f96066937f3fdf… | |
| https://git.kernel.org/stable/c/ab438a9efb9042c79… | |
| https://git.kernel.org/stable/c/9bdc8dce4068dadbd… | |
| https://git.kernel.org/stable/c/5876f38b67a309c00… | |
| https://git.kernel.org/stable/c/3b0240483dc977dbe… | |
| https://git.kernel.org/stable/c/329ec20a86091d2a6… | |
| https://git.kernel.org/stable/c/0bc191050c3253da8… | |
| https://git.kernel.org/stable/c/92f853f0645aebf1d… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 444f96066937f3fdf0e79b53289cff223c7d638b
(git)
Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < ab438a9efb9042c79d2f8db28a326d55feb8591f (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 9bdc8dce4068dadbdf7cf5ad6d4983e2afffedce (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 5876f38b67a309c00628942cb25679749b53b397 (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 3b0240483dc977dbec4f3bc7a5383d4691ecb625 (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 329ec20a86091d2a6e5b4fe507545e7d678a22a2 (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 0bc191050c3253da8ef4bfaf157c44efed6e22cd (git) Affected: 0f571515c332e00b3515dbe0859ceaa30ab66e00 , < 92f853f0645aebf1d05d333e97ab7c342ace1892 (git) |
|
| Linux | Linux |
Affected:
2.6.30
Unaffected: 0 , < 2.6.30 (semver) Unaffected: 5.10.261 , ≤ 5.10.* (semver) Unaffected: 5.15.212 , ≤ 5.15.* (semver) Unaffected: 6.1.178 , ≤ 6.1.* (semver) Unaffected: 6.6.145 , ≤ 6.6.* (semver) Unaffected: 6.12.97 , ≤ 6.12.* (semver) Unaffected: 6.18.40 , ≤ 6.18.* (semver) Unaffected: 7.1.5 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-72476",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:50:35.862393Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T18:55:25.895Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/dma/dmaengine.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "444f96066937f3fdf0e79b53289cff223c7d638b",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "ab438a9efb9042c79d2f8db28a326d55feb8591f",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "9bdc8dce4068dadbdf7cf5ad6d4983e2afffedce",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "5876f38b67a309c00628942cb25679749b53b397",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "3b0240483dc977dbec4f3bc7a5383d4691ecb625",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "329ec20a86091d2a6e5b4fe507545e7d678a22a2",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "0bc191050c3253da8ef4bfaf157c44efed6e22cd",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
},
{
"lessThan": "92f853f0645aebf1d05d333e97ab7c342ace1892",
"status": "affected",
"version": "0f571515c332e00b3515dbe0859ceaa30ab66e00",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/dma/dmaengine.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "2.6.30"
},
{
"lessThan": "2.6.30",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.261",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.212",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.5",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.261",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.212",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "2.6.30",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "2.6.30",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndmaengine: Fix possible use after free\n\nIn dma_release_channel(), check chan-\u003edevice-\u003eprivatecnt after call\ndma_chan_put(). However, dma_chan_put() call dma_device_put() which could\nrelease the last reference of the device if the DMA provider is already\ngone and hence free it.\n\nFixes it by moving dma_chan_put() after the check."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The flaw is in dma_release_channel() in drivers/dma/dmaengine.c, reached only when kernel client drivers release a privately requested DMA channel during probe/remove/error teardown triggered by local device access (e.g., /dev/iio:device*, /dev/snd/*, /dev/tty*, spidev), not from any network packet or remote protocol handler.\nAC:L - An attacker can hold a DMA slave channel open via a client device, then close it to call dma_release_channel(); when the DMA provider has already unregistered via unbind, hot-unplug, or module teardown, dma_chan_put() frees dma_device and the subsequent privatecnt access is a reliably triggerable UAF with attacker-controlled release timing.\nPR:L - Exploitation requires only a local unprivileged process able to open a device whose driver uses dma_request_chan() or dma_request_channel(); on embedded ADI FPGA, Android, and industrial platforms, non-root application users commonly have such device-node access without init-namespace root or CAP_SYS_ADMIN.\nUI:N - No victim interaction is required beyond the attacker opening, holding, and closing their own device handle or racing driver teardown; no other user must mount filesystems, approve prompts, or perform separate actions for exploitation to succeed.\nS:U - This is a kernel slab use-after-free in the dmaengine channel-release path affecting the same kernel security authority; it does not cross VM, IOMMU, container, or other sandbox boundaries and is standard in-kernel memory corruption rather than a scope change.\nC:H - After dma_chan_put() frees the last dma_device kref, the code reads and decrements privatecnt and may clear cap_mask on freed kmalloc memory; UAF on dma_device objects enables disclosure of attacker-influenced freed-heap contents per kernel UAF scoring guidance.\nI:H - Post-free modification of privatecnt and cap_mask corrupts reused slab objects under attacker influence, providing a plausible kernel heap corruption path toward arbitrary write primitives, control-flow hijacking, or local privilege escalation.\nA:H - Dereferencing freed dma_device memory during dma_release_channel() can cause KASAN slab-use-after-free reports, kernel oops, BUG, or panic; kernel guidance treats any use-after-free as high availability impact even when full exploitation is not demonstrated."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T05:44:40.606Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/444f96066937f3fdf0e79b53289cff223c7d638b"
},
{
"url": "https://git.kernel.org/stable/c/ab438a9efb9042c79d2f8db28a326d55feb8591f"
},
{
"url": "https://git.kernel.org/stable/c/9bdc8dce4068dadbdf7cf5ad6d4983e2afffedce"
},
{
"url": "https://git.kernel.org/stable/c/5876f38b67a309c00628942cb25679749b53b397"
},
{
"url": "https://git.kernel.org/stable/c/3b0240483dc977dbec4f3bc7a5383d4691ecb625"
},
{
"url": "https://git.kernel.org/stable/c/329ec20a86091d2a6e5b4fe507545e7d678a22a2"
},
{
"url": "https://git.kernel.org/stable/c/0bc191050c3253da8ef4bfaf157c44efed6e22cd"
},
{
"url": "https://git.kernel.org/stable/c/92f853f0645aebf1d05d333e97ab7c342ace1892"
}
],
"title": "dmaengine: Fix possible use after free",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-72476",
"datePublished": "2026-08-15T05:57:16.396Z",
"dateReserved": "2026-08-09T03:40:39.934Z",
"dateUpdated": "2026-10-16T18:55:25.895Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-74296 (GCVE-0-2026-74296)
Vulnerability from cvelistv5 – Published: 2026-08-15 05:58 – Updated: 2026-10-16 18:55| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/80f1f49f53a42733e… | |
| https://git.kernel.org/stable/c/aabfc845838ef453f… | |
| https://git.kernel.org/stable/c/6f83de384ca582fa8… | |
| https://git.kernel.org/stable/c/d3ff718c0c7153e26… | |
| https://git.kernel.org/stable/c/ef369446f62903ea0… | |
| https://git.kernel.org/stable/c/449ae7927152e46ac… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < 80f1f49f53a42733e60c90e0ec545e647969214d
(git)
Affected: 4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < aabfc845838ef453f1d22d7665596f9cc48be7dd (git) Affected: 4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < 6f83de384ca582fa87b4c2b0d03bd1ed3bf9a2ee (git) Affected: 4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < d3ff718c0c7153e2641e6a09507bace14fc5c402 (git) Affected: 4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < ef369446f62903ea079e8a7954b5bf8bb8300fe3 (git) Affected: 4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0 , < 449ae7927152e46acbe5f19f97eafdae6d3a96b1 (git) |
|
| Linux | Linux |
Affected:
4.16
Unaffected: 0 , < 4.16 (semver) Unaffected: 6.1.178 , ≤ 6.1.* (semver) Unaffected: 6.6.145 , ≤ 6.6.* (semver) Unaffected: 6.12.97 , ≤ 6.12.* (semver) Unaffected: 6.18.40 , ≤ 6.18.* (semver) Unaffected: 7.1.5 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74296",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:52:36.442847Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T18:55:31.271Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/infiniband/hw/mlx5/main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "80f1f49f53a42733e60c90e0ec545e647969214d",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
},
{
"lessThan": "aabfc845838ef453f1d22d7665596f9cc48be7dd",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
},
{
"lessThan": "6f83de384ca582fa87b4c2b0d03bd1ed3bf9a2ee",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
},
{
"lessThan": "d3ff718c0c7153e2641e6a09507bace14fc5c402",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
},
{
"lessThan": "ef369446f62903ea079e8a7954b5bf8bb8300fe3",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
},
{
"lessThan": "449ae7927152e46acbe5f19f97eafdae6d3a96b1",
"status": "affected",
"version": "4ed131d0bb1597ce12fff22d9d7fc9720a6e8cf0",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/infiniband/hw/mlx5/main.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "4.16"
},
{
"lessThan": "4.16",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.5",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "4.16",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx5: Release the HW\u2011provided UAR index rather than the SW one\n\nFree the UAR index returned by the hardware."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - Exploitation requires a local mmap(2) on an opened mlx5 uverbs file descriptor (/dev/infiniband/uverbs*); the bug is in uar_mmap() error cleanup and is not reachable via remote RDMA/network packet handling.\nAC:L - An attacker who can open uverbs and issue MLX5_IB_MMAP_ALLOC_WC can reliably reach the faulty cleanup by forcing rdma_user_mmap_io()/io_remap_pfn_range() to fail (e.g., memory or VMA map pressure), and controls all syscall parameters for the race-free trigger.\nPR:L - Any unprivileged local user with access to the mlx5 RDMA character device (default 0666 uverbs nodes on shared HPC/cloud compute nodes with ConnectX NICs) can alloc a context and mmap; no real-root or CAP_SYS_ADMIN capability is required.\nUI:N - Exploitation is fully attacker-driven through uverbs open, alloc_ucontext, and mmap syscalls; no victim interaction such as mounting filesystems or opening files is needed.\nS:U - Impact is confined to kernel/driver and RDMA device resource integrity on the host; it does not cross a VM-hypervisor or IOMMU security boundary into a different authority.\nC:H - Deallocating the wrong hardware UAR index frees another context\u0027s live UAR while the attacker-allocated UAR leaks, creating a cross-context UAR use-after-free that can expose other users\u0027 MMIO doorbell/register mappings and device state.\nI:H - UAR pages provide userspace MMIO write access to mlx5 doorbells and control registers; corrupting or reassigning UAR ownership enables arbitrary device register/DMA manipulation and is exploitable for privilege escalation beyond simple data tampering.\nA:H - Freeing an in-use hardware UAR from another context can cause kernel oops/panic, NIC hangs, or repeated crashes when victims continue doorbell/MMIO access through stale mappings."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T05:45:34.579Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/80f1f49f53a42733e60c90e0ec545e647969214d"
},
{
"url": "https://git.kernel.org/stable/c/aabfc845838ef453f1d22d7665596f9cc48be7dd"
},
{
"url": "https://git.kernel.org/stable/c/6f83de384ca582fa87b4c2b0d03bd1ed3bf9a2ee"
},
{
"url": "https://git.kernel.org/stable/c/d3ff718c0c7153e2641e6a09507bace14fc5c402"
},
{
"url": "https://git.kernel.org/stable/c/ef369446f62903ea079e8a7954b5bf8bb8300fe3"
},
{
"url": "https://git.kernel.org/stable/c/449ae7927152e46acbe5f19f97eafdae6d3a96b1"
}
],
"title": "RDMA/mlx5: Release the HW\u2011provided UAR index rather than the SW one",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74296",
"datePublished": "2026-08-15T05:58:00.758Z",
"dateReserved": "2026-08-15T05:44:03.882Z",
"dateUpdated": "2026-10-16T18:55:31.271Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-74297 (GCVE-0-2026-74297)
Vulnerability from cvelistv5 – Published: 2026-08-15 05:58 – Updated: 2026-10-16 18:55| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/9fff54929cc00849d… | |
| https://git.kernel.org/stable/c/b746f949c2ac2b041… | |
| https://git.kernel.org/stable/c/c1dbf52d24a8cb1aa… | |
| https://git.kernel.org/stable/c/6fc874fdfb366bfb1… | |
| https://git.kernel.org/stable/c/42f3d2c8c18b92ea3… | |
| https://git.kernel.org/stable/c/4b87a2497276a72fd… | |
| https://git.kernel.org/stable/c/b732db02a2b04cde3… | |
| https://git.kernel.org/stable/c/d881d60223aac8fdc… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < 9fff54929cc00849d738faa99f06c32399aeb026
(git)
Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < b746f949c2ac2b041102836095d6d4a2ef21fa75 (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < c1dbf52d24a8cb1aa56780ba51b72e7d495f258c (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < 6fc874fdfb366bfb11c62e6af9a831c8be59ddda (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < 42f3d2c8c18b92ea33e506a38b64f1a8986c2823 (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < 4b87a2497276a72fd63028e7419abf0fb7ed837b (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < b732db02a2b04cde393638df19de6251ce62a74e (git) Affected: e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c , < d881d60223aac8fdc12b227d89c76e131e92a9cd (git) |
|
| Linux | Linux |
Affected:
3.11
Unaffected: 0 , < 3.11 (semver) Unaffected: 5.10.261 , ≤ 5.10.* (semver) Unaffected: 5.15.212 , ≤ 5.15.* (semver) Unaffected: 6.1.178 , ≤ 6.1.* (semver) Unaffected: 6.6.145 , ≤ 6.6.* (semver) Unaffected: 6.12.97 , ≤ 6.12.* (semver) Unaffected: 6.18.40 , ≤ 6.18.* (semver) Unaffected: 7.1.5 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74297",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:52:40.390681Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T18:55:31.425Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/infiniband/hw/mlx5/qp.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "9fff54929cc00849d738faa99f06c32399aeb026",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "b746f949c2ac2b041102836095d6d4a2ef21fa75",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "c1dbf52d24a8cb1aa56780ba51b72e7d495f258c",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "6fc874fdfb366bfb11c62e6af9a831c8be59ddda",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "42f3d2c8c18b92ea33e506a38b64f1a8986c2823",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "4b87a2497276a72fd63028e7419abf0fb7ed837b",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "b732db02a2b04cde393638df19de6251ce62a74e",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
},
{
"lessThan": "d881d60223aac8fdc12b227d89c76e131e92a9cd",
"status": "affected",
"version": "e126ba97dba9edeb6fafa3665b5f8497fc9cdf8c",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/infiniband/hw/mlx5/qp.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.11"
},
{
"lessThan": "3.11",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.261",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.212",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.5",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.261",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.212",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "3.11",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "3.11",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/mlx5: Fix undefined shift of user RQ WQE size\n\nset_rq_size() computes the RQ WQE size as \"1 \u003c\u003c rq_wqe_shift\" based on\nthe user-provided rq_wqe_shift, which is only checked to be greater than\n32, so shifts of 32 are still accepted. A shift of 31 also overflows a\nsigned integer, leading to undefined behavior.\n\nUse check_shl_overflow() to compute the RQ WQE size and reject any\ninvalid values."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - Exploitation requires a local ioctl on /dev/infiniband/uverbs to IB_USER_VERBS_CMD_CREATE_QP; malicious rq_wqe_shift is supplied in mlx5_ib_create_qp userspace data, not from remote RDMA/InfiniBand wire traffic.\nAC:L - An attacker with uverbs access can deterministically pass rq_wqe_shift values 31 or 32 in create_qp driver udata; no races or victim state beyond opening the device and issuing the ioctl are required.\nPR:L - Only local access to the RDMA character device is required (typically rdma group membership on HPC/AI cloud GPU nodes), not init-namespace root; this matches basic local user capability rather than administrator privilege.\nUI:N - No victim interaction is needed; the attacker triggers the flaw entirely through their own create_qp ioctl with crafted mlx5_ib_create_qp fields.\nS:U - Impact stays within the kernel and RDMA context of the attacking process/tenant; it is not a VM-hypervisor or cross-security-authority boundary escape despite using a network-capable NIC.\nC:H - Integer overflow/undefined shift can undersize ib_umem registration while hardware is programmed with a huge RQ stride, enabling out-of-bounds DMA reads and kernel/user memory disclosure beyond the registered queue buffer.\nI:H - Corrupted max_gs (e.g. negative from shift 31) bypasses scatter/gather limits in post_recv, and undersized buffers with oversized hardware stride allow out-of-bounds writes and exploitable memory corruption.\nA:H - Undefined signed shifts and inconsistent queue sizing can cause kernel oops/panic during QP setup or later queue operations, and misprogrammed hardware can hang or crash the host under active RDMA use."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T05:45:36.087Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/9fff54929cc00849d738faa99f06c32399aeb026"
},
{
"url": "https://git.kernel.org/stable/c/b746f949c2ac2b041102836095d6d4a2ef21fa75"
},
{
"url": "https://git.kernel.org/stable/c/c1dbf52d24a8cb1aa56780ba51b72e7d495f258c"
},
{
"url": "https://git.kernel.org/stable/c/6fc874fdfb366bfb11c62e6af9a831c8be59ddda"
},
{
"url": "https://git.kernel.org/stable/c/42f3d2c8c18b92ea33e506a38b64f1a8986c2823"
},
{
"url": "https://git.kernel.org/stable/c/4b87a2497276a72fd63028e7419abf0fb7ed837b"
},
{
"url": "https://git.kernel.org/stable/c/b732db02a2b04cde393638df19de6251ce62a74e"
},
{
"url": "https://git.kernel.org/stable/c/d881d60223aac8fdc12b227d89c76e131e92a9cd"
}
],
"title": "RDMA/mlx5: Fix undefined shift of user RQ WQE size",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74297",
"datePublished": "2026-08-15T05:58:01.414Z",
"dateReserved": "2026-08-15T05:44:03.882Z",
"dateUpdated": "2026-10-16T18:55:31.425Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-74310 (GCVE-0-2026-74310)
Vulnerability from cvelistv5 – Published: 2026-08-15 05:58 – Updated: 2026-10-16 18:55| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/ea71f873423fb73e6… | |
| https://git.kernel.org/stable/c/6445b945024f4c767… | |
| https://git.kernel.org/stable/c/a9f8a1d2e3ff511ea… | |
| https://git.kernel.org/stable/c/321c73baf54d971ce… | |
| https://git.kernel.org/stable/c/c069437924663539a… | |
| https://git.kernel.org/stable/c/8f6898fe80794f2d7… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
bab632d69ee48a106e779b60cc01adfe80a72807 , < ea71f873423fb73e66ad88936d6759ac0ad4aa53
(git)
Affected: bab632d69ee48a106e779b60cc01adfe80a72807 , < 6445b945024f4c7675ae5352b2d5885cb1deea71 (git) Affected: bab632d69ee48a106e779b60cc01adfe80a72807 , < a9f8a1d2e3ff511eafd4c5462481950c2f4d2b5d (git) Affected: bab632d69ee48a106e779b60cc01adfe80a72807 , < 321c73baf54d971ce3771fea275c98a247f7ee35 (git) Affected: bab632d69ee48a106e779b60cc01adfe80a72807 , < c069437924663539a93a1e5afe90838d9ccee284 (git) Affected: bab632d69ee48a106e779b60cc01adfe80a72807 , < 8f6898fe80794f2d7c3d38c1158c806e4074a1c4 (git) |
|
| Linux | Linux |
Affected:
3.1
Unaffected: 0 , < 3.1 (semver) Unaffected: 6.1.178 , ≤ 6.1.* (semver) Unaffected: 6.6.145 , ≤ 6.6.* (semver) Unaffected: 6.12.97 , ≤ 6.12.* (semver) Unaffected: 6.18.40 , ≤ 6.18.* (semver) Unaffected: 7.1.5 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74310",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T18:52:56.702664Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T18:55:32.036Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"drivers/vhost/net.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "ea71f873423fb73e66ad88936d6759ac0ad4aa53",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
},
{
"lessThan": "6445b945024f4c7675ae5352b2d5885cb1deea71",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
},
{
"lessThan": "a9f8a1d2e3ff511eafd4c5462481950c2f4d2b5d",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
},
{
"lessThan": "321c73baf54d971ce3771fea275c98a247f7ee35",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
},
{
"lessThan": "c069437924663539a93a1e5afe90838d9ccee284",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
},
{
"lessThan": "8f6898fe80794f2d7c3d38c1158c806e4074a1c4",
"status": "affected",
"version": "bab632d69ee48a106e779b60cc01adfe80a72807",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"drivers/vhost/net.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.1"
},
{
"lessThan": "3.1",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.5",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "3.1",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "3.1",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "3.1",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "3.1",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "3.1",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "3.1",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nvhost/net: complete zerocopy ubufs only once\n\nvhost-net initializes one ubuf_info per outstanding zerocopy TX\ndescriptor and hands it to the backend socket. The networking stack may\nthen clone a zerocopy skb before all skb references are released. For\nexample, batman-adv fragmentation reaches skb_split(), which calls\nskb_zerocopy_clone() and increments the same ubuf_info refcount.\n\nvhost_zerocopy_complete() currently treats every ubuf callback as a\ncompleted vhost descriptor. It dereferences ubuf-\u003ectx, writes the\ndescriptor completion state, and drops the vhost_net_ubuf_ref even when\nthe callback only releases a cloned skb reference. A backend reset can\ntherefore wait for and free the vhost_net_ubuf_ref while another cloned\nskb still carries the same ubuf_info. A later completion then\ndereferences the freed ubufs pointer.\n\nKASAN reports the stale completion as:\n\n BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x1d7/0x1f0\n BUG: KASAN: slab-use-after-free in vhost_zerocopy_complete+0x101/0x1f0\n vhost_zerocopy_complete\n skb_copy_ubufs\n __dev_forward_skb2\n veth_xmit\n\nThe freed object was allocated from vhost_net_ioctl() while setting the\nbackend and freed through kfree_rcu()/kvfree_rcu_bulk after backend\nremoval, while delayed skb completion still reached\nvhost_zerocopy_complete().\n\nHonor the generic ubuf_info refcount before touching vhost state, and run\nthe vhost descriptor completion only for the final ubuf reference. This\nmatches the msg_zerocopy_complete() ownership rule for cloned zerocopy\nskbs."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.3,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The bug is only reachable on the vhost-net TX zerocopy path via /dev/vhost-net ioctls or virtio-net TX descriptors handled by the host vhost worker; remote wire packets do not carry vhost ubuf_info state, so no network-facing host protocol reaches vhost_zerocopy_complete().\nAC:L - Once experimental_zcopytx is enabled, an attacker can reliably send \u003e=256-byte zerocopy TX frames through a tap/veth backend so skb_zerocopy_clone/skb_copy_ubufs fires, then force backend teardown via VHOST_NET_SET_BACKEND or VM stop/migration while cloned completions remain pending.\nPR:N - A malicious KVM guest on a host using vhost-net needs no host root, capabilities, or /dev/vhost-net access\u2014only control of virtio TX descriptors and normal VM networking; a host-side attacker can also open /dev/vhost-net with only device-node permissions because drivers/vhost performs no capable() checks.\nUI:N - No victim user interaction is required beyond standard VM or vhost-net operation; the attacker directly drives virtio TX traffic, optional veth forwarding that clones zerocopy skbs, and backend reset/teardown that frees vhost_net_ubuf_ref while stale ubuf completions are still outstanding.\nS:C - In the standard KVM deployment, vhost-net is host-kernel code enforcing the guest NIC boundary; the slab use-after-free in vhost_zerocopy_complete executes in host context from guest-supplied zerocopy TX, corrupting host vhost/virtqueue state outside the guest security authority.\nC:H - This is a slab use-after-free: after premature completion frees vhost_net_ubuf_ref, a later skb_zcopy_clear callback dereferences freed ubuf-\u003ectx/ubufs memory in vhost_zerocopy_complete, giving attacker-influenced UAF primitives suitable for arbitrary kernel memory disclosure.\nI:H - The stale completion writes vq-\u003eheads[ubuf-\u003edesc].len and decrements vhost_net_ubuf_ref on freed structures; UAF heap corruption of this class is leveragable into arbitrary write and host control-flow hijacking, including potential VM-to-host privilege escalation.\nA:H - KASAN reports slab-use-after-free in vhost_zerocopy_complete during skb_copy_ubufs/veth_xmit completion; this readily causes host kernel oops or panic and can be retriggered from a virtio guest TX loop or repeated backend resets until the host or hypervisor is unavailable."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T05:45:42.723Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/ea71f873423fb73e66ad88936d6759ac0ad4aa53"
},
{
"url": "https://git.kernel.org/stable/c/6445b945024f4c7675ae5352b2d5885cb1deea71"
},
{
"url": "https://git.kernel.org/stable/c/a9f8a1d2e3ff511eafd4c5462481950c2f4d2b5d"
},
{
"url": "https://git.kernel.org/stable/c/321c73baf54d971ce3771fea275c98a247f7ee35"
},
{
"url": "https://git.kernel.org/stable/c/c069437924663539a93a1e5afe90838d9ccee284"
},
{
"url": "https://git.kernel.org/stable/c/8f6898fe80794f2d7c3d38c1158c806e4074a1c4"
}
],
"title": "vhost/net: complete zerocopy ubufs only once",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74310",
"datePublished": "2026-08-15T05:58:10.043Z",
"dateReserved": "2026-08-15T05:44:03.883Z",
"dateUpdated": "2026-10-16T18:55:32.036Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-74720 (GCVE-0-2026-74720)
Vulnerability from cvelistv5 – Published: 2026-08-22 15:33 – Updated: 2026-10-16 19:16| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/86b203aadc2930e0a… | |
| https://git.kernel.org/stable/c/8109c25e0c41f5f19… | |
| https://git.kernel.org/stable/c/d1959028190a7649b… | |
| https://git.kernel.org/stable/c/8cb23101a3fcc7432… | |
| https://git.kernel.org/stable/c/29c239f8dbec5ab33… | |
| https://git.kernel.org/stable/c/db6382ed3361bdd81… | |
| https://git.kernel.org/stable/c/eaffa1495e4fe6330… | |
| https://git.kernel.org/stable/c/a4c6f804b44c5c790… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < 86b203aadc2930e0a4f9c6277b5b80ff3664c472
(git)
Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < 8109c25e0c41f5f19a1c2380bb49c991a877494e (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < d1959028190a7649b926f5867a58de5fe221b23c (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < 8cb23101a3fcc7432b451ea3d0f14a90711f4acf (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < 29c239f8dbec5ab33a61796724d189bddee6cd4b (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < db6382ed3361bdd8129572a3423956cba1dae829 (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < eaffa1495e4fe6330aeff9f323ea3d48b01f118a (git) Affected: f4d7e40a5b7157e1329c3c5b10f60d8289fc2941 , < a4c6f804b44c5c790269b25e0e61cf4e9f117c86 (git) |
|
| Linux | Linux |
Affected:
4.16
Unaffected: 0 , < 4.16 (semver) Unaffected: 5.10.265 , ≤ 5.10.* (semver) Unaffected: 5.15.216 , ≤ 5.15.* (semver) Unaffected: 6.1.183 , ≤ 6.1.* (semver) Unaffected: 6.6.152 , ≤ 6.6.* (semver) Unaffected: 6.12.104 , ≤ 6.12.* (semver) Unaffected: 6.18.45 , ≤ 6.18.* (semver) Unaffected: 7.1.9 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-74720",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "no"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T19:15:35.375502Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T19:16:11.811Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"kernel/bpf/verifier.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "86b203aadc2930e0a4f9c6277b5b80ff3664c472",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "8109c25e0c41f5f19a1c2380bb49c991a877494e",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "d1959028190a7649b926f5867a58de5fe221b23c",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "8cb23101a3fcc7432b451ea3d0f14a90711f4acf",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "29c239f8dbec5ab33a61796724d189bddee6cd4b",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "db6382ed3361bdd8129572a3423956cba1dae829",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "eaffa1495e4fe6330aeff9f323ea3d48b01f118a",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
},
{
"lessThan": "a4c6f804b44c5c790269b25e0e61cf4e9f117c86",
"status": "affected",
"version": "f4d7e40a5b7157e1329c3c5b10f60d8289fc2941",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"kernel/bpf/verifier.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "4.16"
},
{
"lessThan": "4.16",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.265",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.216",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.183",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.152",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.104",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.45",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.9",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.265",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.216",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.183",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.152",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.104",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.45",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.9",
"versionStartIncluding": "4.16",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "4.16",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nbpf: Preserve pointer state for commuted arithmetic\n\nWhen scalar += pointer is handled in adjust_ptr_min_max_vals(), the\ndestination register inherits the pointer state from the source pointer.\nCopying only selected fields is fragile because pointer provenance is\ntracked by several bpf_reg_state fields.\n\nUse the caller\u0027s temporary offset register to preserve the scalar operand\nwhile replacing the destination with the full pointer state. This preserves\nthe frame number for PTR_TO_STACK registers and keeps parent identity\nfields consistent."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 7.8,
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:L - The flaw is in bpf_check()/adjust_ptr_min_max_vals() during bpf(BPF_PROG_LOAD) via the local bpf(2) syscall; per kernel CNA guidance BPF verifier bugs are Local, not reachable from remote network packet handling.\nAC:L - An attacker fully controls BPF bytecode using commuted 64-bit scalar+=pointer ALU and bpf2bpf call chains, deterministically poisoning register state during verification without races or external preconditions.\nPR:L - Exploitation requires loading bpf2bpf programs (CAP_BPF-gated), which is routinely available to unprivileged users via user namespaces/BPF token delegation or unprivileged socket-filter loading when kernel.unprivileged_bpf_disabled=0, not init-namespace root.\nUI:N - The attacker loads and executes their own crafted BPF program through bpf(2); no separate victim action such as mounting filesystems or opening files is required beyond the attacker\u0027s own local access.\nS:U - Impact is a BPF verifier bypass enabling in-kernel out-of-bounds memory access and privilege escalation within the host kernel\u0027s security authority; it does not cross VM, IOMMU, or sandbox boundaries.\nC:H - Copying only type/id on scalar+=pointer leaves stale frameno, var_off, and map/parent metadata, so bpf_func() stack checks validate the wrong frame and approve out-of-bounds reads of adjacent kernel memory.\nI:H - The same incorrect pointer provenance permits verifier-approved out-of-bounds BPF stack/map writes at runtime, a controllable kernel memory corruption primitive leverageable for arbitrary modification and privilege escalation.\nA:H - Out-of-bounds BPF memory accesses from the bypassed verifier state can corrupt critical kernel data or dereference invalid addresses, reliably causing kernel oops/panic and repeatable denial of service."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-25T05:42:01.009Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/86b203aadc2930e0a4f9c6277b5b80ff3664c472"
},
{
"url": "https://git.kernel.org/stable/c/8109c25e0c41f5f19a1c2380bb49c991a877494e"
},
{
"url": "https://git.kernel.org/stable/c/d1959028190a7649b926f5867a58de5fe221b23c"
},
{
"url": "https://git.kernel.org/stable/c/8cb23101a3fcc7432b451ea3d0f14a90711f4acf"
},
{
"url": "https://git.kernel.org/stable/c/29c239f8dbec5ab33a61796724d189bddee6cd4b"
},
{
"url": "https://git.kernel.org/stable/c/db6382ed3361bdd8129572a3423956cba1dae829"
},
{
"url": "https://git.kernel.org/stable/c/eaffa1495e4fe6330aeff9f323ea3d48b01f118a"
},
{
"url": "https://git.kernel.org/stable/c/a4c6f804b44c5c790269b25e0e61cf4e9f117c86"
}
],
"title": "bpf: Preserve pointer state for commuted arithmetic",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-74720",
"datePublished": "2026-08-22T15:33:13.342Z",
"dateReserved": "2026-08-15T05:44:03.929Z",
"dateUpdated": "2026-10-16T19:16:11.811Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
CVE-2026-80558 (GCVE-0-2026-80558)
Vulnerability from cvelistv5 – Published: 2026-08-26 14:37 – Updated: 2026-10-16 19:26| URL | Tags |
|---|---|
| https://git.kernel.org/stable/c/505fc50b8ff8e687b… | |
| https://git.kernel.org/stable/c/1c705fe8e59c6b16f… | |
| https://git.kernel.org/stable/c/dfe1877d351b99eb1… | |
| https://git.kernel.org/stable/c/e2ffeec85201b2bb7… | |
| https://git.kernel.org/stable/c/6799d4a916ffcb3d4… | |
| https://git.kernel.org/stable/c/4f392fec075562dc9… | |
| https://git.kernel.org/stable/c/e009c5f0ad634c62f… | |
| https://git.kernel.org/stable/c/3660b98d1204b419f… |
| Vendor | Product | Version | |
|---|---|---|---|
| Linux | Linux |
Affected:
5e8d4d36bf23bb7baf027c479d54395840219928 , < 505fc50b8ff8e687b7e3ef6866269dea27366224
(git)
Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < 1c705fe8e59c6b16f48964973fb23c8ec4735b73 (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < dfe1877d351b99eb1b1a62a3fc2d174220e88e20 (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < e2ffeec85201b2bb748e99e12539ee1b92f62796 (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < 6799d4a916ffcb3d450d8440f9fe0f0862f768d6 (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < 4f392fec075562dc93bb0c69f37423ca2af9b48f (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < e009c5f0ad634c62f5c48a41f1f3c019ecf52555 (git) Affected: 5e8d4d36bf23bb7baf027c479d54395840219928 , < 3660b98d1204b419f6a77e9a295f148dcf38d042 (git) |
|
| Linux | Linux |
Affected:
3.15
Unaffected: 0 , < 3.15 (semver) Unaffected: 5.10.266 , ≤ 5.10.* (semver) Unaffected: 5.15.217 , ≤ 5.15.* (semver) Unaffected: 6.1.184 , ≤ 6.1.* (semver) Unaffected: 6.6.153 , ≤ 6.6.* (semver) Unaffected: 6.12.105 , ≤ 6.12.* (semver) Unaffected: 6.18.46 , ≤ 6.18.* (semver) Unaffected: 7.1.10 , ≤ 7.1.* (semver) Unaffected: 7.2 , ≤ * (original_commit_for_fix) |
{
"containers": {
"adp": [
{
"metrics": [
{
"other": {
"content": {
"id": "CVE-2026-80558",
"options": [
{
"Exploitation": "none"
},
{
"Automatable": "yes"
},
{
"Technical Impact": "total"
}
],
"role": "CISA Coordinator",
"timestamp": "2026-10-16T19:17:27.873915Z",
"version": "2.0.3"
},
"type": "ssvc"
}
}
],
"providerMetadata": {
"dateUpdated": "2026-10-16T19:26:27.095Z",
"orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"shortName": "CISA-ADP"
},
"title": "CISA ADP Vulnrichment"
}
],
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"net/ceph/osdmap.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "505fc50b8ff8e687b7e3ef6866269dea27366224",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "1c705fe8e59c6b16f48964973fb23c8ec4735b73",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "dfe1877d351b99eb1b1a62a3fc2d174220e88e20",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "e2ffeec85201b2bb748e99e12539ee1b92f62796",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "6799d4a916ffcb3d450d8440f9fe0f0862f768d6",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "4f392fec075562dc93bb0c69f37423ca2af9b48f",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "e009c5f0ad634c62f5c48a41f1f3c019ecf52555",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
},
{
"lessThan": "3660b98d1204b419f6a77e9a295f148dcf38d042",
"status": "affected",
"version": "5e8d4d36bf23bb7baf027c479d54395840219928",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"net/ceph/osdmap.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.15"
},
{
"lessThan": "3.15",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.266",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.217",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.184",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.153",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.105",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.46",
"versionType": "semver"
},
{
"lessThanOrEqual": "7.1.*",
"status": "unaffected",
"version": "7.1.10",
"versionType": "semver"
},
{
"lessThanOrEqual": "*",
"status": "unaffected",
"version": "7.2",
"versionType": "original_commit_for_fix"
}
]
}
],
"cpeApplicability": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.10.266",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.217",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.184",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.153",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.105",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.46",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.10",
"versionStartIncluding": "3.15",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "3.15",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\nlibceph: Avoid using invalid osd indices from primary_temp\n\nA corrupted osdmap received from a Ceph monitor or OSD may contain osd\nindices in its pg_temp, primary_temp, pg_upmap, and pg_upmap_items parts\nthat don\u0027t exist, i.e., that are greater than max_osd or smaller than\nCEPH_HOMELESS_OSD (-1). These indices are used to create the up and\nacting set in ceph_pg_to_up_acting_osds(), called from calc_target().\nWhile most of these osd indices are checked, the one from primary_temp\nis not. Subsequently, this may lead to calc_target() returning this\n(potentially invalid) index as target osd for a (linger) request.\nBecause the osd_state, osd_weight, and osd_addr arrays only contain\nmax_osd entries (with indices 0 to max_osd -1), this leads to\nout-of-bounds accesses when trying to read values from these arrays.\n\nThis patch fixes the issue by adding a check to get_temp_osds(), so that\nonly valid osd indices from primary_temp are used, and it falls back to\nusing the primary from pg_temp or the up set if it is invalid.\n\n[ idryomov: changelog ]"
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - Malformed primary_temp data arrives in CEPH_MSG_OSD_MAP over TCP from a Ceph monitor (mon_dispatch) or OSD (osd_dispatch); calc_target() then uses the bogus osd index in lookup_create_osd()/reopen_osd() to index osd_addr/osd_state/osd_weight without any local syscall.\nAC:L - A compromised or malicious monitor/OSD can publish an incremental osdmap whose primary_temp sets an osd index \u003e= max_osd for a victim PG; once applied, calc_target() on pending I/O, linger requests, or map-driven resends deterministically uses that invalid index.\nPR:N - The attacker acts as the remote Ceph cluster peer delivering forged osdmaps to an already-connected kernel CephFS/RBD client and needs no local account, capabilities, or user-namespace privileges on the victim host.\nUI:N - Once a kernel Ceph client session exists, osdmap updates are applied automatically and scan_requests/kick_requests recalculate targets without any mount, open, or other victim interaction at exploit time.\nS:U - Impact is confined to kernel libceph client memory and state on the Ceph client host (heap disclosure, misrouted connections, crash); it does not cross VM, IOMMU, or container sandbox boundaries to another security authority.\nC:H - Invalid acting.primary indexes past the end of kmalloc-backed osd_addr, osd_state, and osd_weight arrays, performing out-of-bounds reads of adjacent kernel heap memory that can disclose pointers and other sensitive data.\nI:H - Attacker-chosen osd indices drive out-of-bounds reads whose results are treated as authoritative OSD addresses and state for ceph_con_open() and request routing, corrupting kernel client connection targeting in ways usable for further exploitation.\nA:H - Out-of-bounds reads with large crafted osd indices can fault on unmapped kmalloc slack and trigger kernel oops or panic; misrouted linger and I/O requests also cause persistent, repeatable client failure on each malicious osdmap update."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-27T05:01:46.707Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/505fc50b8ff8e687b7e3ef6866269dea27366224"
},
{
"url": "https://git.kernel.org/stable/c/1c705fe8e59c6b16f48964973fb23c8ec4735b73"
},
{
"url": "https://git.kernel.org/stable/c/dfe1877d351b99eb1b1a62a3fc2d174220e88e20"
},
{
"url": "https://git.kernel.org/stable/c/e2ffeec85201b2bb748e99e12539ee1b92f62796"
},
{
"url": "https://git.kernel.org/stable/c/6799d4a916ffcb3d450d8440f9fe0f0862f768d6"
},
{
"url": "https://git.kernel.org/stable/c/4f392fec075562dc93bb0c69f37423ca2af9b48f"
},
{
"url": "https://git.kernel.org/stable/c/e009c5f0ad634c62f5c48a41f1f3c019ecf52555"
},
{
"url": "https://git.kernel.org/stable/c/3660b98d1204b419f6a77e9a295f148dcf38d042"
}
],
"title": "libceph: Avoid using invalid osd indices from primary_temp",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-80558",
"datePublished": "2026-08-26T14:37:24.768Z",
"dateReserved": "2026-08-26T14:34:25.767Z",
"dateUpdated": "2026-10-16T19:26:27.095Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline
Sightings and recorded dates, grouped by day · UTC
How durations are calculated
Following the VTEM framework (Black Hat USA 2015), time to patch starts when the vendor or a coordinator was informed, total time to patch at discovery, and disclosure to patch at public disclosure; vendor response time runs from the report to its acknowledgement. Time to exploit and time unpatched start at the earliest discovery or report, falling back to public disclosure. Unpatched time ends at the first recorded patch, or the calculation time when no patch is recorded. Exploitation to patch shows the interval between those two events; a published proof of concept is a public exploit, not exploitation.
Each result shows its source dates. A negative interval means the end event came first; when date-only inputs leave the order open, the result says so. Date-only inputs are approximate. The earliest evidence wins: KEV report dates and sightings are labelled as such. Records describing another vulnerability are listed but never calculated from, and a PoC alone does not establish exploitation. Missing patch evidence does not prove that no patch exists. Filters below change the event list only.
Loading timeline…
The approach is described in our paper Mapping CVEs to MITRE ATT&CK Techniques: A Curated Gold-Set Classifier and the Limits of LLM-Assisted Label Expansion.
Browse all ATT&CK techniques and the vulnerabilities related to each.
Related by attack behaviour
Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.