CWE
787
Advisory Published
CVE Published
Updated

CVE-2024-27050: libbpf: Use OPTS_SET() macro in bpf_xdp_query()

First published: Wed May 01 2024(Updated: )

In the Linux kernel, the following vulnerability has been resolved: libbpf: Use OPTS_SET() macro in bpf_xdp_query() When the feature_flags and xdp_zc_max_segs fields were added to the libbpf bpf_xdp_query_opts, the code writing them did not use the OPTS_SET() macro. This causes libbpf to write to those fields unconditionally, which means that programs compiled against an older version of libbpf (with a smaller size of the bpf_xdp_query_opts struct) will have its stack corrupted by libbpf writing out of bounds. The patch adding the feature_flags field has an early bail out if the feature_flags field is not part of the opts struct (via the OPTS_HAS) macro, but the patch adding xdp_zc_max_segs does not. For consistency, this fix just changes the assignments to both fields to use the OPTS_SET() macro.

Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67 416baaa9-dc9f-4396-8d5f-8c081fb06d67

Affected SoftwareAffected VersionHow to fix
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-aws<6.8.0-1009.9
6.8.0-1009.9
ubuntu/linux-aws<6.9~<6.8.2
6.9~
6.8.2
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-azure<6.8.0-1008.8
6.8.0-1008.8
ubuntu/linux-azure<6.9~<6.8.2
6.9~
6.8.2
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<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<6.9~<6.8.2
6.9~
6.8.2
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<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<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<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-gcp-5.15<6.9~<6.8.2
6.9~
6.8.2
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<6.8.0-1004.7
6.8.0-1004.7
ubuntu/linux-gke<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-gkeop<6.9~<6.8.2
6.9~
6.8.2
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-5.15<6.9~<6.8.2
6.9~
6.8.2
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<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<6.9~<6.8.2
6.9~
6.8.2
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<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-intel-iotg-5.15<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-iot<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-kvm<6.9~<6.8.2
6.9~
6.8.2
ubuntu/linux-laptop<6.9~<6.8.2
6.9~
6.8.2
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<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<6.9~<6.8.2
6.9~
6.8.2
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-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<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-5.15<6.9~<6.8.2
6.9~
6.8.2
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<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<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<6.9~<6.8.2
6.9~
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

Never miss a vulnerability like this again

Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.

Parent vulnerabilities

(Appears in the following advisories)

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2024 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203