First published: Wed Apr 17 2024(Updated: )
In the Linux kernel, the following vulnerability has been resolved: bpf: Fix hashtab overflow check on 32-bit arches The hashtab code relies on roundup_pow_of_two() to compute the number of hash buckets, and contains an overflow check by checking if the resulting value is 0. However, on 32-bit arches, the roundup code itself can overflow by doing a 32-bit left-shift of an unsigned long value, which is undefined behaviour, so it is not guaranteed to truncate neatly. This was triggered by syzbot on the DEVMAP_HASH type, which contains the same check, copied from the hashtab code. So apply the same fix to hashtab, by moving the overflow check to before the roundup.
Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Linux kernel | >=3.19<4.19.311 | |
Linux Linux kernel | >=4.20<5.4.273 | |
Linux Linux kernel | >=5.5<5.10.214 | |
Linux Linux kernel | >=5.11<5.15.153 | |
Linux Linux kernel | >=5.16<6.1.83 | |
Linux Linux kernel | >=6.2<6.6.23 | |
Linux Linux kernel | >=6.7<6.7.11 | |
Linux Linux kernel | >=6.8<6.8.2 | |
debian/linux | 5.10.218-1 5.10.221-1 6.1.94-1 6.1.99-1 6.9.10-1 6.9.12-1 | |
ubuntu/linux | <4.15.0-227.239 | 4.15.0-227.239 |
ubuntu/linux | <5.4.0-189.209 | 5.4.0-189.209 |
ubuntu/linux | <5.15.0-112.122 | 5.15.0-112.122 |
ubuntu/linux | <6.8.0-35.35 | 6.8.0-35.35 |
ubuntu/linux | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux | <4.4.0-257.291 | 4.4.0-257.291 |
ubuntu/linux-aws | <4.15.0-1170.183 | 4.15.0-1170.183 |
ubuntu/linux-aws | <5.4.0-1128.138 | 5.4.0-1128.138 |
ubuntu/linux-aws | <5.15.0-1063.69 | 5.15.0-1063.69 |
ubuntu/linux-aws | <6.8.0-1009.9 | 6.8.0-1009.9 |
ubuntu/linux-aws | <4.4.0-1134.140 | 4.4.0-1134.140 |
ubuntu/linux-aws | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws | <4.4.0-1172.187 | 4.4.0-1172.187 |
ubuntu/linux-aws-5.15 | <5.15.0-1063.69~20.04.1 | 5.15.0-1063.69~20.04.1 |
ubuntu/linux-aws-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws-fips | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws-hwe | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-aws-hwe | <4.15.0-1170.183~16.04.1 | 4.15.0-1170.183~16.04.1 |
ubuntu/linux-azure | <5.4.0-1133.140 | 5.4.0-1133.140 |
ubuntu/linux-azure | <5.15.0-1066.75 | 5.15.0-1066.75 |
ubuntu/linux-azure | <6.8.0-1008.8 | 6.8.0-1008.8 |
ubuntu/linux-azure | <4.15.0-1179.194~14.04.1 | 4.15.0-1179.194~14.04.1 |
ubuntu/linux-azure | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-4.15 | <4.15.0-1179.194 | 4.15.0-1179.194 |
ubuntu/linux-azure-4.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-5.4 | <5.4.0-1133.140~18.04.1 | 5.4.0-1133.140~18.04.1 |
ubuntu/linux-azure-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-fde | <5.15.0-1067.76.1 | 5.15.0-1067.76.1 |
ubuntu/linux-azure-fde | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-fde-5.15 | <5.15.0-1065.74~20.04.1.1 | 5.15.0-1065.74~20.04.1.1 |
ubuntu/linux-azure-fde-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-azure-fips | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-bluefield | <5.4.0-1088.95 | 5.4.0-1088.95 |
ubuntu/linux-bluefield | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-fips | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp | <5.4.0-1132.141 | 5.4.0-1132.141 |
ubuntu/linux-gcp | <5.15.0-1062.70 | 5.15.0-1062.70 |
ubuntu/linux-gcp | <6.8.0-1008.9 | 6.8.0-1008.9 |
ubuntu/linux-gcp | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp | <4.15.0-1164.181~16.04.1 | 4.15.0-1164.181~16.04.1 |
ubuntu/linux-gcp-4.15 | <4.15.0-1164.181 | 4.15.0-1164.181 |
ubuntu/linux-gcp-4.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp-5.15 | <5.15.0-1062.70~20.04.1 | 5.15.0-1062.70~20.04.1 |
ubuntu/linux-gcp-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp-5.4 | <5.4.0-1132.141~18.04.1 | 5.4.0-1132.141~18.04.1 |
ubuntu/linux-gcp-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gcp-fips | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gke | <5.15.0-1060.66 | 5.15.0-1060.66 |
ubuntu/linux-gke | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gkeop | <5.4.0-1095.99 | 5.4.0-1095.99 |
ubuntu/linux-gkeop | <5.15.0-1046.53 | 5.15.0-1046.53 |
ubuntu/linux-gkeop | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-gkeop-5.15 | <5.15.0-1046.53~20.04.1 | 5.15.0-1046.53~20.04.1 |
ubuntu/linux-gkeop-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-hwe | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-hwe | <4.15.0-227.239~16.04.1 | 4.15.0-227.239~16.04.1 |
ubuntu/linux-hwe-5.15 | <5.15.0-113.123~20.04.1 | 5.15.0-113.123~20.04.1 |
ubuntu/linux-hwe-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-hwe-5.4 | <5.4.0-189.209~18.04.1 | 5.4.0-189.209~18.04.1 |
ubuntu/linux-hwe-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-hwe-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-ibm | <5.4.0-1075.80 | 5.4.0-1075.80 |
ubuntu/linux-ibm | <5.15.0-1056.59 | 5.15.0-1056.59 |
ubuntu/linux-ibm | <6.8.0-1006.6 | 6.8.0-1006.6 |
ubuntu/linux-ibm | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-ibm-5.15 | <5.15.0-1057.60~20.04.1 | 5.15.0-1057.60~20.04.1 |
ubuntu/linux-ibm-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-ibm-5.4 | <5.4.0-1075.80~18.04.1 | 5.4.0-1075.80~18.04.1 |
ubuntu/linux-ibm-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-intel | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-intel-iotg | <5.15.0-1058.64 | 5.15.0-1058.64 |
ubuntu/linux-intel-iotg | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-intel-iotg-5.15 | <5.15.0-1058.64~20.04.1 | 5.15.0-1058.64~20.04.1 |
ubuntu/linux-intel-iotg-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-iot | <5.4.0-1040.41 | 5.4.0-1040.41 |
ubuntu/linux-iot | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-kvm | <4.15.0-1154.159 | 4.15.0-1154.159 |
ubuntu/linux-kvm | <5.4.0-1116.123 | 5.4.0-1116.123 |
ubuntu/linux-kvm | <5.15.0-1060.65 | 5.15.0-1060.65 |
ubuntu/linux-kvm | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-kvm | <4.4.0-1135.145 | 4.4.0-1135.145 |
ubuntu/linux-laptop | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-lowlatency | <5.15.0-110.120 | 5.15.0-110.120 |
ubuntu/linux-lowlatency | <6.8.0-35.35.1 | 6.8.0-35.35.1 |
ubuntu/linux-lowlatency | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-lowlatency-hwe-5.15 | <5.15.0-110.120~20.04.1 | 5.15.0-110.120~20.04.1 |
ubuntu/linux-lowlatency-hwe-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-lowlatency-hwe-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-lts-xenial | <4.4.0-257.291~14.04.1 | 4.4.0-257.291~14.04.1 |
ubuntu/linux-lts-xenial | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-nvidia | <5.15.0-1058.59 | 5.15.0-1058.59 |
ubuntu/linux-nvidia | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-nvidia-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-nvidia-6.8 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-nvidia-lowlatency | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oem-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oem-6.8 | <6.8.0-1006.6 | 6.8.0-1006.6 |
ubuntu/linux-oem-6.8 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oracle | <4.15.0-1133.144 | 4.15.0-1133.144 |
ubuntu/linux-oracle | <5.4.0-1127.136 | 5.4.0-1127.136 |
ubuntu/linux-oracle | <5.15.0-1061.67 | 5.15.0-1061.67 |
ubuntu/linux-oracle | <6.8.0-1006.6 | 6.8.0-1006.6 |
ubuntu/linux-oracle | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oracle | <4.15.0-1133.144~16.04.1 | 4.15.0-1133.144~16.04.1 |
ubuntu/linux-oracle-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oracle-5.4 | <5.4.0-1127.136~18.04.1 | 5.4.0-1127.136~18.04.1 |
ubuntu/linux-oracle-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-oracle-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-raspi | <5.4.0-1112.124 | 5.4.0-1112.124 |
ubuntu/linux-raspi | <5.15.0-1058.61 | 5.15.0-1058.61 |
ubuntu/linux-raspi | <6.8.0-1005.5 | 6.8.0-1005.5 |
ubuntu/linux-raspi | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-raspi-5.4 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-riscv | <6.8.0-35.35.1 | 6.8.0-35.35.1 |
ubuntu/linux-riscv | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-riscv-5.15 | <5.15.0-1059.63~20.04.1 | 5.15.0-1059.63~20.04.1 |
ubuntu/linux-riscv-5.15 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-riscv-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-starfive | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-starfive-6.5 | <6.9~<6.8.2 | 6.9~ 6.8.2 |
ubuntu/linux-xilinx-zynqmp | <5.4.0-1047.51 | 5.4.0-1047.51 |
ubuntu/linux-xilinx-zynqmp | <5.15.0-1030.34 | 5.15.0-1030.34 |
ubuntu/linux-xilinx-zynqmp | <6.9~<6.8.2 | 6.9~ 6.8.2 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
(Appears in the following advisories)