{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2025-38075", "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "state": "PUBLISHED", "assignerShortName": "Linux", "dateReserved": "2025-04-16T04:51:23.980Z", "datePublished": "2025-06-18T09:33:50.646Z", "dateUpdated": "2026-08-05T11:59:15.945Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux", "dateUpdated": "2026-08-05T11:59:15.945Z" }, "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: target: iscsi: Fix timeout on deleted connection\n\nNOPIN response timer may expire on a deleted connection and crash with\nsuch logs:\n\nDid not receive response to NOPIN on CID: 0, failing connection for I_T Nexus (null),i,0x00023d000125,iqn.2017-01.com.iscsi.target,t,0x3d\n\nBUG: Kernel NULL pointer dereference on read at 0x00000000\nNIP strlcpy+0x8/0xb0\nLR iscsit_fill_cxn_timeout_err_stats+0x5c/0xc0 [iscsi_target_mod]\nCall Trace:\n iscsit_handle_nopin_response_timeout+0xfc/0x120 [iscsi_target_mod]\n call_timer_fn+0x58/0x1f0\n run_timer_softirq+0x740/0x860\n __do_softirq+0x16c/0x420\n irq_exit+0x188/0x1c0\n timer_interrupt+0x184/0x410\n\nThat is because nopin response timer may be re-started on nopin timer\nexpiration.\n\nStop nopin timer before stopping the nopin response timer to be sure\nthat no one of them will be re-started." } ], "metrics": [ { "cvssV3_1": { "version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 9.8, "baseSeverity": "CRITICAL" }, "scenarios": [ { "lang": "en", "value": "AV:N - The LIO in-kernel iSCSI target serves remote initiators over TCP/3260, and every element of the trigger — login, the NOP-Out replies that drive the NOPIN timer state machine, and the abrupt connection teardown that enters iscsit_close_connection() — is performed by the remote peer over the network.\nAC:L - The attacker controls both sides of the race: replying to a target NOPIN restarts the known-duration nopin timer (iscsi_target.c:1817) so its expiry is exactly predictable, and the attacker then forces connection close at that instant by aborting TCP, retrying across thousands of parallel connections. The condition also occurs spontaneously in production, confirming no attacker-uncontrollable precondition.\nPR:N - iSCSI target portal groups are routinely deployed with authentication=0 (AuthMethod=None) and generate_node_acls=1 demo mode, in which any host reaching TCP/3260 completes a normal-session login with no credentials or authorization check whatsoever, which is all that is needed to start the nopin timers and drive the race.\nUI:N - The remote attacker performs the entire sequence — login, NOP-Out exchange, and connection abort — with no action by any local user or administrator.\nS:U - The use-after-free corrupts kernel slab memory within the kernel's own security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - The armed nopin_response_timer resides inside the kfree'd struct iscsit_conn, and its handler chases conn->sess, sess->sess_ops->InitiatorName, and sess->tpg->tpg_tiqn entirely through freed memory; with the freed slab sprayed this yields arbitrary kernel-memory reads that are copied into tiqn->sess_err_stats.last_sess_fail_rem_name, exposed via configfs stats.\nI:H - The same UAF supplies write primitives — iscsit_inc_conn_usage_count() writes into the freed object, the timer wheel manipulates list pointers in freed memory and calls t->function read from it (control-flow hijack from softirq), and strscpy() writes attacker-influenced data to an address taken from the sprayed sess->tpg->tpg_tiqn chain, with a ~30-second grooming window between free and expiry.\nA:H - The commit documents a reproducible kernel NULL-pointer dereference oops in softirq context (strlcpy via iscsit_fill_cxn_timeout_err_stats from run_timer_softirq), and the underlying use-after-free on freed conn and session objects readily panics the host, an outage repeatable at will by a remote attacker." } ] } ], "affected": [ { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/target/iscsi/iscsi_target.c" ], "versions": [ { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "571ce6b6f5cbaf7d24af03cad592fc0e2a54de35", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "2c5081439c7ab8da08427befe427f0d732ebc9f9", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "019ca2804f3fb49a7f8e56ea6aeaa1ff32724c27", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "6815846e0c3a62116a7da9740e3a7c10edc5c7e9", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "fe8421e853ef289e1324fcda004751c89dd9c18a", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "87389bff743c55b6b85282de91109391f43e0814", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "3e6429e3707943078240a2c0c0b3ee99ea9b0d9c", "status": "affected", "versionType": "git" }, { "version": "e48354ce078c079996f89d715dfa44814b4eba01", "lessThan": "7f533cc5ee4c4436cee51dc58e81dfd9c3384418", "status": "affected", "versionType": "git" } ] }, { "product": "Linux", "vendor": "Linux", "defaultStatus": "affected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/target/iscsi/iscsi_target.c" ], "versions": [ { "version": "3.1", "status": "affected" }, { "version": "0", "lessThan": "3.1", "status": "unaffected", "versionType": "semver" }, { "version": "5.4.294", "lessThanOrEqual": "5.4.*", "status": "unaffected", "versionType": "semver" }, { "version": "5.10.238", "lessThanOrEqual": "5.10.*", "status": "unaffected", "versionType": "semver" }, { "version": "5.15.185", "lessThanOrEqual": "5.15.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.1.141", "lessThanOrEqual": "6.1.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.6.93", "lessThanOrEqual": "6.6.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.12.31", "lessThanOrEqual": "6.12.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.14.9", "lessThanOrEqual": "6.14.*", "status": "unaffected", "versionType": "semver" }, { "version": "6.15", "lessThanOrEqual": "*", "status": "unaffected", "versionType": "original_commit_for_fix" } ] } ], "cpeApplicability": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "5.4.294" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "5.10.238" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "5.15.185" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "6.1.141" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "6.6.93" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "6.12.31" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "6.14.9" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "3.1", "versionEndExcluding": "6.15" } ] } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/571ce6b6f5cbaf7d24af03cad592fc0e2a54de35" }, { "url": "https://git.kernel.org/stable/c/2c5081439c7ab8da08427befe427f0d732ebc9f9" }, { "url": "https://git.kernel.org/stable/c/019ca2804f3fb49a7f8e56ea6aeaa1ff32724c27" }, { "url": "https://git.kernel.org/stable/c/6815846e0c3a62116a7da9740e3a7c10edc5c7e9" }, { "url": "https://git.kernel.org/stable/c/fe8421e853ef289e1324fcda004751c89dd9c18a" }, { "url": "https://git.kernel.org/stable/c/87389bff743c55b6b85282de91109391f43e0814" }, { "url": "https://git.kernel.org/stable/c/3e6429e3707943078240a2c0c0b3ee99ea9b0d9c" }, { "url": "https://git.kernel.org/stable/c/7f533cc5ee4c4436cee51dc58e81dfd9c3384418" } ], "title": "scsi: target: iscsi: Fix timeout on deleted connection", "x_generator": { "engine": "bippy-1.2.0" } }, "adp": [ { "title": "CVE Program Container", "references": [ { "url": "https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html" }, { "url": "https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html" } ], "providerMetadata": { "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE", "dateUpdated": "2025-11-03T17:33:44.033Z" } } ] } }