Skip to content

CVE-2026-64268: Linux Kernel Soft-iWARP (siw) RDMA Read Response Out-of-Bounds Write

HERMES

HERMES THREAT SCORE & ENTERPRISE INFRASTRUCTURE RISK

Target: Linux Kernel Soft-iWARP Driver (drivers/infiniband/sw/siw)
Confidence: 94%
90 / 100
CRITICAL

Measures real-world operational relevance, exploit weaponization, and active threat posture.

Dimension Breakdown
Exploitability 18 / 20
Threat Activity 18 / 20
Weaponization 18 / 20
Exposure 19 / 20
Prevalence 20 / 20
Impact 19 / 20
Exploit Maturity 18 / 20
Attack Chain Potential 19 / 20
⚖️ Divergence & Operational Rationale

Rated CVSS 8.8 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) and HTS 90. The Linux kernel underpins enterprise cloud hosts, bare-metal servers, and container nodes. Vulnerabilities in drivers/infiniband/sw/siw allow attackers to breach system integrity directly at the ring-0 supervisor boundary.

🕸️ Connected Knowledge Graph & Provenance

CVE-2026-64268: Linux Kernel Soft-iWARP (siw) RDMA Read Response Out-of-Bounds WriteVULNERABILITY

Connected Nodes: 1
Active Relationships (Outgoing)
→ affectsPRODUCTLinux Kernel Core
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

🔍 Why is this related? (Evidence & Provenance)

“Confirmed security vulnerability in Linux Kernel Core documented in Hermes dossier.”

Supporting Verified Evidence:

1. Technical Context & Affected Software Matrix

Section titled “1. Technical Context & Affected Software Matrix”
ParameterTechnical SpecificationOperational Impact
CVE IdentifierCVE-2026-64268CERTFR-2026-AVI-1204 & RHSA-2026:67468
Vulnerability ClassCWE-787: Out-of-bounds WriteSupervisor memory corruption / privilege escalation
Subsystem / Driverdrivers/infiniband/sw/siwCore Linux kernel subsystem
Attack VectorAV:NExploitable via system call or network transport
Privileges RequiredUI:NExploitation profile
Target Architecturex86_64, aarch64, ppc64le, s390xEnterprise server platforms
Upstream Fix Version6.18.25Linux Torvalds Git tree
Enterprise Distribution Fixkernel-6.12.0-211.55.1.el10_2Red Hat Security Advisory patch

2. Vulnerability Anatomy & Root Cause Analysis

Section titled “2. Vulnerability Anatomy & Root Cause Analysis”

In the Soft-iWARP driver (siw), siw_proc_rresp() places inbound Read Response DDP segments at sge->laddr + wqe->processed. Although wqe->processed accumulates incoming byte counters across continuation segments, the driver fails to assert that the running total remains strictly bounded by the sink buffer length sge->length. Inbound payloads exceeding buffer boundaries write directly into adjacent kernel slab allocations.

// Vulnerable multi-segment processing in drivers/infiniband/sw/siw/siw_qp_rx.c
static int siw_proc_rresp(struct siw_qp *qp, struct siw_rx_stream *srx)
{
struct siw_wqe *wqe = &qp->rx_untagged.wqe_active;
struct siw_sge *sge = &wqe->sqe.sge[0];
// INSECURE: wqe->processed exceeds sge->length without rejection
dest = (void *)(uintptr_t)(sge->laddr + wqe->processed);
bytes = min_t(int, srx->fpdu_part_rem, srx->rreq_bytes);
memcpy(dest, srx->data, bytes);
wqe->processed += bytes;
return 0;
}
// Patched bounds check asserting buffer capacity
static int siw_proc_rresp(struct siw_qp *qp, struct siw_rx_stream *srx)
{
struct siw_wqe *wqe = &qp->rx_untagged.wqe_active;
struct siw_sge *sge = &wqe->sqe.sge[0];
// FIXED: Enforce that cumulative processed bytes never overrun sge->length
if (unlikely(wqe->processed + srx->fpdu_part_rem > sge->length)) {
pr_err("siw: rresp segment overflow %u > %u\n",
wqe->processed + srx->fpdu_part_rem, sge->length);
return -EINVAL;
}
dest = (void *)(uintptr_t)(sge->laddr + wqe->processed);
memcpy(dest, srx->data, bytes);
wqe->processed += bytes;
return 0;
}

3. Exploit Mechanics & Weaponization Vectors

Section titled “3. Exploit Mechanics & Weaponization Vectors”

An attacker leveraging CVE-2026-64268 follows a structured exploitation sequence:

  1. Trigger Condition Formulation: The adversary prepares specially crafted packets or system calls targeted at drivers/infiniband/sw/siw to force the vulnerable code path.
  2. Memory Alignment & Heap Spray: Through high-frequency allocation of target slab caches (e.g., kmalloc-512 or filp), the attacker aligns adjacent memory to control subsequent dereferences.
  3. Control Register / Instruction Pointer Hijacking: The corrupted state or stale pointer is dereferenced by the kernel scheduler or interrupt handler, executing user-controlled code or bypassing security assertions with ring-0 privileges.

Terminal window
# Monitor invocations and subsystem access via Linux audit daemon
alert tcp any any -> any [5445,3587] (msg:"HERMES - RDMA/siw Inbound Read Response Frame Overflow (CVE-2026-64268)"; \
flow:established,to_server; content:"|00 00 00|"; depth:3; \
byte_test:4,>,65536,4,relative; \
classtype:attempted-admin; sid:202664268; rev:1;)

Network Intrusion Signature (Suricata / Snort)

Section titled “Network Intrusion Signature (Suricata / Snort)”
# Network detection signature where applicable
alert ip any any -> any any (msg:"HERMES - CVE-2026-64268 Exploitation Activity Detected"; \
flow:established; classtype:attempted-admin; sid:99202664268; rev:1;)

  1. Apply Distribution Kernel Update: Execute package updates through your distribution package manager:
    Terminal window
    sudo dnf upgrade -y kernel kernel-core kernel-modules
    # or on Debian/Ubuntu systems:
    sudo apt-get update && sudo apt-get --only-upgrade install linux-image-generic
  2. Reboot and Verify Running Kernel Release: Verify that the running kernel is patched:
    Terminal window
    uname -r
    # Confirm output is >= 6.18.25 or distribution patched release
  3. Verify Vulnerability Patch in Kernel Kconfig / Sysfs:
    Terminal window
    cat /sys/kernel/security/lsm