CVE-2021-47280

drm: Fix use-after-free read in drm_getunique()

State
Published
Severity
Not scored
Published
May 21, 2024
Updated
May 11, 2026
Reserved
May 21, 2024

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

drm: Fix use-after-free read in drm_getunique()

There is a time-of-check-to-time-of-use error in drm_getunique() due to retrieving file_priv->master prior to locking the device's master mutex.

An example can be seen in the crash report of the use-after-free error found by Syzbot: https://syzkaller.appspot.com/bug?id=148d2f1dfac64af52ffd27b661981a540724f803

In the report, the master pointer was used after being freed. This is because another process had acquired the device's master mutex in drm_setmaster_ioctl(), then overwrote fpriv->master in drm_new_set_master(). The old value of fpriv->master was subsequently freed before the mutex was unlocked.

To fix this, we lock the device's master mutex before retrieving the pointer from from fpriv->master. This patch passes the Syzbot reproducer test.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 5acc614ac47465fee6375a9af4740f618830762d to before 17dab9326ff263c62dab1dbac4492e2938a049e4Affected
  • 5acc614ac47465fee6375a9af4740f618830762d to before 7d233ba700ceb593905ea82b42dadb4ec8ef85e9Affected
  • 5acc614ac47465fee6375a9af4740f618830762d to before b246b4c70c1250e7814f409b243000f9c0bf79a3Affected
  • 5acc614ac47465fee6375a9af4740f618830762d to before 491d52e0078860b33b6c14f0a7ac74ca1b603bd6Affected
  • 5acc614ac47465fee6375a9af4740f618830762d to before f773f8cccac13c7e7bbd9182e7996c727742488eAffected
  • 5acc614ac47465fee6375a9af4740f618830762d to before b436acd1cf7fac0ba987abd22955d98025c80c2bAffected
LinuxLinux
  • 4.11Affected
  • before 4.11Not affected
  • 4.14.237 through 4.14.*Not affected
  • 4.19.195 through 4.19.*Not affected
  • 5.4.126 through 5.4.*Not affected
  • 5.10.44 through 5.10.*Not affected
  • 5.12.11 through 5.12.*Not affected
  • 5.13 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.