Lucene search

K
cve416baaa9-dc9f-4396-8d5f-8c081fb06d67CVE-2024-38570
HistoryJun 19, 2024 - 2:15 p.m.

CVE-2024-38570

2024-06-1914:15:17
416baaa9-dc9f-4396-8d5f-8c081fb06d67
web.nvd.nist.gov
22
linux
kernel
gfs2
vulnerability
fixed

6.5 Medium

AI Score

Confidence

High

0.0004 Low

EPSS

Percentile

15.7%

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

gfs2: Fix potential glock use-after-free on unmount

When a DLM lockspace is released and there ares still locks in that
lockspace, DLM will unlock those locks automatically. Commit
fb6791d100d1b started exploiting this behavior to speed up filesystem
unmount: gfs2 would simply free glocks it didn’t want to unlock and then
release the lockspace. This didn’t take the bast callbacks for
asynchronous lock contention notifications into account, which remain
active until until a lock is unlocked or its lockspace is released.

To prevent those callbacks from accessing deallocated objects, put the
glocks that should not be unlocked on the sd_dead_glocks list, release
the lockspace, and only then free those glocks.

As an additional measure, ignore unexpected ast and bast callbacks if
the receiving glock is dead.

Affected configurations

Vulners
Node
linuxlinux_kernelRange3.86.6.33
OR
linuxlinux_kernelRange6.7.06.8.12
OR
linuxlinux_kernelRange6.9.06.9.3
OR
linuxlinux_kernelRange6.10.06.10-rc1

CNA Affected

[
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "unaffected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "fs/gfs2/glock.c",
      "fs/gfs2/glock.h",
      "fs/gfs2/incore.h",
      "fs/gfs2/lock_dlm.c",
      "fs/gfs2/ops_fstype.c",
      "fs/gfs2/super.c"
    ],
    "versions": [
      {
        "version": "fb6791d100d1",
        "lessThan": "0636b34b4458",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "fb6791d100d1",
        "lessThan": "e42e8a24d7f0",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "fb6791d100d1",
        "lessThan": "501cd8fabf62",
        "status": "affected",
        "versionType": "git"
      },
      {
        "version": "fb6791d100d1",
        "lessThan": "d98779e68772",
        "status": "affected",
        "versionType": "git"
      }
    ]
  },
  {
    "product": "Linux",
    "vendor": "Linux",
    "defaultStatus": "affected",
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "programFiles": [
      "fs/gfs2/glock.c",
      "fs/gfs2/glock.h",
      "fs/gfs2/incore.h",
      "fs/gfs2/lock_dlm.c",
      "fs/gfs2/ops_fstype.c",
      "fs/gfs2/super.c"
    ],
    "versions": [
      {
        "version": "3.8",
        "status": "affected"
      },
      {
        "version": "0",
        "lessThan": "3.8",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.6.33",
        "lessThanOrEqual": "6.6.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.8.12",
        "lessThanOrEqual": "6.8.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.9.3",
        "lessThanOrEqual": "6.9.*",
        "status": "unaffected",
        "versionType": "custom"
      },
      {
        "version": "6.10-rc1",
        "lessThanOrEqual": "*",
        "status": "unaffected",
        "versionType": "original_commit_for_fix"
      }
    ]
  }
]

6.5 Medium

AI Score

Confidence

High

0.0004 Low

EPSS

Percentile

15.7%