In the Linux kernel, the following vulnerability has been resolved:
RDMA/siw: Reject MPA FPDU length underflow before signed receive math
A malicious connected siw peer can send an iWARP FPDU whose MPA length field (c_hdr->mpa_len, 16 bit big-endian, peer-controlled) is smaller than the fixed DDP/RDMAP header for the announced opcode. Soft-iWARP parses the full header in siw_get_hdr() based on iwarp_pktinfo[opcode] .hdr_len, but never compares mpa_len against that header length.
siw_tcp_rx_data() then derives
srx->fpdu_part_rem = be16_to_cpu(mpa_len) - fpdu_part_rcvd + MPA_HDR_SIZE;
where fpdu_part_rcvd equals iwarp_pktinfo[opcode].hdr_len at this point. For a tagged WRITE (hdr_len 16, MPA_HDR_SIZE 2) the smallest on-wire mpa_len of 0 yields fpdu_part_rem = -14, and any mpa_len below hdr_len - MPA_HDR_SIZE underflows to a negative int.
The signed value then flows into siw_proc_write()/siw_proc_rresp() as
bytes = min(srx->fpdu_part_rem, srx->skb_new);
is handed to siw_check_mem() as an int len (whose interval check addr + len > mem->va + mem->len is satisfied for a valid base when len is negative), and reaches siw_rx_data() -> siw_rx_kva() / siw_rx_umem() -> skb_copy_bits() as a signed copy length. The header copy branch in skb_copy_bits() promotes that to size_t, producing a multi-gigabyte read.
KASAN under a KUnit harness that drives the real kernel TCP receive path -- a loopback AF_INET socketpair, the malformed FPDU written via kernel_sendmsg, sk_data_ready firing in softirq, tcp_read_sock dispatching to siw_tcp_rx_data -- reports:
BUG: KASAN: use-after-free in skb_copy_bits+0x284/0x480 Read of size 4294967295 at addr ffff888... Call Trace: skb_copy_bits siw_rx_kva siw_rx_data siw_check_mem siw_proc_write siw_tcp_rx_data __tcp_read_sock siw_qp_llp_data_ready tcp_data_ready tcp_data_queue
Add the missing invariant at the earliest point where the peer header is fully assembled. iwarp_pktinfo[*].hdr_len - MPA_HDR_SIZE is exactly the value the siw transmitter uses as the minimum mpa_len for each opcode (drivers/infiniband/sw/siw/siw_qp.c:33), so this matches the protocol contract. Out-of-range FPDUs terminate the connection with TERM_ERROR_LAYER_LLP / LLP_ETYPE_MPA / LLP_ECODE_FPDU_START -- which is RFC 5044 Section 8 error code 3 ("Marker and ULPDU Length fields do not agree on the start of an FPDU"), the correct framing-error class for this inconsistency.
CVSS Details
- CVSS 3.1 Base Score: 9.8
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Debian | — | Upgrade linux | Jul 20, 2026 | Jul 20, 2026 |
| Redhat_linux | — | No solution exists | Jul 22, 2026 | Jul 19, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-1035-nvidia-tegra-rtUpgrade linux-image-6.8.0-1036-xilinxUpgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-6.8.0-1062-nvidia-lowlatencyUpgrade linux-image-6.8.0-139-fipsUpgrade linux-image-5.15.0-1104-kvmUpgrade linux-image-5.15.0-1107-nvidiaUpgrade linux-image-aws-64k-5.15Upgrade linux-image-aws-lts-22.04Upgrade linux-image-azure-fips-6.8Upgrade linux-image-genericUpgrade linux-image-ibmUpgrade linux-image-aws-64k-7.0Upgrade linux-image-generic-lpaeUpgrade linux-image-ibm-classicUpgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-nvidia-64k-7.0Upgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-6.8.0-2053-raspi-realtimeUpgrade linux-image-fips-6.8Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-5.15.0-1112-aws-fipsUpgrade linux-image-5.15.0-184-lowlatency-64kUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-xilinxUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-generic-5.15Upgrade linux-image-oracle-64k-7.0Upgrade linux-image-oracle-7.0Upgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-fipsUpgrade linux-image-azure-lts-22.04Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-6.8.0-1062-nvidia-lowlatency-64kUpgrade linux-image-7.0.0-1010-azureUpgrade linux-image-fips-5.15Upgrade linux-image-6.8.0-1062-nvidiaUpgrade linux-image-6.8.1-1059-realtimeUpgrade linux-image-raspi-realtimeUpgrade linux-image-raspi-nolpaeUpgrade linux-image-nvidiaUpgrade linux-image-nvidia-tegra-igx-rtUpgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-gcpUpgrade linux-image-6.8.0-1061-oracle-64kUpgrade linux-image-gkeopUpgrade linux-image-5.15.0-186-generic-lpaeUpgrade linux-image-gkeop-6.8Upgrade linux-image-nvidia-tegraUpgrade linux-image-raspi-realtime-6.8Upgrade linux-image-virtualUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-lowlatency-64kUpgrade linux-image-nvidia-tegra-5.15Upgrade linux-image-generic-6.8Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-5.15.0-1106-ibmUpgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-nvidia-tegra-igx-rt-5.15Upgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-6.8.0-1062-gke-64kUpgrade linux-image-6.8.0-1067-gcp-fipsUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-ibm-6.8Upgrade linux-image-nvidia-tegra-igx-5.15Upgrade linux-image-5.15.0-1106-raspiUpgrade linux-image-lowlatencyUpgrade linux-image-5.15.0-1111-realtimeUpgrade linux-image-ibm-7.0Upgrade linux-image-kvm-5.15Upgrade linux-image-6.8.0-1067-azureUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-7.0.0-1009-awsUpgrade linux-image-azure-fde-7.0Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-5.15.0-1117-azure-fdeUpgrade linux-image-aws-fipsUpgrade linux-image-gke-5.15Upgrade linux-image-nvidia-64k-6.8Upgrade linux-image-gcp-7.0Upgrade linux-image-6.8.0-1062-nvidia-64kUpgrade linux-image-6.8.0-1064-raspiUpgrade linux-image-azure-6.8Upgrade linux-image-5.15.0-1112-awsUpgrade linux-image-oracleUpgrade linux-image-nvidia-lowlatency-5.15Upgrade linux-image-5.15.0-1104-intel-iot-realtimeUpgrade linux-image-gcp-5.15Upgrade linux-image-generic-64k-6.8Upgrade linux-image-5.15.0-1112-gcpUpgrade linux-image-azure-lts-24.04Upgrade linux-image-oem-20.04bUpgrade linux-image-5.15.0-1117-azureUpgrade linux-image-nvidia-tegra-rtUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-gke-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-aws-64kUpgrade linux-image-gcp-6.8Upgrade linux-image-oracle-6.8Upgrade linux-image-gcp-64k-6.8Upgrade linux-image-gcp-64kUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-azure-fipsUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-intel-iotgUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-6.8.0-1035-nvidia-tegraUpgrade linux-image-5.15.0-186-generic-64kUpgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-6.8.0-1049-gkeopUpgrade linux-image-realtime-6.8.1Upgrade linux-image-gkeop-5.15Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-lowlatency-6.8Upgrade linux-image-azure-5.15Upgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-nvidia-tegra-igxUpgrade linux-image-nvidia-bosUpgrade linux-image-5.15.0-1108-gkeUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-6.8.0-139-lowlatency-64kUpgrade linux-image-6.8.0-1067-gcpUpgrade linux-image-6.8.0-1067-azure-fipsUpgrade linux-image-5.15.0-1095-gkeopUpgrade linux-image-7.0.0-1014-azureUpgrade linux-image-6.8.0-1062-gkeUpgrade linux-image-5.15.0-1112-aws-64kUpgrade linux-image-5.15.0-1064-nvidia-tegra-rtUpgrade linux-image-5.15.0-1064-nvidia-tegraUpgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-oem-20.04dUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-nvidia-5.15Upgrade linux-image-generic-64kUpgrade linux-image-gcp-64k-7.0Upgrade linux-image-azure-fdeUpgrade linux-image-azure-cvmUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-6.8.0-139-lowlatencyUpgrade linux-image-5.15.0-186-fipsUpgrade linux-image-6.8.0-1061-oracleUpgrade linux-image-raspi-6.8Upgrade linux-image-5.15.0-1109-oracleUpgrade linux-image-intel-iot-realtimeUpgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-virtual-6.8Upgrade linux-image-5.15.0-1053-nvidia-tegra-igxUpgrade linux-image-6.8.0-139-genericUpgrade linux-image-5.15.0-186-genericUpgrade linux-image-5.15.0-184-lowlatencyUpgrade linux-image-5.15.0-1107-intel-iotgUpgrade linux-image-raspi-7.0Upgrade linux-image-oracle-64kUpgrade linux-image-oem-20.04Upgrade linux-image-nvidia-tegra-rt-5.15Upgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-6.8Upgrade linux-image-gke-64kUpgrade linux-image-gcp-fipsUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-6.8.0-139-generic-64kUpgrade linux-image-laptop-23.10Upgrade linux-image-ibm-lts-24.04Upgrade linux-image-generic-64k-5.15Upgrade linux-image-aws-7.0Upgrade linux-image-aws-5.15Upgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-nvidia-lowlatencyUpgrade linux-image-nvidia-7.0Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-xilinx-6.8Upgrade linux-image-5.15.0-1075-xilinx-zynqmpUpgrade linux-image-awsUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-oracle-5.15Upgrade linux-image-lowlatency-5.15Upgrade linux-image-ibm-5.15Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-azure-fips-5.15Upgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-6.8.0-1064-ibmUpgrade linux-image-5.15.0-1053-nvidia-tegra-igx-rtUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-realtime-5.15Upgrade linux-image-realtimeUpgrade linux-image-intelUpgrade linux-image-azure-7.0Upgrade linux-image-azure-fde-5.15Upgrade linux-image-azureUpgrade linux-image-aws-fips-5.15Upgrade linux-image-6.8.0-1067-gcp-64kUpgrade linux-image-5.15.0-1117-azure-fipsUpgrade linux-image-5.15.0-1112-gcp-fipsUpgrade linux-image-5.15.0-1107-nvidia-lowlatencyUpgrade linux-image-virtual-5.15Upgrade linux-image-realtime-hwe-22.04Upgrade linux-image-raspi-5.15Upgrade linux-image-raspiUpgrade linux-image-oem-20.04cUpgrade linux-image-kvmUpgrade linux-image-gke-64k-6.8Upgrade linux-image-gkeUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-gcp-lts-24.04 | Jul 21, 2026 | Jul 21, 2026 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jul 27, 2026 | Jul 19, 2026 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub