CVE-2024-27050

Summary

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.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux13ce2daa259a3bfbc9a5aeeee8b9a87058703731 < fa5bef5e80c6a3321b2b1a7070436f3bc5daf07caffected
LinuxLinux13ce2daa259a3bfbc9a5aeeee8b9a87058703731 < 682ddd62abd4bdcee7584246903e7a2df005fe0daffected
LinuxLinux13ce2daa259a3bfbc9a5aeeee8b9a87058703731 < cd3be9843247edb8fc6fcd8d8237cbce2bc19f5eaffected
LinuxLinux13ce2daa259a3bfbc9a5aeeee8b9a87058703731 < 92a871ab9fa59a74d013bc04f321026a057618e7affected
LinuxLinux6.6affected
LinuxLinux0 < 6.6unaffected
LinuxLinux6.6.23 <= 6.6.*unaffected
LinuxLinux6.7.11 <= 6.7.*unaffected
LinuxLinux6.8.2 <= 6.8.*unaffected
LinuxLinux6.9 <= *unaffected

Weaknesses

ADP Enrichment

CISA ADP Vulnrichment

  • SSVC:
  • Exploitation: none
    • Automatable: no
    • Technical Impact: partial

CVE Program Container

Additional References

References