In the Linux kernel, the following vulnerability has been resolved:
scsi: target: iscsi: Fix CRC overread and double-free in iscsit_handle_text_cmd()
Two latent bugs in the Text-phase handler, both present since the original LIO integration in commit e48354ce078c ("iscsi-target: Add iSCSI fabric support for target v4.1"):
1) DataDigest CRC buffer overread (4 bytes past text_in).
text_in is kzalloc()'d at ALIGN(payload_length, 4). rx_size is then incremented by ISCSI_CRC_LEN to make room for the received DataDigest in the iovec, but the same (now-bumped) rx_size is passed as the buffer length to iscsit_crc_buf():
if (conn->conn_ops->DataDigest) { ... rx_size += ISCSI_CRC_LEN; } ... if (conn->conn_ops->DataDigest) { data_crc = iscsit_crc_buf(text_in, rx_size, 0, NULL);
iscsit_crc_buf() walks rx_size bytes of text_in with crc32c(), so when DataDigest is negotiated it reads 4 bytes past the end of the text_in allocation. KASAN reproduces this directly on the unpatched mainline tree as slab-out-of-bounds in crc32c() called from the Text PDU path. The OOB bytes feed crc32c() and are then compared against the initiator-supplied checksum, so the value does not flow back to the attacker, but the kernel does read past the buffer on every Text PDU with DataDigest=CRC32C.
Fix by passing the actual padded payload length (ALIGN(payload_length, 4)) that was used for the kzalloc().
2) Stale cmd->text_in_ptr re-free (double-free) on ERL>0 bad DataDigest drop.
On DataDigest mismatch with ErrorRecoveryLevel > 0 the handler silently drops the PDU and lets the initiator plug the CmdSN gap:
kfree(text_in); return 0;
cmd->text_in_ptr still points at the freed buffer. The next Text Request on the same ITT re-enters iscsit_setup_text_cmd(), which unconditionally does
kfree(cmd->text_in_ptr); cmd->text_in_ptr = NULL;
freeing the same pointer a second time. Session teardown via iscsit_release_cmd() has the same shape and hits the same double-free if the connection is dropped before a second Text Request arrives.
On an unmodified mainline tree the bug-1 CRC overread fires first on the initial valid Text Request and perturbs the subsequent state, so #4 was isolated by building a kernel with only the bug-1 hunk of this patch applied plus temporary printk() observability around the three relevant kfree() sites. The observability prints are not part of this patch. On that build, a three-PDU Text Request sequence after login produces two back-to-back splats:
BUG: KASAN: double-free in iscsit_setup_text_cmd+0x?? BUG: KASAN: double-free in iscsit_release_cmd+0x??
showing the same pointer freed in the ERL>0 drop path and again in iscsit_setup_text_cmd() (next Text Request on the same ITT) and once more in iscsit_release_cmd() (session teardown). On distro kernels with CONFIG_SLAB_FREELIST_HARDENED=y (default) the double-free becomes a remote kernel BUG(); on non-hardened kernels it corrupts the slab freelist.
Fix by clearing cmd->text_in_ptr after the kfree() in the ERL>0 drop path. With both hunks applied #4 is directly observable on the stock tree without observability printks; fixing bug-1 alone would mask #4 less, not more, so the hunks are submitted together.
Both fixes are one-liners. The Text PDU state machine is unchanged and the wire protocol is unaffected.
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 |
|---|---|---|---|---|
| Amazon_linux_2023 | — | Upgrade python3-perf6.12Upgrade kernel6.12-debuginfo-common-aarch64Upgrade kernel6.12Upgrade kernel6.12-modules-extra-commonUpgrade kernel6.12-toolsUpgrade bpftool6.18-debuginfoUpgrade kernel6.18-debuginfoUpgrade kernel6.12-tools-develUpgrade kernel6.18-headersUpgrade python3-perf6.18-debuginfoUpgrade bpftool6.12Upgrade bpftool6.12-debuginfoUpgrade kernel6.18-debuginfo-common-aarch64Upgrade perf6.12-debuginfoUpgrade perf6.18-debuginfoUpgrade kernel6.12-debuginfo-common-x86_64Upgrade kernel6.12-modules-extraUpgrade kernel6.12-develUpgrade microvm-kernel6.18Upgrade python3-perf6.12-debuginfoUpgrade perf6.18Upgrade kernel6.18-tools-develUpgrade kernel6.18-tools-debuginfoUpgrade kernel-livepatch-6.18.35-68.127Upgrade kernel-livepatch-6.12.94-123.174Upgrade kernel6.12-headersUpgrade bpftool6.18Upgrade perf6.12Upgrade kernel6.18Upgrade kernel6.18-modules-extra-commonUpgrade kernel6.18-modules-extraUpgrade kernel6.18-develUpgrade kernel6.18-debuginfo-common-x86_64Upgrade kernel6.12-debuginfoUpgrade kernel6.18-toolsUpgrade kernel6.12-tools-debuginfoUpgrade python3-perf6.18 | Aug 18, 2026 | Jul 19, 2026 |
| Debian | — | Upgrade linux | Jul 20, 2026 | Jul 20, 2026 |
| Redhat_linux | — | No solution existsUpgrade kernel-rtUpgrade kernel | Jul 23, 2026 | Jul 19, 2026 |
| Rocky_linux | — | Upgrade kernel-debug-develUpgrade kernel-debug-coreUpgrade kernel-debuginfo-common-x86_64Upgrade kernel-rt-debuginfo-common-x86_64Upgrade libperfUpgrade kernel-modulesUpgrade kernel-uki-virtUpgrade kernel-debug-debuginfoUpgrade bpftool-debuginfoUpgrade kernel-debug-modules-coreUpgrade kernel-rt-debug-modules-extraUpgrade kernel-debuginfoUpgrade kernel-rt-debug-modulesUpgrade kernel-tools-debuginfoUpgrade kernel-zfcpdump-debuginfoUpgrade kernel-modules-extraUpgrade perf-debuginfoUpgrade kernel-zfcpdumpUpgrade kernel-rt-debug-kvmUpgrade kernel-modules-coreUpgrade python3-perfUpgrade kernel-coreUpgrade kernel-rt-debug-develUpgrade kernel-debugUpgrade kernelUpgrade kernel-zfcpdump-develUpgrade kernel-rt-debugUpgrade kernel-rt-coreUpgrade kernel-devel-matchedUpgrade kernel-develUpgrade kernel-debug-uki-virtUpgrade rtlaUpgrade kernel-zfcpdump-modules-extraUpgrade libperf-debuginfoUpgrade kernel-zfcpdump-devel-matchedUpgrade kernel-debug-modulesUpgrade kernel-rt-kvmUpgrade python3-perf-debuginfoUpgrade kernel-rtUpgrade kernel-tools-libsUpgrade perfUpgrade kernel-rt-debuginfoUpgrade bpftoolUpgrade kernel-debuginfo-common-s390xUpgrade kernel-zfcpdump-modules-coreUpgrade kernel-rt-modulesUpgrade kernel-rt-develUpgrade kernel-rt-debug-coreUpgrade kernel-rt-debug-modules-coreUpgrade kernel-uki-virt-addonsUpgrade kernel-zfcpdump-modulesUpgrade rvUpgrade kernel-rt-modules-coreUpgrade kernel-toolsUpgrade kernel-rt-modules-extraUpgrade kernel-rt-debug-debuginfoUpgrade kernel-zfcpdump-coreUpgrade kernel-tools-libs-develUpgrade kernel-debug-devel-matchedUpgrade kernel-debug-modules-extra | Aug 24, 2026 | Aug 21, 2026 |
| Ubuntu | — | Upgrade linux-image-6.8.0-142-generic-64kUpgrade linux-image-azure-fips-5.15Upgrade linux-image-6.8.0-1035-nvidia-tegra-rtUpgrade linux-image-genericUpgrade linux-image-6.8.0-1069-gcpUpgrade linux-image-lowlatency-5.15Upgrade linux-image-xilinx-zynqmp-5.15Upgrade linux-image-intel-iot-realtimeUpgrade linux-image-intelUpgrade linux-image-7.0.0-1008-oracleUpgrade linux-image-lowlatency-64k-hwe-22.04Upgrade linux-image-kvm-5.15Upgrade linux-image-nvidia-64k-hwe-26.04Upgrade linux-image-oem-20.04dUpgrade linux-image-nvidia-64kUpgrade linux-image-nvidia-64k-6.8Upgrade linux-image-oracle-lts-22.04Upgrade linux-image-6.8.0-1069-gcp-64kUpgrade linux-image-gcp-6.8Upgrade linux-image-6.8.0-1068-azure-fipsUpgrade linux-image-gcp-64k-6.8Upgrade linux-image-azure-cvmUpgrade linux-image-6.8.0-1064-gke-64kUpgrade linux-image-5.15.0-1079-xilinx-zynqmpUpgrade linux-image-nvidia-64k-hwe-22.04Upgrade linux-image-aws-64k-lts-22.04Upgrade linux-image-gcpUpgrade linux-image-aws-5.15Upgrade linux-image-intel-iotg-5.15Upgrade linux-image-5.15.0-1116-awsUpgrade linux-image-7.0.0-2016-nvidia-bos-64kUpgrade linux-image-lowlatency-64k-5.15Upgrade linux-image-nvidia-lowlatency-64k-6.8Upgrade linux-image-nvidia-tegra-rt-6.8Upgrade linux-image-6.8.0-1063-nvidia-lowlatencyUpgrade linux-image-6.8.0-142-lowlatencyUpgrade linux-image-generic-lpae-5.15Upgrade linux-image-realtimeUpgrade linux-image-azure-lts-22.04Upgrade linux-image-generic-lpaeUpgrade linux-image-gcp-7.0Upgrade linux-image-oem-20.04Upgrade linux-image-gcp-fips-6.8Upgrade linux-image-virtualUpgrade linux-image-7.0.0-1010-ibmUpgrade linux-image-azure-fde-7.0Upgrade linux-image-5.15.0-1116-gcp-fipsUpgrade linux-image-5.15.0-1121-azure-fdeUpgrade linux-image-6.8.0-1063-nvidiaUpgrade linux-image-virtual-5.15Upgrade linux-image-7.0.0-1009-aws-64kUpgrade linux-image-oem-20.04cUpgrade linux-image-azure-fde-6.8Upgrade linux-image-nvidia-lowlatency-6.8Upgrade linux-image-5.15.0-194-lowlatency-64kUpgrade linux-image-nvidia-tegraUpgrade linux-image-gkeUpgrade linux-image-intel-iotgUpgrade linux-image-oracle-lts-24.04Upgrade linux-image-7.0.0-1009-azure-fdeUpgrade linux-image-oracle-64k-7.0Upgrade linux-image-generic-lpae-hwe-20.04Upgrade linux-image-nvidia-hwe-22.04Upgrade linux-image-xilinx-zynqmpUpgrade linux-image-6.8.0-1063-nvidia-lowlatency-64kUpgrade linux-image-azure-fde-lts-22.04Upgrade linux-image-nvidia-hwe-26.04Upgrade linux-image-5.15.0-1108-kvmUpgrade linux-image-7.0.0-1011-oracle-64kUpgrade linux-image-oracleUpgrade linux-image-realtime-hwe-22.04Upgrade linux-image-5.15.0-1099-gkeopUpgrade linux-image-lowlatency-64kUpgrade linux-image-gkeopUpgrade linux-image-7.0.0-1011-gcpUpgrade linux-image-gcp-lts-24.04Upgrade linux-image-7.0.0-1015-raspi-realtimeUpgrade linux-image-raspi-7.0Upgrade linux-image-aws-64kUpgrade linux-image-nvidia-bos-7.0Upgrade linux-image-7.0.0-1010-azureUpgrade linux-image-5.15.0-1113-oracleUpgrade linux-image-6.8.0-1064-gkeUpgrade linux-image-generic-64k-hwe-20.04Upgrade linux-image-lowlatency-64k-6.8Upgrade linux-image-oracle-64kUpgrade linux-image-raspi-realtimeUpgrade linux-image-7.0.0-1011-oracleUpgrade linux-image-7.0.0-1014-azureUpgrade linux-image-azure-fips-6.8Upgrade linux-image-fips-6.8Upgrade linux-image-azure-6.8Upgrade linux-image-nvidia-tegra-6.8Upgrade linux-image-gkeop-5.15Upgrade linux-image-6.8.0-1066-azure-fdeUpgrade linux-image-aws-64k-7.0Upgrade linux-image-6.8.1-1060-realtimeUpgrade linux-image-gcp-lts-22.04Upgrade linux-image-gcp-fipsUpgrade linux-image-7.0.0-1016-nvidia-64kUpgrade linux-image-6.8.0-142-fipsUpgrade linux-image-6.8.0-1035-nvidia-tegraUpgrade linux-image-5.15.0-194-generic-64kUpgrade linux-image-5.15.0-1116-aws-fipsUpgrade linux-image-oracle-64k-lts-24.04Upgrade linux-image-oracle-64k-6.8Upgrade linux-image-ibm-7.0Upgrade linux-image-nvidia-64k-7.0Upgrade linux-image-lowlatency-6.8Upgrade linux-image-laptop-23.10Upgrade linux-image-ibm-6.8Upgrade linux-image-gkeop-6.8Upgrade linux-image-gke-64k-6.8Upgrade linux-image-generic-64kUpgrade linux-image-fipsUpgrade linux-image-azure-fdeUpgrade linux-image-6.8.0-1062-oracle-64kUpgrade linux-image-5.15.0-1110-ibmUpgrade linux-image-raspi-realtime-7.0Upgrade linux-image-nvidia-tegra-rtUpgrade linux-image-gcp-64k-lts-24.04Upgrade linux-image-5.15.0-1108-intel-iot-realtimeUpgrade linux-image-7.0.0-1015-raspiUpgrade linux-image-5.15.0-1111-intel-iotgUpgrade linux-image-oracle-5.15Upgrade linux-image-nvidia-lowlatency-64kUpgrade linux-image-nvidia-bos-64k-7.0Upgrade linux-image-lowlatency-hwe-20.04Upgrade linux-image-kvmUpgrade linux-image-gke-5.15Upgrade linux-image-azure-fde-5.15Upgrade linux-image-oracle-7.0Upgrade linux-image-6.8.0-1065-raspiUpgrade linux-image-5.15.0-1112-gkeUpgrade linux-image-aws-7.0Upgrade linux-image-6.8.0-142-genericUpgrade linux-image-6.8.0-1068-azureUpgrade linux-image-6.8.0-1065-ibmUpgrade linux-image-6.8.0-1062-oracleUpgrade linux-image-5.15.0-1122-azure-fipsUpgrade linux-image-5.15.0-1122-azureUpgrade linux-image-5.15.0-1115-realtimeUpgrade linux-image-virtual-hwe-20.04Upgrade linux-image-nvidia-lowlatencyUpgrade linux-image-ibm-lts-24.04Upgrade linux-image-nvidia-7.0Upgrade linux-image-aws-lts-22.04Upgrade linux-image-6.8.0-1068-gcp-fipsUpgrade linux-image-generic-64k-6.8Upgrade linux-image-generic-6.8Upgrade linux-image-gcp-64k-7.0Upgrade linux-image-raspiUpgrade linux-image-generic-64k-5.15Upgrade linux-image-gcp-64kUpgrade linux-image-azure-7.0Upgrade linux-image-aws-fipsUpgrade linux-image-awsUpgrade linux-image-7.0.0-1008-oracle-64kUpgrade linux-image-6.8.0-1063-nvidia-64kUpgrade linux-image-5.15.0-194-lowlatencyUpgrade linux-image-5.15.0-1116-aws-64kUpgrade linux-image-virtual-6.8Upgrade linux-image-realtime-6.8.1Upgrade linux-image-raspi-6.8Upgrade linux-image-aws-64k-5.15Upgrade linux-image-7.0.0-1011-gcp-64kUpgrade linux-image-azure-fipsUpgrade linux-image-lowlatency-hwe-22.04Upgrade linux-image-gcp-fips-5.15Upgrade linux-image-5.15.0-194-generic-lpaeUpgrade linux-image-nvidia-bosUpgrade linux-image-lowlatencyUpgrade linux-image-5.15.0-194-genericUpgrade linux-image-5.15.0-1117-gcpUpgrade linux-image-realtime-5.15Upgrade linux-image-raspi-realtime-6.8Upgrade linux-image-oem-20.04bUpgrade linux-image-nvidia-bos-64kUpgrade linux-image-ibm-5.15Upgrade linux-image-gke-64kUpgrade linux-image-generic-5.15Upgrade linux-image-azure-5.15Upgrade linux-image-aws-fips-5.15Upgrade linux-image-7.0.0-2016-nvidia-bosUpgrade linux-image-azureUpgrade linux-image-azure-fde-lts-24.04Upgrade linux-image-gcp-5.15Upgrade linux-image-azure-lts-24.04Upgrade linux-image-7.0.0-1009-awsUpgrade linux-image-oracle-6.8Upgrade linux-image-generic-hwe-20.04Upgrade linux-image-6.8.0-1050-gkeopUpgrade linux-image-nvidia-6.8Upgrade linux-image-nvidiaUpgrade linux-image-gke-6.8Upgrade linux-image-lowlatency-64k-hwe-20.04Upgrade linux-image-intel-iot-realtime-5.15Upgrade linux-image-ibm-classicUpgrade linux-image-6.8.0-142-lowlatency-64kUpgrade linux-image-7.0.0-1016-nvidiaUpgrade linux-image-6.8.0-2054-raspi-realtimeUpgrade linux-image-ibm | Jul 21, 2026 | Jul 20, 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