{"id":"CVE-2026-98167","revision":"5ccdb084043243329d7bfc3f9b73e12a","records":[{"revision":"5ccdb084043243329d7bfc3f9b73e12a","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-98167","aliases":[],"title":"smb: client: fix server->total_read for compound encrypted PDUs","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix server->total_read for compound encrypted PDUs\n\nIn receive_encrypted_standard(), server->total_read is left at the\nfull decrypted frame size when walking sub-PDUs of a compound encrypted\nframe. As a result, cifs_handle_standard() passes this full size\nto smb2_check_message(), causing the PDU length guards to incorrectly\nvalidate the entire compound frame instead of the current sub-PDU.\n\nThis allows truncated non-last sub-PDUs to bypass length validation,\nleading to out-of-bounds reads in smb2_get_data_area_len().\n\nFix this by setting server->total_read to the true length of the\ncurrent sub-PDU: next_cmd for non-last sub-PDUs, and the remaining\npdu_length for the last one.","state":0,"publishedAt":"2026-10-06T08:44:12.731+00:00","modifiedAt":"2026-10-19T09:14:58.765+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/smb/client/smb2ops.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"8703539d22fdbc13dd2db090ee199c3a427b8ea0\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"e78fc1d240b27349b45a0f1c3e3c2c401d7e230d\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"a46eb242e9eef3a3897d166748b23303c516e870\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"ebb8a075fdc7af3d196a4f158a0e18dbc394c0e3\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"282b72f9a7ef31296c48366db4128882999cc048\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"b24df3e30cbf48255db866720fb71f14bf9d2f39\",\n                            \"lessThan\": \"f73726b83e4756fdaa099e1bc1143293bd57ad79\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"fs/smb/client/smb2ops.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"4.19\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"4.19\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.1.189\",\n                            \"lessThanOrEqual\": \"6.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.158\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.112\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.54\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2.8\",\n                            \"lessThanOrEqual\": \"7.2.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.3\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[],"references":["https://git.kernel.org/stable/c/8703539d22fdbc13dd2db090ee199c3a427b8ea0","https://git.kernel.org/stable/c/e78fc1d240b27349b45a0f1c3e3c2c401d7e230d","https://git.kernel.org/stable/c/a46eb242e9eef3a3897d166748b23303c516e870","https://git.kernel.org/stable/c/ebb8a075fdc7af3d196a4f158a0e18dbc394c0e3","https://git.kernel.org/stable/c/282b72f9a7ef31296c48366db4128882999cc048","https://git.kernel.org/stable/c/f73726b83e4756fdaa099e1bc1143293bd57ad79"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-98167","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-98167","identifiers":["CVE-2026-98167"]},"retained":false,"historicalAffected":[]}],"coverage":[]}