Time-of-check Time-of-use (TOCTOU) Affecting kernel-default-livepatch package, versions <5.3.18-150200.24.194.1


Severity

Recommended
0.0
medium
0
10

Based on SUSE Linux Enterprise Server security rating.

Threat Intelligence

EPSS
0.04% (12th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-SLES152-KERNELDEFAULTLIVEPATCH-7363511
  • published25 Jun 2024
  • disclosed24 Jun 2024

Introduced: 24 Jun 2024

CVE-2021-47280  (opens in a new tab)
CWE-367  (opens in a new tab)
CWE-416  (opens in a new tab)

How to fix?

Upgrade SLES:15.2 kernel-default-livepatch to version 5.3.18-150200.24.194.1 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel-default-livepatch package and not the kernel-default-livepatch package as distributed by SLES. See How to fix? for SLES:15.2 relevant fixed versions and status.

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.

CVSS Scores

version 3.1