CVE-2021-47280
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
21/05/2024
Last modified:
24/12/2024
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
drm: Fix use-after-free read in drm_getunique()<br />
<br />
There is a time-of-check-to-time-of-use error in drm_getunique() due<br />
to retrieving file_priv->master prior to locking the device&#39;s master<br />
mutex.<br />
<br />
An example can be seen in the crash report of the use-after-free error<br />
found by Syzbot:<br />
https://syzkaller.appspot.com/bug?id=148d2f1dfac64af52ffd27b661981a540724f803<br />
<br />
In the report, the master pointer was used after being freed. This is<br />
because another process had acquired the device&#39;s master mutex in<br />
drm_setmaster_ioctl(), then overwrote fpriv->master in<br />
drm_new_set_master(). The old value of fpriv->master was subsequently<br />
freed before the mutex was unlocked.<br />
<br />
To fix this, we lock the device&#39;s master mutex before retrieving the<br />
pointer from from fpriv->master. This patch passes the Syzbot<br />
reproducer test.
Impact
Base Score 3.x
7.00
Severity 3.x
HIGH
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.14.237 (excluding) | |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.195 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.126 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.44 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.12.11 (excluding) |
| cpe:2.3:o:linux:linux_kernel:5.13:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.13:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.13:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.13:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:5.13:rc5:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/17dab9326ff263c62dab1dbac4492e2938a049e4
- https://git.kernel.org/stable/c/491d52e0078860b33b6c14f0a7ac74ca1b603bd6
- https://git.kernel.org/stable/c/7d233ba700ceb593905ea82b42dadb4ec8ef85e9
- https://git.kernel.org/stable/c/b246b4c70c1250e7814f409b243000f9c0bf79a3
- https://git.kernel.org/stable/c/b436acd1cf7fac0ba987abd22955d98025c80c2b
- https://git.kernel.org/stable/c/f773f8cccac13c7e7bbd9182e7996c727742488e
- https://git.kernel.org/stable/c/17dab9326ff263c62dab1dbac4492e2938a049e4
- https://git.kernel.org/stable/c/491d52e0078860b33b6c14f0a7ac74ca1b603bd6
- https://git.kernel.org/stable/c/7d233ba700ceb593905ea82b42dadb4ec8ef85e9
- https://git.kernel.org/stable/c/b246b4c70c1250e7814f409b243000f9c0bf79a3
- https://git.kernel.org/stable/c/b436acd1cf7fac0ba987abd22955d98025c80c2b
- https://git.kernel.org/stable/c/f773f8cccac13c7e7bbd9182e7996c727742488e



