CVE-2024-38570 (GCVE-0-2024-38570)

Vulnerability from cvelistv5 – Published: 2024-06-19 13:35 – Updated: 2026-08-05 11:32
VLAI
Title
gfs2: Fix potential glock use-after-free on unmount
Summary
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.
SSVC
Exploitation: none Automatable: no Technical Impact: partial
CISA Coordinator (v2.0.3)
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: fb6791d100d1bba20b5cdbc4912e1f7086ec60f8 , < 0636b34b44589b142700ac137b5f69802cfe2e37 (git)
Affected: fb6791d100d1bba20b5cdbc4912e1f7086ec60f8 , < e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0 (git)
Affected: fb6791d100d1bba20b5cdbc4912e1f7086ec60f8 , < 501cd8fabf621d10bd4893e37f6ce6c20523c8ca (git)
Affected: fb6791d100d1bba20b5cdbc4912e1f7086ec60f8 , < d98779e687726d8f8860f1c54b5687eec5f63a73 (git)
Create a notification for this product.
Linux Linux Affected: 3.8
Unaffected: 0 , < 3.8 (semver)
Unaffected: 6.6.33 , ≤ 6.6.* (semver)
Unaffected: 6.8.12 , ≤ 6.8.* (semver)
Unaffected: 6.9.3 , ≤ 6.9.* (semver)
Unaffected: 6.10 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "providerMetadata": {
          "dateUpdated": "2024-08-02T04:12:25.837Z",
          "orgId": "af854a3a-2127-422b-91ae-364da2661108",
          "shortName": "CVE"
        },
        "references": [
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca"
          },
          {
            "tags": [
              "x_transferred"
            ],
            "url": "https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73"
          }
        ],
        "title": "CVE Program Container"
      },
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2024-38570",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2024-09-10T17:14:22.126008Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2024-09-11T17:34:56.284Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "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"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "0636b34b44589b142700ac137b5f69802cfe2e37",
              "status": "affected",
              "version": "fb6791d100d1bba20b5cdbc4912e1f7086ec60f8",
              "versionType": "git"
            },
            {
              "lessThan": "e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0",
              "status": "affected",
              "version": "fb6791d100d1bba20b5cdbc4912e1f7086ec60f8",
              "versionType": "git"
            },
            {
              "lessThan": "501cd8fabf621d10bd4893e37f6ce6c20523c8ca",
              "status": "affected",
              "version": "fb6791d100d1bba20b5cdbc4912e1f7086ec60f8",
              "versionType": "git"
            },
            {
              "lessThan": "d98779e687726d8f8860f1c54b5687eec5f63a73",
              "status": "affected",
              "version": "fb6791d100d1bba20b5cdbc4912e1f7086ec60f8",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "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"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "3.8"
            },
            {
              "lessThan": "3.8",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.33",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.8.*",
              "status": "unaffected",
              "version": "6.8.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.9.*",
              "status": "unaffected",
              "version": "6.9.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "6.10",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.33",
                  "versionStartIncluding": "3.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.8.12",
                  "versionStartIncluding": "3.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.9.3",
                  "versionStartIncluding": "3.8",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.10",
                  "versionStartIncluding": "3.8",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ngfs2: Fix potential glock use-after-free on unmount\n\nWhen a DLM lockspace is released and there ares still locks in that\nlockspace, DLM will unlock those locks automatically.  Commit\nfb6791d100d1b started exploiting this behavior to speed up filesystem\nunmount: gfs2 would simply free glocks it didn\u0027t want to unlock and then\nrelease the lockspace.  This didn\u0027t take the bast callbacks for\nasynchronous lock contention notifications into account, which remain\nactive until until a lock is unlocked or its lockspace is released.\n\nTo prevent those callbacks from accessing deallocated objects, put the\nglocks that should not be unlocked on the sd_dead_glocks list, release\nthe lockspace, and only then free those glocks.\n\nAs an additional measure, ignore unexpected ast and bast callbacks if\nthe receiving glock is dead."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:N - The use-after-free is driven by a DLM protocol message from a remote cluster node (`receive_bast`/`receive_request` over the DLM TCP/SCTP interconnect), which dispatches `gdlm_bast()` on the already-freed glock. The DLM interconnect is routable IP, not restricted to a single L2 segment.\nAC:L - The attacker fully controls the contention side and can hold conflicting locks on many resources continuously so that a bast is guaranteed to land in the unmount window, which is wide (it spans `truncate_inode_pages_final()` and `gfs2_delete_debugfs_file()`); unmounts of clustered GFS2 volumes are routine and repeatable events in pacemaker-managed clusters, so the race is reliably winnable.\nPR:N - No credentials or privileges on the victim node are needed \u2014 the DLM peer\u0027s lock request is not authenticated per-user by the target, and an ordinary unprivileged user on any cluster node generates the required contention with plain file access on the shared filesystem.\nUI:N - No victim action is solicited by the attacker; the unmount is a routine cluster/administrative operation and the callback fires automatically from the DLM workqueue.\nS:U - The freed object and the corrupted state are both kernel memory in the same security authority; no VM, IOMMU, or sandbox boundary is crossed.\nC:H - A use-after-free on a `gfs2_glock` slab object allows the freed allocation to be reclaimed by attacker-influenced data and then read/leaked through glock state and the subsequent `dump_glock_func` path, giving arbitrary kernel-memory disclosure potential.\nI:H - `gfs2_glock_cb()` writes into the freed object (lockref count, `gl_flags`, `gl_demote_state`) and then queues `\u0026gl-\u003egl_work`, so a reallocated object supplies the `delayed_work` timer/work function pointer \u2014 a control-flow hijack and arbitrary-write primitive.\nA:H - Even unexploited, the UAF corrupts a spinlock and refcount in freed memory and reaches `BUG_ON`/`BUG()` in `gdlm_ast()`, causing kernel oops or panic on the unmounting node."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T11:32:51.482Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37"
        },
        {
          "url": "https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0"
        },
        {
          "url": "https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca"
        },
        {
          "url": "https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73"
        }
      ],
      "title": "gfs2: Fix potential glock use-after-free on unmount",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2024-38570",
    "datePublished": "2024-06-19T13:35:36.274Z",
    "dateReserved": "2024-06-18T19:36:34.923Z",
    "dateUpdated": "2026-08-05T11:32:51.482Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2024-38570",
      "date": "2026-08-10",
      "epss": "0.00682",
      "percentile": "0.49062"
    },
    "fkie_nvd": {
      "configurations": "[{\"nodes\": [{\"operator\": \"OR\", \"negate\": false, \"cpeMatch\": [{\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"3.8\", \"versionEndExcluding\": \"6.6.33\", \"matchCriteriaId\": \"CFD35FD5-8F34-4C7B-803E-84957DD73AFF\"}, {\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"6.7\", \"versionEndExcluding\": \"6.8.12\", \"matchCriteriaId\": \"80550309-67AB-4FD1-AC07-3DED5C4F01B2\"}, {\"vulnerable\": true, \"criteria\": \"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\", \"versionStartIncluding\": \"6.9\", \"versionEndExcluding\": \"6.9.3\", \"matchCriteriaId\": \"E07124C1-19E8-4D21-828D-9932A01D3011\"}]}]}]",
      "descriptions": "[{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\ngfs2: Fix potential glock use-after-free on unmount\\n\\nWhen a DLM lockspace is released and there ares still locks in that\\nlockspace, DLM will unlock those locks automatically.  Commit\\nfb6791d100d1b started exploiting this behavior to speed up filesystem\\nunmount: gfs2 would simply free glocks it didn\u0027t want to unlock and then\\nrelease the lockspace.  This didn\u0027t take the bast callbacks for\\nasynchronous lock contention notifications into account, which remain\\nactive until until a lock is unlocked or its lockspace is released.\\n\\nTo prevent those callbacks from accessing deallocated objects, put the\\nglocks that should not be unlocked on the sd_dead_glocks list, release\\nthe lockspace, and only then free those glocks.\\n\\nAs an additional measure, ignore unexpected ast and bast callbacks if\\nthe receiving glock is dead.\"}, {\"lang\": \"es\", \"value\": \"En el kernel de Linux, se resolvi\\u00f3 la siguiente vulnerabilidad: gfs2: soluciona el posible use-after-free de glock al desmontar Cuando se libera un espacio de bloqueo de DLM y todav\\u00eda hay bloqueos en ese espacio de bloqueo, DLM desbloquear\\u00e1 esos bloqueos autom\\u00e1ticamente. El commit fb6791d100d1b comenz\\u00f3 a explotar este comportamiento para acelerar el desmontaje del sistema de archivos: gfs2 simplemente liberar\\u00eda las glocks que no quer\\u00eda desbloquear y luego liberar\\u00eda el espacio de bloqueo. Esto no tuvo en cuenta las devoluciones de llamada de bast para notificaciones de contenci\\u00f3n de bloqueo asincr\\u00f3nicas, que permanecen activas hasta que se desbloquea un bloqueo o se libera su espacio de bloqueo. Para evitar que esas devoluciones de llamada accedan a objetos desasignados, coloque las glocks que no deben desbloquearse en la lista sd_dead_glocks, libere el espacio de bloqueo y solo entonces libere esas glocks. Como medida adicional, ignore las devoluciones de llamada inesperadas de ast y bast si la glock receptora est\\u00e1 muerta.\"}]",
      "id": "CVE-2024-38570",
      "lastModified": "2024-11-21T09:26:22.457",
      "metrics": "{\"cvssMetricV31\": [{\"source\": \"nvd@nist.gov\", \"type\": \"Primary\", \"cvssData\": {\"version\": \"3.1\", \"vectorString\": \"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\", \"baseScore\": 7.8, \"baseSeverity\": \"HIGH\", \"attackVector\": \"LOCAL\", \"attackComplexity\": \"LOW\", \"privilegesRequired\": \"LOW\", \"userInteraction\": \"NONE\", \"scope\": \"UNCHANGED\", \"confidentialityImpact\": \"HIGH\", \"integrityImpact\": \"HIGH\", \"availabilityImpact\": \"HIGH\"}, \"exploitabilityScore\": 1.8, \"impactScore\": 5.9}]}",
      "published": "2024-06-19T14:15:17.153",
      "references": "[{\"url\": \"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\", \"source\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}, {\"url\": \"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\", \"source\": \"af854a3a-2127-422b-91ae-364da2661108\", \"tags\": [\"Patch\"]}]",
      "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "vulnStatus": "Modified",
      "weaknesses": "[{\"source\": \"nvd@nist.gov\", \"type\": \"Primary\", \"description\": [{\"lang\": \"en\", \"value\": \"CWE-416\"}]}]"
    },
    "microsoft_vex": {
      "current_release_date": "2026-02-19T01:02:56.000Z",
      "cve": "CVE-2024-38570",
      "id": "msrc_CVE-2024-38570",
      "initial_release_date": "2024-06-02T07:00:00.000Z",
      "product_status:fixed": "2",
      "product_status:known_affected": "2",
      "product_status:known_not_affected": "2",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "gfs2: Fix potential glock use-after-free on unmount",
      "url": "https://msrc.microsoft.com/csaf/vex/2024/msrc_cve-2024-38570.json",
      "version": "2"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2024-38570\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2024-06-19T14:15:17.153\",\"lastModified\":\"2026-08-04T11:18:45.480\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ngfs2: Fix potential glock use-after-free on unmount\\n\\nWhen a DLM lockspace is released and there ares still locks in that\\nlockspace, DLM will unlock those locks automatically.  Commit\\nfb6791d100d1b started exploiting this behavior to speed up filesystem\\nunmount: gfs2 would simply free glocks it didn\u0027t want to unlock and then\\nrelease the lockspace.  This didn\u0027t take the bast callbacks for\\nasynchronous lock contention notifications into account, which remain\\nactive until until a lock is unlocked or its lockspace is released.\\n\\nTo prevent those callbacks from accessing deallocated objects, put the\\nglocks that should not be unlocked on the sd_dead_glocks list, release\\nthe lockspace, and only then free those glocks.\\n\\nAs an additional measure, ignore unexpected ast and bast callbacks if\\nthe receiving glock is dead.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, se resolvi\u00f3 la siguiente vulnerabilidad: gfs2: soluciona el posible use-after-free de glock al desmontar Cuando se libera un espacio de bloqueo de DLM y todav\u00eda hay bloqueos en ese espacio de bloqueo, DLM desbloquear\u00e1 esos bloqueos autom\u00e1ticamente. El commit fb6791d100d1b comenz\u00f3 a explotar este comportamiento para acelerar el desmontaje del sistema de archivos: gfs2 simplemente liberar\u00eda las glocks que no quer\u00eda desbloquear y luego liberar\u00eda el espacio de bloqueo. Esto no tuvo en cuenta las devoluciones de llamada de bast para notificaciones de contenci\u00f3n de bloqueo asincr\u00f3nicas, que permanecen activas hasta que se desbloquea un bloqueo o se libera su espacio de bloqueo. Para evitar que esas devoluciones de llamada accedan a objetos desasignados, coloque las glocks que no deben desbloquearse en la lista sd_dead_glocks, libere el espacio de bloqueo y solo entonces libere esas glocks. Como medida adicional, ignore las devoluciones de llamada inesperadas de ast y bast si la glock receptora est\u00e1 muerta.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"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\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\",\"lessThan\":\"0636b34b44589b142700ac137b5f69802cfe2e37\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\",\"lessThan\":\"e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\",\"lessThan\":\"501cd8fabf621d10bd4893e37f6ce6c20523c8ca\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\",\"lessThan\":\"d98779e687726d8f8860f1c54b5687eec5f63a73\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"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\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"3.8\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"3.8\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.33\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.8.12\",\"lessThanOrEqual\":\"6.8.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.9.3\",\"lessThanOrEqual\":\"6.9.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.10\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":9.8,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":5.9},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H\",\"baseScore\":7.8,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":5.9}],\"ssvcV203\":[{\"source\":\"134c704f-9b21-4f2e-91b3-4a467353bcc0\",\"ssvcData\":{\"timestamp\":\"2024-09-10T17:14:22.126008Z\",\"id\":\"CVE-2024-38570\",\"options\":[{\"exploitation\":\"none\"},{\"automatable\":\"no\"},{\"technicalImpact\":\"partial\"}],\"role\":\"CISA Coordinator\",\"version\":\"2.0.3\"}}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-416\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"3.8\",\"versionEndExcluding\":\"6.6.33\",\"matchCriteriaId\":\"CFD35FD5-8F34-4C7B-803E-84957DD73AFF\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.7\",\"versionEndExcluding\":\"6.8.12\",\"matchCriteriaId\":\"80550309-67AB-4FD1-AC07-3DED5C4F01B2\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.9\",\"versionEndExcluding\":\"6.9.3\",\"matchCriteriaId\":\"E07124C1-19E8-4D21-828D-9932A01D3011\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-04T18:53:35+00:00",
      "cve": "CVE-2024-38570",
      "id": "CVE-2024-38570",
      "initial_release_date": "2024-06-19T00:00:00+00:00",
      "product_status:fixed": "926",
      "product_status:known_affected": "64",
      "product_status:known_not_affected": "4",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: gfs2: Fix potential glock use-after-free on unmount",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2024/cve-2024-38570.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-05T00:57:10Z",
      "cve": "CVE-2024-38570",
      "id": "CVE-2024-38570",
      "initial_release_date": "2024-06-22T03:35:10Z",
      "product_status:known_affected": "373",
      "product_status:known_not_affected": "214",
      "product_status:recommended": "705",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2024-38570",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2024-38570.json",
      "version": "82"
    },
    "vulnrichment": {
      "containers": "{\"adp\": [{\"title\": \"CVE Program Container\", \"references\": [{\"url\": \"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\", \"tags\": [\"x_transferred\"]}, {\"url\": \"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\", \"tags\": [\"x_transferred\"]}], \"providerMetadata\": {\"orgId\": \"af854a3a-2127-422b-91ae-364da2661108\", \"shortName\": \"CVE\", \"dateUpdated\": \"2024-08-02T04:12:25.837Z\"}}, {\"title\": \"CISA ADP Vulnrichment\", \"metrics\": [{\"other\": {\"type\": \"ssvc\", \"content\": {\"id\": \"CVE-2024-38570\", \"role\": \"CISA Coordinator\", \"options\": [{\"Exploitation\": \"none\"}, {\"Automatable\": \"no\"}, {\"Technical Impact\": \"partial\"}], \"version\": \"2.0.3\", \"timestamp\": \"2024-09-10T17:14:22.126008Z\"}}}], \"providerMetadata\": {\"orgId\": \"134c704f-9b21-4f2e-91b3-4a467353bcc0\", \"shortName\": \"CISA-ADP\", \"dateUpdated\": \"2024-09-11T12:42:26.984Z\"}}], \"cna\": {\"title\": \"gfs2: Fix potential glock use-after-free on unmount\", \"affected\": [{\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\", \"lessThan\": \"0636b34b44589b142700ac137b5f69802cfe2e37\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\", \"lessThan\": \"e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\", \"lessThan\": \"501cd8fabf621d10bd4893e37f6ce6c20523c8ca\", \"versionType\": \"git\"}, {\"status\": \"affected\", \"version\": \"fb6791d100d1bba20b5cdbc4912e1f7086ec60f8\", \"lessThan\": \"d98779e687726d8f8860f1c54b5687eec5f63a73\", \"versionType\": \"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\"], \"defaultStatus\": \"unaffected\"}, {\"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\", \"vendor\": \"Linux\", \"product\": \"Linux\", \"versions\": [{\"status\": \"affected\", \"version\": \"3.8\"}, {\"status\": \"unaffected\", \"version\": \"0\", \"lessThan\": \"3.8\", \"versionType\": \"semver\"}, {\"status\": \"unaffected\", \"version\": \"6.6.33\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.6.*\"}, {\"status\": \"unaffected\", \"version\": \"6.8.12\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.8.*\"}, {\"status\": \"unaffected\", \"version\": \"6.9.3\", \"versionType\": \"semver\", \"lessThanOrEqual\": \"6.9.*\"}, {\"status\": \"unaffected\", \"version\": \"6.10\", \"versionType\": \"original_commit_for_fix\", \"lessThanOrEqual\": \"*\"}], \"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\"], \"defaultStatus\": \"affected\"}], \"references\": [{\"url\": \"https://git.kernel.org/stable/c/0636b34b44589b142700ac137b5f69802cfe2e37\"}, {\"url\": \"https://git.kernel.org/stable/c/e42e8a24d7f02d28763d16ca7ec5fc6d1f142af0\"}, {\"url\": \"https://git.kernel.org/stable/c/501cd8fabf621d10bd4893e37f6ce6c20523c8ca\"}, {\"url\": \"https://git.kernel.org/stable/c/d98779e687726d8f8860f1c54b5687eec5f63a73\"}], \"x_generator\": {\"engine\": \"bippy-5f407fcff5a0\"}, \"descriptions\": [{\"lang\": \"en\", \"value\": \"In the Linux kernel, the following vulnerability has been resolved:\\n\\ngfs2: Fix potential glock use-after-free on unmount\\n\\nWhen a DLM lockspace is released and there ares still locks in that\\nlockspace, DLM will unlock those locks automatically.  Commit\\nfb6791d100d1b started exploiting this behavior to speed up filesystem\\nunmount: gfs2 would simply free glocks it didn\u0027t want to unlock and then\\nrelease the lockspace.  This didn\u0027t take the bast callbacks for\\nasynchronous lock contention notifications into account, which remain\\nactive until until a lock is unlocked or its lockspace is released.\\n\\nTo prevent those callbacks from accessing deallocated objects, put the\\nglocks that should not be unlocked on the sd_dead_glocks list, release\\nthe lockspace, and only then free those glocks.\\n\\nAs an additional measure, ignore unexpected ast and bast callbacks if\\nthe receiving glock is dead.\"}], \"providerMetadata\": {\"orgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"shortName\": \"Linux\", \"dateUpdated\": \"2024-12-19T09:04:45.923Z\"}}}",
      "cveMetadata": "{\"cveId\": \"CVE-2024-38570\", \"state\": \"PUBLISHED\", \"dateUpdated\": \"2024-12-19T09:04:45.923Z\", \"dateReserved\": \"2024-06-18T19:36:34.923Z\", \"assignerOrgId\": \"416baaa9-dc9f-4396-8d5f-8c081fb06d67\", \"datePublished\": \"2024-06-19T13:35:36.274Z\", \"assignerShortName\": \"Linux\"}",
      "dataType": "CVE_RECORD",
      "dataVersion": "5.1"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…