{"id":"CVE-2024-26811","state":"PUBLISHED","title":"ksmbd: validate payload size in ipc response","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: validate payload size in ipc response\n\nIf installing malicious ksmbd-tools, ksmbd.mountd can return invalid ipc\nresponse to ksmbd kernel server. ksmbd should validate payload size of\nipc response from ksmbd.mountd to avoid memory overrun or\nslab-out-of-bounds. This patch validate 3 ipc response that has payload.","publishedAt":"2024-04-08T10:02:18.184Z","updatedAt":"2026-08-05T11:27:30.296Z","severity":{"score":9.8,"label":"Critical","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"88b7f1143b15b29cccb8392b4f38e75b7bb3e300","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"51a6c2af9d20203ddeeaf73314ba8854b38d01bd","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"a637fabac554270a851033f5ab402ecb90bc479c","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"76af689a45aa44714b46d1a7de4ffdf851ded896","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"a677ebd8ca2f2632ccdecbad7b87641274e15aac","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/smb/server/ksmbd_netlink.h","fs/smb/server/mgmt/share_config.c","fs/smb/server/transport_ipc.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.15","versionType":"semver"},{"version":"5.15.157","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.85","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.26","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.8.5","status":"unaffected","lessThanOrEqual":"6.8.*","versionType":"semver"},{"version":"6.9","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/smb/server/ksmbd_netlink.h","fs/smb/server/mgmt/share_config.c","fs/smb/server/transport_ipc.c"]}],"references":["https://git.kernel.org/stable/c/88b7f1143b15b29cccb8392b4f38e75b7bb3e300","https://git.kernel.org/stable/c/51a6c2af9d20203ddeeaf73314ba8854b38d01bd","https://git.kernel.org/stable/c/a637fabac554270a851033f5ab402ecb90bc479c","https://git.kernel.org/stable/c/76af689a45aa44714b46d1a7de4ffdf851ded896","https://git.kernel.org/stable/c/a677ebd8ca2f2632ccdecbad7b87641274e15aac","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6XCNJZBDMGJXRIKLGKM4RRJU4XCHPX62/","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RO3RO34MLQ6WT3A7O6STQUVXW43N6W3K/","https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LG6L4FXO4WNWUM6W7USOH2YTRVWREM3V/"],"weaknesses":[],"ingestedAt":"2026-10-29T20:07:10.607Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2024/26xxx/CVE-2024-26811.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2024-26811","state":"PUBLISHED","datePublished":"2024-04-08T10:02:18.184Z","dateUpdated":"2026-08-05T11:27:30.296Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2024-02-19T14:20:24.180Z"},"containers":{"cna":{"title":"ksmbd: validate payload size in ipc response","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: validate payload size in ipc response\n\nIf installing malicious ksmbd-tools, ksmbd.mountd can return invalid ipc\nresponse to ksmbd kernel server. ksmbd should validate payload size of\nipc response from ksmbd.mountd to avoid memory overrun or\nslab-out-of-bounds. This patch validate 3 ipc response that has payload."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"88b7f1143b15b29cccb8392b4f38e75b7bb3e300","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"51a6c2af9d20203ddeeaf73314ba8854b38d01bd","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"a637fabac554270a851033f5ab402ecb90bc479c","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"76af689a45aa44714b46d1a7de4ffdf851ded896","versionType":"git"},{"version":"0626e6641f6b467447c81dd7678a69c66f7746cf","status":"affected","lessThan":"a677ebd8ca2f2632ccdecbad7b87641274e15aac","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/smb/server/ksmbd_netlink.h","fs/smb/server/mgmt/share_config.c","fs/smb/server/transport_ipc.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"5.15","status":"affected"},{"version":"0","status":"unaffected","lessThan":"5.15","versionType":"semver"},{"version":"5.15.157","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.85","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.26","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.8.5","status":"unaffected","lessThanOrEqual":"6.8.*","versionType":"semver"},{"version":"6.9","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["fs/smb/server/ksmbd_netlink.h","fs/smb/server/mgmt/share_config.c","fs/smb/server/transport_ipc.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/88b7f1143b15b29cccb8392b4f38e75b7bb3e300"},{"url":"https://git.kernel.org/stable/c/51a6c2af9d20203ddeeaf73314ba8854b38d01bd"},{"url":"https://git.kernel.org/stable/c/a637fabac554270a851033f5ab402ecb90bc479c"},{"url":"https://git.kernel.org/stable/c/76af689a45aa44714b46d1a7de4ffdf851ded896"},{"url":"https://git.kernel.org/stable/c/a677ebd8ca2f2632ccdecbad7b87641274e15aac"}],"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 vulnerable parsing lives in the in-kernel SMB3 server (fs/smb/server/) and is only entered on behalf of a remote client's SMB2 SESSION_SETUP, TREE_CONNECT, or DCERPC-over-IPC$ request, and the over-read bytes are copied straight back into the SMB response sent to that client over TCP/445.\nAC:L - The kernel unconditionally trusts the embedded length fields, so no memory-layout luck is needed; where handle reuse after the 2 s IPC timeout is involved the attacker drives both sides by opening many connections and issuing concurrent requests to stall ksmbd.mountd, which the rubric treats as attacker-created and therefore Low.\nPR:N - One of the three responses this patch validates (SPNEGO_AUTHEN) is consumed inside ksmbd_krb5_authenticate() during SMB2 SESSION_SETUP, before the client's credentials are verified, and the over-read blob is written into the response returned to that unauthenticated client; the share-config and IPC$ RPC paths are additionally reachable via guest/anonymous sessions that ksmbd-tools enables by default.\nUI:N - The attacker triggers the IPC transaction entirely on their own by sending SMB2 requests to the listening server; no local user or administrator has to perform any action.\nS:U - The out-of-bounds access and its consequences are confined to the kernel that hosts the ksmbd server; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - smb2_read_pipe() memcpys rpc_resp->payload_sz bytes out of a short slab object and returns them verbatim to the client as SMB2 READ data, and ksmbd_krb5_authenticate() ships spnego_blob_len over-read bytes back in the SESSION_SETUP SecurityBuffer — a large, directly exfiltrated kernel heap disclosure.\nI:H - Because a wrong-type response is accepted and reinterpreted, security-critical state is built from out-of-bounds slab memory: ksmbd_alloc_user() derives the session's uid/gid/status flags from an OOB login_response, and share->path is kstrdup'd from bytes past the object, letting the server grant a session under an unintended identity or root a share at an unintended path.\nA:H - An unvalidated payload_sz drives kvmalloc() of an arbitrary u32 size and a matching memcpy from a much smaller allocation, so the slab-out-of-bounds read readily walks into unmapped memory and oopses the kernel (or trips KASAN/hardened usercopy), killing the SMB service."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-05T11:27:30.296Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"5.15.157"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.1.85"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.6.26"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.8.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.9"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CVE Program Container","references":[{"url":"https://git.kernel.org/stable/c/88b7f1143b15b29cccb8392b4f38e75b7bb3e300","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/51a6c2af9d20203ddeeaf73314ba8854b38d01bd","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/a637fabac554270a851033f5ab402ecb90bc479c","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/76af689a45aa44714b46d1a7de4ffdf851ded896","tags":["x_transferred"]},{"url":"https://git.kernel.org/stable/c/a677ebd8ca2f2632ccdecbad7b87641274e15aac","tags":["x_transferred"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6XCNJZBDMGJXRIKLGKM4RRJU4XCHPX62/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RO3RO34MLQ6WT3A7O6STQUVXW43N6W3K/"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/LG6L4FXO4WNWUM6W7USOH2YTRVWREM3V/"}],"providerMetadata":{"shortName":"CVE","orgId":"af854a3a-2127-422b-91ae-364da2661108","dateUpdated":"2025-11-04T22:06:01.323Z"}},{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2024-26811","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"version":"2.0.3","timestamp":"2024-09-10T15:50:30.655244Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-09-11T17:33:43.255Z"}}]}}}