CVE-2021-29154 json
BPF JIT compilers in the Linux kernel through 5.11.12 have incorrect computation of branch displacements, allowing them to execute arbitrar…
published 2021-04-08 5 y ago modified 2026-06-17 4 mo ago also EUVD-2021-15793
- cvss
- 7.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.9%
- EPSS 0.9% chance of exploitation in 30 days, percentile 60%
- public exploits
- 0
- none known
Summary
BPF JIT compilers in the Linux kernel through 5.11.12 have incorrect computation of branch displacements, allowing them to execute arbitrary code within the kernel context. This affects arch/x86/net/bpf_jit_comp.c and arch/x86/net/bpf_jit_comp32.c.
Patch / fix
- linux linux_kernel 4.4.266, 4.9.266, 4.14.230, 4.19.186, 5.4.111, 5.10.29, 5.11.13
- linux Debian 14, Debian 13, Debian 12 5.10.28-1
debian advisories DEBIAN-CVE-2021-29154
- linux Ubuntu 16.04 LTS 4.4.0-209.241
- linux Ubuntu 18.04 LTS 4.15.0-142.146
- linux Ubuntu 20.04 LTS 5.4.0-72.80
- linux-aws Ubuntu 16.04 LTS 4.4.0-1127.141
- linux-aws Ubuntu 18.04 LTS 4.15.0-1099.106
- linux-aws Ubuntu 20.04 LTS 5.4.0-1045.47
- linux-gcp Ubuntu 16.04 LTS 4.15.0-1098.111~16.04.1
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1042.45
ubuntu advisories UBUNTU-CVE-2021-29154
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel RHEL 8 4.18.0-372.9.1.el8
- perf RHEL 8 4.18.0-372.9.1.el8
- bpftool RHEL 8 4.18.0-372.9.1.el8
- kernel-core RHEL 8 4.18.0-372.9.1.el8
- kernel-tools RHEL 8 4.18.0-372.9.1.el8
- python3-perf RHEL 8 4.18.0-372.9.1.el8
- kernel-modules RHEL 8 4.18.0-372.9.1.el8
- kernel-zfcpdump RHEL 8 4.18.0-372.9.1.el8
red hat advisories RHSA-2022:1988RHSA-2021:3327RHSA-2022:1975RHSA-2021:3328
- kernel-64kb SLE Module for Basesystem 15 SP3 5.3.18-59.5.2
- kernel-syms SLE Module for Development Tools 15 SP3 5.3.18-59.5.1
- kernel-source SLE Module for Development Tools 15 SP3, SLE Module for Basesystem 15 SP3 5.3.18-59.5.2
- kernel-default SLE Workstation Extension 15 SP3, SLE Module for Legacy 15 SP3, SLE Module for Basesystem 15 SP3 +2 more 5.3.18-59.5.2
- kernel-preempt SLE Workstation Extension 15 SP3, SLE Module for Development Tools 15 SP3, SLE Module for Basesystem 15 SP3 5.3.18-59.5.2
- kernel-zfcpdump SLE Module for Basesystem 15 SP3 5.3.18-59.5.2
- kernel-obs-build SLE Module for Development Tools 15 SP3 5.3.18-59.5.1
- kernel-default-base SLE Module for Basesystem 15 SP3 5.3.18-59.5.2.18.2.2
suse advisories SUSE-SU-2021:2577-1SUSE-SU-2021:14764-1SUSE-SU-2021:2198-1SUSE-SU-2021:1977-1SUSE-SU-2021:1975-1SUSE-SU-2021:1870-1
- kernel-64kb openSUSE Leap 15.3 5.3.18-59.5.2
- kernel-syms openSUSE Leap 15.3 5.3.18-59.5.1
- kernel-obs-qa openSUSE Leap 15.3 5.3.18-59.5.1
- kernel-source openSUSE Leap 15.3 5.3.18-59.5.2
- kernel-default openSUSE Leap 15.3 5.3.18-59.5.2
- kernel-preempt openSUSE Leap 15.3 5.3.18-59.5.2
- kernel-kvmsmall openSUSE Leap 15.3 5.3.18-59.5.2
- kernel-zfcpdump openSUSE Leap 15.3 5.3.18-59.5.2
opensuse advisories openSUSE-SU-2021:1977-1openSUSE-SU-2021:1975-1openSUSE-SU-2021:0758-1openSUSE-SU-2021:0579-1
- kernel AlmaLinux 8 4.18.0-372.9.1.el8
- perf AlmaLinux 8 4.18.0-372.9.1.el8
- bpftool AlmaLinux 8 4.18.0-372.9.1.el8
- kernel-core AlmaLinux 8 4.18.0-372.9.1.el8
- kernel-tools AlmaLinux 8 4.18.0-372.9.1.el8
- python3-perf AlmaLinux 8 4.18.0-372.9.1.el8
- kernel-modules AlmaLinux 8 4.18.0-372.9.1.el8
- kernel-debug-core AlmaLinux 8 4.18.0-372.9.1.el8
almalinux advisories ALSA-2022:1988
- kernel Rocky Linux 8 4.18.0-372.9.1.el8
- kernel-rt Rocky Linux 8 4.18.0-372.9.1.rt7.166.el8
rocky linux advisories RLSA-2022:1988RLSA-2022:1975
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2021-29154 updated cvss 7.0
kernel: Local privilege escalation due to incorrect BPF JIT branch displacement computation
-
Red Hat Enterprise Linux 7 perf, kernel, kernel-alt, python-perf, kernel-kdump, kernel-tools, +3 moreaffected: workaround, no fix planned “Out of support scope”
-
Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-372.9.1.el8, kernel 4.18.0-372.9.1.el8, bpftool 4.18.0-372.9.1.el8, kernel-core 4.18.0-372.9.1.el8, kernel-tools 4.18.0-372.9.1.el8, python3-perf 4.18.0-372.9.1.el8, +15 morefixed: vendor fix RHSA-2022:1988
-
Red Hat Enterprise Linux Client (v. 7) perf 3.10.0-1160.41.1.el7, kernel 3.10.0-1160.41.1.el7, bpftool 3.10.0-1160.41.1.el7, python-perf 3.10.0-1160.41.1.el7, kernel-tools 3.10.0-1160.41.1.el7, kernel-tools-libs 3.10.0-1160.41.1.el7, +2 more Red Hat Enterprise Linux Client Optional (v. 7) kernel-debuginfo-common-x86_64 3.10.0-1160.41.1.el7 Red Hat Enterprise Linux ComputeNode Optional (v. 7) kernel-debuginfo-common-x86_64 3.10.0-1160.41.1.el7fixed: vendor fix RHSA-2021:3327
-
Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-372.9.1.el8, kernel-debuginfo-common-aarch64 4.18.0-372.9.1.el8, kernel-debuginfo-common-ppc64le 4.18.0-372.9.1.el8fixed: vendor fix RHSA-2022:1988
-
Red Hat Enterprise Linux for Real Time (v. 7) kernel-rt 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-trace 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-debuginfo-common-x86_64 3.10.0-1160.41.1.rt56.1181.el7 Red Hat Enterprise Linux for Real Time for NFV (v. 7) kernel-rt 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-kvm 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-trace 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-debug-kvm 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-trace-kvm 3.10.0-1160.41.1.rt56.1181.el7, kernel-rt-debuginfo-common-x86_64 3.10.0-1160.41.1.rt56.1181.el7fixed: vendor fix RHSA-2021:3328
-
Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-372.9.1.rt7.166.el8, kernel-rt-kvm 4.18.0-372.9.1.rt7.166.el8, kernel-rt-core 4.18.0-372.9.1.rt7.166.el8, kernel-rt-modules 4.18.0-372.9.1.rt7.166.el8, kernel-rt-debug-kvm 4.18.0-372.9.1.rt7.166.el8, kernel-rt-debug-core 4.18.0-372.9.1.rt7.166.el8, +4 more Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-372.9.1.rt7.166.el8, kernel-rt-core 4.18.0-372.9.1.rt7.166.el8, kernel-rt-modules 4.18.0-372.9.1.rt7.166.el8, kernel-rt-debug-core 4.18.0-372.9.1.rt7.166.el8, kernel-rt-debug-modules 4.18.0-372.9.1.rt7.166.el8, kernel-rt-modules-extra 4.18.0-372.9.1.rt7.166.el8, +2 morefixed: vendor fix RHSA-2022:1975
-
Red Hat Enterprise Linux Server (v. 7) perf 3.10.0-1160.41.1.el7, kernel 3.10.0-1160.41.1.el7, bpftool 3.10.0-1160.41.1.el7, python-perf 3.10.0-1160.41.1.el7, kernel-kdump 3.10.0-1160.41.1.el7, kernel-tools 3.10.0-1160.41.1.el7, +7 more Red Hat Enterprise Linux Server Optional (v. 7) kernel-debuginfo-common-ppc64 3.10.0-1160.41.1.el7, kernel-debuginfo-common-x86_64 3.10.0-1160.41.1.el7, kernel-debuginfo-common-ppc64le 3.10.0-1160.41.1.el7 Red Hat Enterprise Linux Workstation (v. 7) perf 3.10.0-1160.41.1.el7, kernel 3.10.0-1160.41.1.el7, bpftool 3.10.0-1160.41.1.el7, python-perf 3.10.0-1160.41.1.el7, kernel-tools 3.10.0-1160.41.1.el7, kernel-tools-libs 3.10.0-1160.41.1.el7, +2 more Red Hat Enterprise Linux Workstation Optional (v. 7) kernel-debuginfo-common-x86_64 3.10.0-1160.41.1.el7fixed: vendor fix RHSA-2021:3327
-
Red Hat Enterprise Linux 5 kernel Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +82 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.93% chance of exploitation in the next 30 days, higher than 60% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 7.2 | AV:L/AC:L/Au:N/C:C/I:C/A:C |
Classification
- Weakness
-
- CWE-77 Improper Neutralization of Special Elements used in a Command
- Technology feeds
References
- git.kernel.org /cgit/linux/kernel/git/torvalds/linux.git/commit/?id=e4d4d456436bfb2fe412ee2cd489f7658449b098
- git.kernel.org /cgit/linux/kernel/git/torvalds/linux.git/commit/?id=26f55a59dc65ff77cd1c4b37991e26497fc68049
-
openwall.com
/lists/oss-security/2021/04/08/1
mailing-list, patch, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/W5YFGIIF24475A2LNW3UWHW2SNCS3G7M/
vendor-advisory
-
lists.debian.org
/debian-lts-announce/2021/06/msg00020.html
mailing-list, third-party-advisory
-
lists.debian.org
/debian-lts-announce/2021/06/msg00019.html
mailing-list, third-party-advisory
-
oracle.com
/security-alerts/cpujul2022.html
third-party-advisory
-
news.ycombinator.com
/item?id=26757760
issue-tracking, third-party-advisory
-
packetstormsecurity.com
/files/162434/Kernel-Live-Patch-Security-Notice-LSN-0076-1.html
third-party-advisory, vdb-entry
-
security.netapp.com
/advisory/ntap-20210604-0006/
third-party-advisory
Sources
- CVE List CVE-2021-29154
- NVD CVE-2021-29154
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.