Out-of-bounds write in Linux kernel - CVE-2021-3490
Published: August 19, 2021 / Updated: February 14, 2024
Vulnerability details
The vulnerability allows a local user to escalate privileges on the system.
The vulnerability exists due to a boundary error when processing untrusted input in bpf. The eBPF ALU32 bounds tracking for bitwise ops (AND, OR and XOR) in the
Linux kernel did not properly update 32-bit bounds, which could be
turned into out of bounds reads and writes in the Linux kernel and
therefore, arbitrary code execution. A local user can run a specially crafted program to trigger an out-of-bounds write and execute arbitrary code with elevated privileges.
Affected software
SUSE Linux Enterprise Module for Public Cloud
SUSE Linux Enterprise Workstation Extension
SUSE Linux Enterprise Module for Live Patching
SUSE Linux Enterprise Module for Legacy Software
SUSE Linux Enterprise Module for Development Tools
SUSE Linux Enterprise Module for Basesystem
SUSE Linux Enterprise High Availability
Ubuntu
Fedora
kernel-livepatch-5_3_18-59_5-default
kernel-livepatch-5_3_18-59_5-default-debuginfo
kernel-livepatch-SLE15-SP3_Update_1-debugsource
kernel-livepatch-5_3_18-57-default
kernel-livepatch-5_3_18-57-default-debuginfo
kernel-livepatch-SLE15-SP3_Update_0-debugsource
kernel-azure
kernel-source-azure
kernel-devel-azure
kernel-syms-azure
kernel-azure-devel-debuginfo
kernel-azure-devel
kernel-azure-debugsource
kernel-azure-debuginfo
kernel-syms
kernel-obs-build-debugsource
kernel-obs-build
kernel-devel
kernel-64kb-devel-debuginfo
kernel-64kb-devel
kernel-64kb-debugsource
kernel-macros
kernel-zfcpdump
kernel-64kb-debuginfo
ocfs2-kmp-default
kernel-64kb
kernel-zfcpdump-debuginfo
kernel-zfcpdump-debugsource
cluster-md-kmp-default
cluster-md-kmp-default-debuginfo
dlm-kmp-default
dlm-kmp-default-debuginfo
gfs2-kmp-default
gfs2-kmp-default-debuginfo
ocfs2-kmp-default-debuginfo
kernel-default-livepatch
kernel-default-debuginfo
kernel-default-debugsource
kernel-default-extra
kernel-default-extra-debuginfo
kernel-preempt-debuginfo
kernel-preempt
kernel-preempt-debugsource
kernel-preempt-extra
kernel-preempt-extra-debuginfo
kernel-default-livepatch-devel
reiserfs-kmp-default
reiserfs-kmp-default-debuginfo
kernel-preempt-devel
kernel-preempt-devel-debuginfo
kernel-docs
kernel-source
kernel-default
kernel-default-devel
kernel-default-devel-debuginfo
kernel-default-base
linux-image-oem-20.04 (Ubuntu package)
linux-image-virtual (Ubuntu package)
linux-image-generic (Ubuntu package)
linux-image-generic-64k (Ubuntu package)
linux-image-generic-lpae (Ubuntu package)
linux-image-lowlatency (Ubuntu package)
linux-image-5.8.0-53-generic (Ubuntu package)
linux-image-5.8.0-53-lowlatency (Ubuntu package)
linux-image-5.8.0-53-generic-lpae (Ubuntu package)
linux-image-5.8.0-53-generic-64k (Ubuntu package)
linux-image-virtual-hwe-20.04 (Ubuntu package)
linux-image-generic-64k-hwe-20.04 (Ubuntu package)
linux-image-generic-hwe-20.04 (Ubuntu package)
linux-image-generic-lpae-hwe-20.04 (Ubuntu package)
linux-image-lowlatency-hwe-20.04 (Ubuntu package)
linux-image-5.8.0-1024-raspi-nolpae (Ubuntu package)
linux-image-5.8.0-1024-raspi (Ubuntu package)
linux-image-raspi (Ubuntu package)
linux-image-raspi-nolpae (Ubuntu package)
linux-image-kvm (Ubuntu package)
linux-image-5.8.0-1027-kvm (Ubuntu package)
linux-image-oracle (Ubuntu package)
linux-image-5.8.0-1029-oracle (Ubuntu package)
linux-image-gke (Ubuntu package)
linux-image-gcp (Ubuntu package)
linux-image-5.8.0-1031-gcp (Ubuntu package)
linux-image-azure (Ubuntu package)
linux-image-5.8.0-1032-azure (Ubuntu package)
linux-image-5.8.0-1033-aws (Ubuntu package)
linux-image-aws (Ubuntu package)
linux-image-oem-20.04b (Ubuntu package)
linux-image-5.10.0-1026-oem (Ubuntu package)
linux-image-5.11.0-17-generic (Ubuntu package)
linux-image-5.11.0-17-generic-64k (Ubuntu package)
linux-image-5.11.0-17-generic-lpae (Ubuntu package)
linux-image-5.11.0-17-lowlatency (Ubuntu package)
linux-image-5.11.0-1005-azure (Ubuntu package)
linux-image-5.11.0-1006-oracle (Ubuntu package)
linux-image-5.11.0-1007-kvm (Ubuntu package)
linux-image-5.11.0-1007-aws (Ubuntu package)
linux-image-5.11.0-1007-gcp (Ubuntu package)
linux-image-5.11.0-1008-raspi (Ubuntu package)
linux-image-5.11.0-1008-raspi-nolpae (Ubuntu package)
kernel
kernel-headers
kernel-tools
How to mitigate CVE-2021-3490
kernel-livepatch-5_3_18-59_5-default-debuginfo - update to 1-7.5.1
kernel-livepatch-SLE15-SP3_Update_1-debugsource - update to 1-7.5.1
kernel-livepatch-5_3_18-57-default - update to 2-3.1
kernel-livepatch-5_3_18-57-default-debuginfo - update to 2-3.1
kernel-livepatch-SLE15-SP3_Update_0-debugsource - update to 2-3.1
kernel-azure - update to 5.3.18-38.3.1
kernel-source-azure - update to 5.3.18-38.3.1
kernel-devel-azure - update to 5.3.18-38.3.1
kernel-syms-azure - update to 5.3.18-38.3.1
kernel-azure-devel-debuginfo - update to 5.3.18-38.3.1
kernel-azure-devel - update to 5.3.18-38.3.1
kernel-azure-debugsource - update to 5.3.18-38.3.1
kernel-azure-debuginfo - update to 5.3.18-38.3.1
kernel-syms - update to 5.3.18-59.5.1
kernel-obs-build-debugsource - update to 5.3.18-59.5.1
kernel-obs-build - update to 5.3.18-59.5.1
kernel-devel - update to 5.3.18-59.5.2
kernel-64kb-devel-debuginfo - update to 5.3.18-59.5.2
kernel-64kb-devel - update to 5.3.18-59.5.2
kernel-64kb-debugsource - update to 5.3.18-59.5.2
kernel-macros - update to 5.3.18-59.5.2
kernel-zfcpdump - update to 5.3.18-59.5.2
kernel-64kb-debuginfo - update to 5.3.18-59.5.2
ocfs2-kmp-default - update to 5.3.18-59.5.2
kernel-64kb - update to 5.3.18-59.5.2
kernel-zfcpdump-debuginfo - update to 5.3.18-59.5.2
kernel-zfcpdump-debugsource - update to 5.3.18-59.5.2
cluster-md-kmp-default - update to 5.3.18-59.5.2
cluster-md-kmp-default-debuginfo - update to 5.3.18-59.5.2
dlm-kmp-default - update to 5.3.18-59.5.2
dlm-kmp-default-debuginfo - update to 5.3.18-59.5.2
gfs2-kmp-default - update to 5.3.18-59.5.2
gfs2-kmp-default-debuginfo - update to 5.3.18-59.5.2
ocfs2-kmp-default-debuginfo - update to 5.3.18-59.5.2
kernel-default-livepatch - update to 5.3.18-59.5.2
kernel-default-debuginfo - update to 5.3.18-59.5.2
kernel-default-debugsource - update to 5.3.18-59.5.2
kernel-default-extra - update to 5.3.18-59.5.2
kernel-default-extra-debuginfo - update to 5.3.18-59.5.2
kernel-preempt-debuginfo - update to 5.3.18-59.5.2
kernel-preempt - update to 5.3.18-59.5.2
kernel-preempt-debugsource - update to 5.3.18-59.5.2
kernel-preempt-extra - update to 5.3.18-59.5.2
kernel-preempt-extra-debuginfo - update to 5.3.18-59.5.2
kernel-default-livepatch-devel - update to 5.3.18-59.5.2
reiserfs-kmp-default - update to 5.3.18-59.5.2
reiserfs-kmp-default-debuginfo - update to 5.3.18-59.5.2
kernel-preempt-devel - update to 5.3.18-59.5.2
kernel-preempt-devel-debuginfo - update to 5.3.18-59.5.2
kernel-docs - update to 5.3.18-59.5.2
kernel-source - update to 5.3.18-59.5.2
kernel-default - update to 5.3.18-59.5.2
kernel-default-devel - update to 5.3.18-59.5.2
kernel-default-devel-debuginfo - update to 5.3.18-59.5.2
kernel-default-base - update to 5.3.18-59.5.2.18.2.2
linux-image-oem-20.04 (Ubuntu package) - update to 5.8.0.53.58
linux-image-virtual (Ubuntu package) - addressed in versions 5.8.0.53.58, 5.11.0.17.18
linux-image-generic (Ubuntu package) - addressed in versions 5.8.0.53.58, 5.11.0.17.18
linux-image-generic-64k (Ubuntu package) - addressed in versions 5.8.0.53.58, 5.11.0.17.18
linux-image-generic-lpae (Ubuntu package) - addressed in versions 5.8.0.53.58, 5.11.0.17.18
linux-image-lowlatency (Ubuntu package) - addressed in versions 5.8.0.53.58, 5.11.0.17.18
linux-image-5.8.0-53-generic (Ubuntu package) - update to 5.8.0-53.60~20.04.1
linux-image-5.8.0-53-lowlatency (Ubuntu package) - update to 5.8.0-53.60~20.04.1
linux-image-5.8.0-53-generic-lpae (Ubuntu package) - update to 5.8.0-53.60~20.04.1
linux-image-5.8.0-53-generic-64k (Ubuntu package) - update to 5.8.0-53.60~20.04.1
linux-image-virtual-hwe-20.04 (Ubuntu package) - update to 5.8.0.53.60~20.04.37
linux-image-generic-64k-hwe-20.04 (Ubuntu package) - update to 5.8.0.53.60~20.04.37
linux-image-generic-hwe-20.04 (Ubuntu package) - update to 5.8.0.53.60~20.04.37
linux-image-generic-lpae-hwe-20.04 (Ubuntu package) - update to 5.8.0.53.60~20.04.37
linux-image-lowlatency-hwe-20.04 (Ubuntu package) - update to 5.8.0.53.60~20.04.37
linux-image-5.8.0-1024-raspi-nolpae (Ubuntu package) - update to 5.8.0-1024.27
linux-image-5.8.0-1024-raspi (Ubuntu package) - update to 5.8.0-1024.27
linux-image-raspi (Ubuntu package) - addressed in versions 5.8.0.1024.27, 5.11.0.1008.6
linux-image-raspi-nolpae (Ubuntu package) - addressed in versions 5.8.0.1024.27, 5.11.0.1008.6
linux-image-kvm (Ubuntu package) - addressed in versions 5.8.0.1027.29, 5.11.0.1007.7
linux-image-5.8.0-1027-kvm (Ubuntu package) - update to 5.8.0-1027.29
linux-image-oracle (Ubuntu package) - addressed in versions 5.8.0.1029.28, 5.11.0.1006.6
linux-image-5.8.0-1029-oracle (Ubuntu package) - update to 5.8.0-1029.30
linux-image-gke (Ubuntu package) - addressed in versions 5.8.0.1031.31, 5.11.0.1007.7
linux-image-gcp (Ubuntu package) - addressed in versions 5.8.0.1031.31, 5.11.0.1007.7
linux-image-5.8.0-1031-gcp (Ubuntu package) - update to 5.8.0-1031.32
linux-image-azure (Ubuntu package) - addressed in versions 5.8.0.1032.32, 5.11.0.1005.5
linux-image-5.8.0-1032-azure (Ubuntu package) - update to 5.8.0-1032.34
linux-image-5.8.0-1033-aws (Ubuntu package) - update to 5.8.0-1033.35
linux-image-aws (Ubuntu package) - addressed in versions 5.8.0.1033.35, 5.11.0.1007.7
linux-image-oem-20.04b (Ubuntu package) - update to 5.10.0.1026.27
linux-image-5.10.0-1026-oem (Ubuntu package) - update to 5.10.0-1026.27
linux-image-5.11.0-17-generic (Ubuntu package) - update to 5.11.0-17.18
linux-image-5.11.0-17-generic-64k (Ubuntu package) - update to 5.11.0-17.18
linux-image-5.11.0-17-generic-lpae (Ubuntu package) - update to 5.11.0-17.18
linux-image-5.11.0-17-lowlatency (Ubuntu package) - update to 5.11.0-17.18
linux-image-5.11.0-1005-azure (Ubuntu package) - update to 5.11.0-1005.5
linux-image-5.11.0-1006-oracle (Ubuntu package) - update to 5.11.0-1006.6
linux-image-5.11.0-1007-kvm (Ubuntu package) - update to 5.11.0-1007.7
linux-image-5.11.0-1007-aws (Ubuntu package) - update to 5.11.0-1007.7
linux-image-5.11.0-1007-gcp (Ubuntu package) - update to 5.11.0-1007.7
linux-image-5.11.0-1008-raspi (Ubuntu package) - update to 5.11.0-1008.8
linux-image-5.11.0-1008-raspi-nolpae (Ubuntu package) - update to 5.11.0-1008.8
kernel - addressed in versions 5.11.20-100.fc32, 5.11.20-200.fc33, 5.11.20-300.fc34
kernel-headers - addressed in versions 5.11.20-100.fc32, 5.11.20-200.fc33, 5.11.20-300.fc34
kernel-tools - addressed in versions 5.11.20-100.fc32, 5.11.20-200.fc33, 5.11.20-300.fc34
Links to Public Exploits and PoC-codes
External References
- https://ubuntu.com/security/notices/USN-4949-1
- https://www.zerodayinitiative.com/advisories/ZDI-21-606/
- https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git/commit/?id=049c4e13714ecbca567b4d5f6d563f05d431c80e
- https://ubuntu.com/security/notices/USN-4950-1
- https://www.openwall.com/lists/oss-security/2021/05/11/11
- https://security.netapp.com/advisory/ntap-20210716-0004/
Related Security Bulletins
- Privilege escalation in Linux kernel
- SUSE update for the Linux Kernel
- SUSE update for the Linux Kernel
- SUSE update for the Linux Kernel (Live Patch 0 for SLE 15 SP3)
- Ubuntu update for linux
- Ubuntu update for linux
- Ubuntu update for linux-oem-5.10
- Fedora 34 update for kernel, kernel-headers, kernel-tools
- Fedora 32 update for kernel, kernel-headers, kernel-tools
- Fedora 33 update for kernel, kernel-headers, kernel-tools