Vulnerability · Published Oct 21, 2024 · Assigned by Linux
CVE-2024-50047smb: client: fix UAF in async decryption
Critical 9.8
In plain English
A critical-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.5% (higher than 44% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: smb: client: fix UAF in async decryption Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API. Reproducer: # mount.cifs -o ...,seal,esize=1 //srv/share /mnt # dd if=/mnt/largefile of=/dev/null ... [ 194.196391] ================================================================== [ 194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110 [ 194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899 [ 194.197707] [ 194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43 [ 194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014 [ 194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs] [ 194.200032] Call Trace: [ 194.200191] <TASK> [ 194.200327] dump_stack_lvl+0x4e/0x70 [ 194.200558] ? gf128mul_4k_lle+0xc1/0x110 [ 194.200809] print_report+0x174/0x505 [ 194.201040] ? __pfx__raw_spin_lock_irqsave+0x10/0x10 [ 194.201352] ? srso_return_thunk+0x5/0x5f [ 194.201604] ? __virt_addr_valid+0xdf/0x1c0 [ 194.201868] ? gf128mul_4k_lle+0xc1/0x110 [ 194.202128] kasan_report+0xc8/0x150 [ 194.202361] ? gf128mul_4k_lle+0xc1/0x110 [ 194.202616] gf128mul_4k_lle+0xc1/0x110 [ 194.202863] ghash_update+0x184/0x210 [ 194.203103] shash_ahash_update+0x184/0x2a0 [ 194.203377] ? __pfx_shash_ahash_update+0x10/0x10 [ 194.203651] ? srso_return_thunk+0x5/0x5f [ 194.203877] ? crypto_gcm_init_common+0x1ba/0x340 [ 194.204142] gcm_hash_assoc_remain_continue+0x10a/0x140 [ 194.204434] crypt_message+0xec1/0x10a0 [cifs] [ 194.206489] ? __pfx_crypt_message+0x10/0x10 [cifs] [ 194.208507] ? srso_return_thunk+0x5/0x5f [ 194.209205] ? srso_return_thunk+0x5/0x5f [ 194.209925] ? srso_return_thunk+0x5/0x5f [ 194.210443] ? srso_return_thunk+0x5/0x5f [ 194.211037] decrypt_raw_data+0x15f/0x250 [cifs] [ 194.212906] ? __pfx_decrypt_raw_data+0x10/0x10 [cifs] [ 194.214670] ? srso_return_thunk+0x5/0x5f [ 194.215193] smb2_decrypt_offload+0x12a/0x6c0 [cifs] This is because TFM is being used in parallel. Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()). Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian:12 | linux | 6.1.128-1 | DEBIAN-CVE-2024-50047 |
| Debian:12 | linux | 6.1.128-1 | DSA-5860-1 |
| Debian:13 | linux | 6.11.4-1 | DEBIAN-CVE-2024-50047 |
| Debian:14 | linux | 6.11.4-1 | DEBIAN-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux | 5.15.0-143.153 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux | 5.15.0-143.153 | USN-7608-1 |
| Ubuntu:24.04:LTS | linux | 6.8.0-56.58 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux | 6.8.0-56.58 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1087.94 | USN-7608-1 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1087.94 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1025.27 | USN-7383-1 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1025.27 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-aws-6.8 | 6.8.0-1027.29~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1092.101 | USN-7608-7 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1092.101 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-azure | 6.8.0-1025.30 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-azure-6.11 | 6.11.0-1012.12~24.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-6.8 | 6.8.0-1025.30~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1092.101.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-azure-nvidia | 6.8.0-1014.15 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1086.95 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1086.95 | USN-7608-1 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1026.28 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1026.28 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-gcp-6.11 | 6.11.0-1011.11~24.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1026.28~22.04.1 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1026.28~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1084.90 | USN-7608-1 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1084.90 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1021.25 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1021.25 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1069.77 | USN-7608-1 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1069.77 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-gkeop | 6.8.0-1008.10 | USN-7383-1 |
| Ubuntu:24.04:LTS | linux-gkeop | 6.8.0-1008.10 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-hwe-6.8 | 6.8.0-57.59~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1079.82 | USN-7608-1 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1079.82 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-ibm | 6.8.0-1022.22 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-ibm-6.8 | 6.8.0-1023.23~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-intel-iot-realtime | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1082.88 | USN-7608-5 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1082.88 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1083.88 | USN-7608-1 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1083.88 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-143.153 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-143.153 | USN-7608-1 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-56.58.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-56.58.1 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-56.58.1~22.04.1 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-56.58.1~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1081.82 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1081.82 | USN-7608-1 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1024.27 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1024.27 | USN-7383-1 |
| Ubuntu:24.04:LTS | linux-nvidia-6.11 | 6.11.0-1007.7 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1024.27~22.04.1 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1024.27~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1024.27.1 | USN-7383-1 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1024.27.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1040.40 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1040.40 | USN-7608-5 |
| Ubuntu:24.04:LTS | linux-nvidia-tegra | 6.8.0-1004.4 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1029.29 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1029.29 | USN-7608-5 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-oem-6.11 | 6.11.0-1015.15 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | 6.8.0-1024.24 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1084.90 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1084.90 | USN-7608-1 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1022.23 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1022.23 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1022.23~22.04.1 | USN-7383-1 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1022.23~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1083.86 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1083.86 | USN-7686-1 |
| Ubuntu:24.04:LTS | linux-raspi | 6.8.0-1028.32 | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-riscv | 6.8.0-56.58.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-riscv-6.8 | 6.8.0-56.58.1~22.04.1 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2024-50047 |
| Ubuntu:24.04:LTS | linux-xilinx | 6.8.0-1017.18 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1051.55 | UBUNTU-CVE-2024-50047 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1051.55 | USN-7608-6 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 35cf94a397280b9e27576ac1480f631bdd3e7b70 – before 8f14a476abba13144df5434871a7225fd29af63335cf94a397280b9e27576ac1480f631bdd3e7b70 – before ef51c0d544b1518b35364480317ab6d3468f205d35cf94a397280b9e27576ac1480f631bdd3e7b70 – before bce966530fd5542bbb422cb45ecb775f7a1a6bc335cf94a397280b9e27576ac1480f631bdd3e7b70 – before 0809fb86ad13b29e1d6d491364fc7ea4fb54599535cf94a397280b9e27576ac1480f631bdd3e7b70 – before 538c26d9bf70c90edc460d18c81008a4e555925a35cf94a397280b9e27576ac1480f631bdd3e7b70 – before b0abcd65ec545701b8793e12bc27dc98042b151a |
| Linux | Linux | 5.4 |
References
- https://git.kernel.org/stable/c/8f14a476abba13144df5434871a7225fd29af633
- https://git.kernel.org/stable/c/ef51c0d544b1518b35364480317ab6d3468f205d
- https://git.kernel.org/stable/c/bce966530fd5542bbb422cb45ecb775f7a1a6bc3
- https://git.kernel.org/stable/c/0809fb86ad13b29e1d6d491364fc7ea4fb545995
- https://git.kernel.org/stable/c/538c26d9bf70c90edc460d18c81008a4e555925a
- https://git.kernel.org/stable/c/b0abcd65ec545701b8793e12bc27dc98042b151a
- https://lists.debian.org/debian-lts-announce/2025/05/msg00030.html
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html