Vulnerability · Published Mar 2, 2024 · Assigned by Linux
CVE-2023-52574team: fix null-ptr-deref when team device type is changed
High 7.8
In plain English
A high-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.3% (higher than 17% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: team: fix null-ptr-deref when team device type is changed Get a null-ptr-deref bug as follows with reproducer [1]. BUG: kernel NULL pointer dereference, address: 0000000000000228 ... RIP: 0010:vlan_dev_hard_header+0x35/0x140 [8021q] ... Call Trace: <TASK> ? __die+0x24/0x70 ? page_fault_oops+0x82/0x150 ? exc_page_fault+0x69/0x150 ? asm_exc_page_fault+0x26/0x30 ? vlan_dev_hard_header+0x35/0x140 [8021q] ? vlan_dev_hard_header+0x8e/0x140 [8021q] neigh_connected_output+0xb2/0x100 ip6_finish_output2+0x1cb/0x520 ? nf_hook_slow+0x43/0xc0 ? ip6_mtu+0x46/0x80 ip6_finish_output+0x2a/0xb0 mld_sendpack+0x18f/0x250 mld_ifc_work+0x39/0x160 process_one_work+0x1e6/0x3f0 worker_thread+0x4d/0x2f0 ? __pfx_worker_thread+0x10/0x10 kthread+0xe5/0x120 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x34/0x50 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1b/0x30 [1] $ teamd -t team0 -d -c '{"runner": {"name": "loadbalance"}}' $ ip link add name t-dummy type dummy $ ip link add link t-dummy name t-dummy.100 type vlan id 100 $ ip link add name t-nlmon type nlmon $ ip link set t-nlmon master team0 $ ip link set t-nlmon nomaster $ ip link set t-dummy up $ ip link set team0 up $ ip link set t-dummy.100 down $ ip link set t-dummy.100 master team0 When enslave a vlan device to team device and team device type is changed from non-ether to ether, header_ops of team device is changed to vlan_header_ops. That is incorrect and will trigger null-ptr-deref for vlan->real_dev in vlan_dev_hard_header() because team device is not a vlan device. Cache eth_header_ops in team_setup(), then assign cached header_ops to header_ops of team net device when its type is changed from non-ether to ether to fix the bug.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | bpftool | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | bpftool | 7.3.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-devel-matched | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-debug-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-devel-matched | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-64k-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-abi-stablelists | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-abi-stablelists | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-core | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-cross-headers | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-cross-headers | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-debug | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-debug | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-debug-core | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-debug-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-debug-devel | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-debug-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-debug-devel-matched | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-debug-modules | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-debug-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-debug-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-debug-modules-extra | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-debug-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-debug-uki-virt | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-devel | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-devel-matched | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-doc | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-doc | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-headers | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-headers | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-modules | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-modules-extra | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-core | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-debug | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-debug | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-debug-core | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-debug-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-debug-devel | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-debug-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-debug-kvm | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:8 | kernel-rt-debug-modules | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-debug-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-rt-debug-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-debug-modules-extra | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-debug-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-devel | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-kvm | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:8 | kernel-rt-modules | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-rt-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-rt-modules-extra | 4.18.0-553.rt7.342.el8_10 | ALSA-2024:2950 |
| AlmaLinux:9 | kernel-rt-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-tools | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-tools | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-tools-libs | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-tools-libs | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-tools-libs-devel | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-tools-libs-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-uki-virt | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-zfcpdump | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-zfcpdump | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-zfcpdump-core | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-zfcpdump-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-zfcpdump-devel | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-zfcpdump-devel | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-zfcpdump-devel-matched | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-zfcpdump-modules | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-zfcpdump-modules | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | kernel-zfcpdump-modules-core | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | kernel-zfcpdump-modules-extra | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | kernel-zfcpdump-modules-extra | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | libperf | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | perf | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | perf | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:8 | python3-perf | 4.18.0-553.el8_10 | ALSA-2024:3138 |
| AlmaLinux:9 | python3-perf | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | rtla | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| AlmaLinux:9 | rv | 5.14.0-427.13.1.el9_4 | ALSA-2024:2394 |
| Debian:12 | linux | 6.1.64-1 | DEBIAN-CVE-2023-52574 |
| Debian:13 | linux | 6.5.6-1 | DEBIAN-CVE-2023-52574 |
| Debian:14 | linux | 6.5.6-1 | DEBIAN-CVE-2023-52574 |
| Rocky Linux:8 | kernel | 0:4.18.0-553.el8_10 | RLSA-2024:3138 |
| Rocky Linux:8 | kernel-rt | 0:4.18.0-553.rt7.342.el8_10 | RLSA-2024:2950 |
| Ubuntu:22.04:LTS | linux | 5.15.0-94.104 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1053.58 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1056.64 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1056.64.1 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1051.59 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1050.55 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1036.42 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1046.49 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1047.53 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1050.55 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-94.104 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1044.44 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | 6.5.0-1014.14 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1022.22 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1009.9 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1051.57 | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1046.49 | UBUNTU-CVE-2023-52574 |
| Ubuntu:24.04:LTS | linux-raspi-realtime | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2023-52574 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1027.31 | UBUNTU-CVE-2023-52574 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 1d76efe1577b4323609b1bcbfafa8b731eda071a – before 1779eb51b9cc628cee551f252701a85a2a50a4571d76efe1577b4323609b1bcbfafa8b731eda071a – before a7fb47b9711101d2405b0eb1276fb1f9b9b270c71d76efe1577b4323609b1bcbfafa8b731eda071a – before c5f6478686bb45f453031594ae19b6c9723a780d1d76efe1577b4323609b1bcbfafa8b731eda071a – before b44dd92e2afd89eb6e9d27616858e72a67bdc1a71d76efe1577b4323609b1bcbfafa8b731eda071a – before cd05eec2ee0cc396813a32ef675634e4037482551d76efe1577b4323609b1bcbfafa8b731eda071a – before 2f0acb0736ecc3eb85dc80ad2790d634dcb10b581d76efe1577b4323609b1bcbfafa8b731eda071a – before cac50d9f5d876be32cb9aa21c74018468900284d1d76efe1577b4323609b1bcbfafa8b731eda071a – before 492032760127251e5540a5716a70996bacf2a3fd |
| Linux | Linux | 3.7 |
References
- https://git.kernel.org/stable/c/1779eb51b9cc628cee551f252701a85a2a50a457
- https://git.kernel.org/stable/c/a7fb47b9711101d2405b0eb1276fb1f9b9b270c7
- https://git.kernel.org/stable/c/c5f6478686bb45f453031594ae19b6c9723a780d
- https://git.kernel.org/stable/c/b44dd92e2afd89eb6e9d27616858e72a67bdc1a7
- https://git.kernel.org/stable/c/cd05eec2ee0cc396813a32ef675634e403748255
- https://git.kernel.org/stable/c/2f0acb0736ecc3eb85dc80ad2790d634dcb10b58
- https://git.kernel.org/stable/c/cac50d9f5d876be32cb9aa21c74018468900284d
- https://git.kernel.org/stable/c/492032760127251e5540a5716a70996bacf2a3fd