CVE-2020-8835

Summary

In the Linux kernel 5.5.0 and newer, the bpf verifier (kernel/bpf/verifier.c) did not properly restrict the register bounds for 32-bit operations, leading to out-of-bounds reads and writes in kernel memory. The vulnerability also affects the Linux 5.4 stable series, starting with v5.4.7, as the introducing commit was backported to that branch. This vulnerability was fixed in 5.6.1, 5.5.14, and 5.4.29. (issue is aka ZDI-CAN-10780)

Affected Software

VendorProductVersion RangeStatus
Linux kernelLinux kernel5.6-stable < 5.6.1affected
Linux kernelLinux kernel5.5-stable < 5.5.14affected
Linux kernelLinux kernel5.4.7 < 5.4-stable*affected

Weaknesses

  • n/a

Workarounds

Mitigation for this vulnerability is available by setting the kernel.unprivileged_bpf_disabled sysctl to 1:

$ sudo sysctl kernel.unprivileged_bpf_disabled=1 $ echo kernel.unprivileged_bpf_disabled=1 | sudo tee /etc/sysctl.d/90-CVE-2020-8835.conf

This issue is also mitigated on systems that use secure boot with the kernel lockdown feature which blocks BPF program loading.

ADP Enrichment

CVE Program Container

Additional References

References