Nixpkgs security tracker

Login with GitHub
⚠️ You are using a production deployment that is still only suitable for demo purposes. Any work done in this might be wiped later without notice.

Suggestion detail

Dismissed
(max. allowed matches exceeded)
created 3 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
bpf: Fix OOB in pcpu_init_value

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix OOB in pcpu_init_value An out-of-bounds read occurs when copying element from a BPF_MAP_TYPE_CGROUP_STORAGE map to another pcpu map with the same value_size that is not rounded up to 8 bytes. The issue happens when: 1. A CGROUP_STORAGE map is created with value_size not aligned to 8 bytes (e.g., 4 bytes) 2. A pcpu map is created with the same value_size (e.g., 4 bytes) 3. Update element in 2 with data in 1 pcpu_init_value assumes that all sources are rounded up to 8 bytes, and invokes copy_map_value_long to make a data copy, However, the assumption doesn't stand since there are some cases where the source may not be rounded up to 8 bytes, e.g., CGROUP_STORAGE, skb->data. the verifier verifies exactly the size that the source claims, not the size rounded up to 8 bytes by kernel, an OOB happens when the source has only 4 bytes while the copy size(4) is rounded up to 8.

Affected products

Linux
  • =<6.18.*
  • ==5.10
  • ==c602ad2b52dcbca5af08e5137bd5575c039b52e3
  • <5.5
  • =<7.0.*
  • <576afddfee8d1108ee299bf10f581593540d1a36
  • ==ab68b940dd6f7b5f8e2557937162dcb8a0583a05
  • <e19c5ed9f1922a6854073f8651a63fa7be26e9e9
  • <5.10
  • <6086079e6d1c32ba4c4b422612b8aebb1129a96c
  • =<*
  • <5.10
  • <634a793d0e1c822412095d25a1338f8831ad894c
  • =<6.12.*
  • <e0378419b0e20178b5d100b27c9cc7e51064202e
  • =<6.6.*