{"id":"CVE-2024-26935","title":"In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: core: Fix unremoved procfs host directory regression\n\nCommit fc663711b944 (\"scsi: core: Remove the /proc/scsi/${proc_name}\ndirectory earlier\") fixed a bug related…","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\nscsi: core: Fix unremoved procfs host directory regression\n\nCommit fc663711b944 (\"scsi: core: Remove the /proc/scsi/${proc_name}\ndirectory earlier\") fixed a bug related…","severity":"medium","cvss":5.5,"cvssVector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H","vendor":"linux","product":"linux_kernel","affected":["linux_kernel >= 5.4.238, < 5.4.274","linux_kernel >= 5.10.176, < 5.10.215","linux_kernel >= 5.15.104, < 5.15.154","linux_kernel >= 6.1.21, < 6.1.84","linux_kernel >= 6.2.8, < 6.3","linux_kernel >= 6.3.1, < 6.6.24","linux_kernel >= 6.7, < 6.7.12","linux_kernel >= 6.8, < 6.8.3","linux_kernel = 6.3","linux_kernel = 6.9","debian_linux = 10.0"],"patched":["linux_kernel 6.8.3"],"published":"2024-05-01","updated":"2026-10-15","sourceUpdated":"2026-10-15T01:17:32.727","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2024-26935","references":[{"url":"https://git.kernel.org/stable/c/0053f15d50d50c9312d8ab9c11e2e405812dfcac","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/3678cf67ff7136db1dd3bf63c361650db5d92889","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/5c2386ba80e779a92ec3bb64ccadbedd88f779b1","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/cea234bb214b17d004dfdccce4491e6ff57c96ee","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/d4c34782b6d7b1e68d18d9549451b19433bd4c6c","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/e293c773c13b830cdc251f155df2254981abc320","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/f23a4d6e07570826fe95023ca1aa96a011fa9f84","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/f4ff08fab66eb5c0b97e1a24edac052fb40bf5d7","label":"416baaa9-dc9f-4396-8d5f-8c081fb06d67"},{"url":"https://git.kernel.org/stable/c/0053f15d50d50c9312d8ab9c11e2e405812dfcac","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/3678cf67ff7136db1dd3bf63c361650db5d92889","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/5c2386ba80e779a92ec3bb64ccadbedd88f779b1","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/cea234bb214b17d004dfdccce4491e6ff57c96ee","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/d4c34782b6d7b1e68d18d9549451b19433bd4c6c","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/e293c773c13b830cdc251f155df2254981abc320","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/f23a4d6e07570826fe95023ca1aa96a011fa9f84","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://git.kernel.org/stable/c/f4ff08fab66eb5c0b97e1a24edac052fb40bf5d7","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://lists.debian.org/debian-lts-announce/2024/06/msg00017.html","label":"af854a3a-2127-422b-91ae-364da2661108"},{"url":"https://cert-portal.siemens.com/productcert/html/ssa-265688.html","label":"0b142b55-0307-4c5a-b3c9-f314f3fb7c5e"}],"tags":["nvd","cve.org"],"epss":0.00242,"epssPercentile":0.1529,"ingestedAt":"2026-10-15T03:30:12.662Z","ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2024-06-21T14:41:52.902192Z"},"slug":"CVE-2024-26935","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\nscsi: core: Fix unremoved procfs host directory regression\n\nCommit fc663711b944 (\"scsi: core: Remove the /proc/scsi/${proc_name}\ndirectory earlier\") fixed a bug related to modules loading/unloading, by\nadding a call to scsi_proc_hostdir_rm() on scsi_remove_host(). But that led\nto a potential duplicate call to the hostdir_rm() routine, since it's also\ncalled from scsi_host_dev_release(). That triggered a regression report,\nwhich was then fixed by commit be03df3d4bfe (\"scsi: core: Fix a procfs host\ndirectory removal regression\"). The fix just dropped the hostdir_rm() call\nfrom dev_release().\n\nBut it happens that this proc directory is created on scsi_host_alloc(),\nand that function \"pairs\" with scsi_host_dev_release(), while\nscsi_remove_host() pairs with scsi_add_host(). In other words, it seems the\nreason for removing the proc directory on dev_release() was meant to cover\ncases in which a SCSI host structure was allocated, but the call to\nscsi_add_host() didn't happen. And that pattern happens to exist in some\nerror paths, for example.\n\nSyzkaller causes that by using USB raw gadget device, error'ing on\nusb-storage driver, at usb_stor_probe2(). By checking that path, we can see\nthat the BadDevice label leads to a scsi_host_put() after a SCSI host\nallocation, but there's no call to scsi_add_host() in such path. That leads\nto messages like this in dmesg (and a leak of the SCSI host proc\nstructure):\n\nusb-storage 4-1:87.51: USB Mass Storage device detected\nproc_dir_entry 'scsi/usb-storage' already registered\nWARNING: CPU: 1 PID: 3519 at fs/proc/generic.c:377 proc_register+0x347/0x4e0 fs/proc/generic.c:376\n\nThe proper fix seems to still call scsi_proc_hostdir_rm() on dev_release(),\nbut guard that with the state check for SHOST_CREATED; there is even a\ncomment in scsi_host_dev_release() detailing that: such conditional is\nmeant for cases where the SCSI host was allocated but there was no calls to\n{add,remove}_host(), like the usb-storage case.\n\nThis is what we propose here and with that, the error path of usb-storage\ndoes not trigger the warning anymore.\n\n## Affected\n\n- `linux_kernel >= 5.4.238, < 5.4.274`\n- `linux_kernel >= 5.10.176, < 5.10.215`\n- `linux_kernel >= 5.15.104, < 5.15.154`\n- `linux_kernel >= 6.1.21, < 6.1.84`\n- `linux_kernel >= 6.2.8, < 6.3`\n- `linux_kernel >= 6.3.1, < 6.6.24`\n- `linux_kernel >= 6.7, < 6.7.12`\n- `linux_kernel >= 6.8, < 6.8.3`\n- `linux_kernel = 6.3`\n- `linux_kernel = 6.9`\n- `debian_linux = 10.0`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `linux_kernel 6.8.3`","depth":"sunlit","depthScore":30,"depthScoreParts":{"impact":30.3,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}