Bug 1187721 - (CVE-2021-3600) VUL-1: CVE-2021-3600: kernel-source-rt,kernel-source,kernel-source-azure: Linux kernel eBPF 32-bit source register truncation on div/mod
(CVE-2021-3600)
VUL-1: CVE-2021-3600: kernel-source-rt,kernel-source,kernel-source-azure: Lin...
Status: RESOLVED FIXED
Classification: Novell Products
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents
unspecified
Other Other
: P5 - None : Minor
: ---
Assigned To: Kernel Bugs
Security Team bot
https://smash.suse.de/issue/302816/
:
Depends on:
Blocks: 1187724
  Show dependency treegraph
 
Reported: 2021-06-25 14:36 UTC by Gianluca Gabrielli
Modified: 2021-06-25 14:53 UTC (History)
2 users (show)

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gianluca Gabrielli 2021-06-25 14:36:14 UTC
From: Thadeu Lima de Souza Cascardo 
Date: Wed, 23 Jun 2021 13:07:42 -0300

It was discovered that eBPF 32-bit div/mod source register truncation could
lead to out-of-bounds reads and writes in the kernel.

It was introduced by commit 68fda450a7df ("bpf: fix 32-bit divide by zero"). It
was first introduced in 4.15-rc9, but backported and applied to v4.14.y, v4.9.y
and v4.4.y. However, this specific attack will not work on v4.4.y and v4.9.y
kernels as pointer arithmetic is prohibited on those kernels. This was
introduced by commit f1174f77b50c ("bpf/verifier: rework value tracking"), in
v4.14-rc1.

The fix is commit e88b2c6e5a4d ("bpf: Fix 32 bit src register truncation on
div/mod"), introduced in v5.11. It was backported and applied on v5.10.y and
v5.4.y, but not v4.19.y and v4.14.y.

Cascardo.

References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2021-3600
http://seclists.org/oss-sec/2021/q2/228
Comment 1 Gianluca Gabrielli 2021-06-25 14:37:03 UTC
Already fixed base branches:
 - master
 - stable
 - SLE15-SP2
 - linux-4.12

Not affected base branches:
 - linux-2.6.32
 - linux-3.0
 - linux-4.4