« Volver al listado

CVE-2026-98253

Estado: RecibidaSin puntuar—

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

RDMA/ucma: Serialize join and leave on copy_to_user failure

rdma_join_multicast() queues RoCE work that later reads the ucma_multicast through event->param.ud.private_data, then list_add()s the CMA multicast at the head of id_priv->mc_list. rdma_leave_multicast() matches only by sockaddr and destroys the first hit.

ucma_process_join() used to drop ctx->mutex after a successful join and retake it only if copy_to_user() failed. Two concurrent JOIN_MCAST calls with the same address can therefore insert a second CMA entry before the first thread's leave. leave then cancels the newer work and the older worker still dereferences the ucma_multicast that the first thread frees.

Leer descripción completaMostrar menos

Keep ctx->mutex held from rdma_join_multicast() through copy_to_user() and, on -EFAULT, through rdma_leave_multicast() so leave cannot miss this join. Do not leave if join itself failed: that path never published this address on mc_list, and a leave-by-addr would destroy an earlier successful join.

CVSS

NVD no ha asignado puntuación CVSS a esta CVE (habitual desde el cambio de política de abril de 2026).

Probabilidad de explotación (EPSS)

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

Tecnologías afectadas (1)

⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.

Referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-98253",
  "cveTags": [],
  "metrics": {},
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "60d613b39e8d0c9f3b526e9c96445422b4562d76",
              "lessThan": "29b9ed83d8bfab5c6e11fcbf1aa836aa4ae26cb9",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "52172e11bd074ccaded21740ffeb67123f01dd00",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "01e29d0d78a8f66f221625720a04939eef5ec1f6",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "ae805d204cf1f15b87d1bf3529b4c649f3519420",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "43c4e24bd10370fc976f6220518049ce71419399",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "01cbdb724c584d7772fd25af2e4dfdf8527ce0d5",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "83610ee5e498fa5bfcb80031d2b959baea276bf6",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "fe454dc31e84f8c14cb8942fcb61666c9f40745b",
              "lessThan": "662ade4de9ff5eceb0820a9f8e9fac70ba6a815b",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "a3262b3884dd67b4c5632ce7cdf9cff9d1a575d4",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "5.10.20",
              "lessThan": "5.10.271",
              "versionType": "semver"
            },
            {
              "status": "affected",
              "version": "5.11.3",
              "lessThan": "5.12",
              "versionType": "semver"
            }
          ],
          "programFiles": [
            "drivers/infiniband/core/ucma.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.12"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "5.12",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "5.10.271",
              "versionType": "semver",
              "lessThanOrEqual": "5.10.*"
            },
            {
              "status": "unaffected",
              "version": "5.15.222",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "status": "unaffected",
              "version": "6.1.189",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "status": "unaffected",
              "version": "6.6.158",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "status": "unaffected",
              "version": "6.12.112",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "status": "unaffected",
              "version": "6.18.54",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.8",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc4",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "drivers/infiniband/core/ucma.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-10-06T09:18:13.887",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/01cbdb724c584d7772fd25af2e4dfdf8527ce0d5",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/01e29d0d78a8f66f221625720a04939eef5ec1f6",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/29b9ed83d8bfab5c6e11fcbf1aa836aa4ae26cb9",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/43c4e24bd10370fc976f6220518049ce71419399",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/52172e11bd074ccaded21740ffeb67123f01dd00",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/662ade4de9ff5eceb0820a9f8e9fac70ba6a815b",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/83610ee5e498fa5bfcb80031d2b959baea276bf6",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ae805d204cf1f15b87d1bf3529b4c649f3519420",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRDMA/ucma: Serialize join and leave on copy_to_user failure\n\nrdma_join_multicast() queues RoCE work that later reads the ucma_multicast\nthrough event->param.ud.private_data, then list_add()s the CMA multicast\nat the head of id_priv->mc_list. rdma_leave_multicast() matches only by\nsockaddr and destroys the first hit.\n\nucma_process_join() used to drop ctx->mutex after a successful join and\nretake it only if copy_to_user() failed. Two concurrent JOIN_MCAST calls\nwith the same address can therefore insert a second CMA entry before the\nfirst thread's leave. leave then cancels the newer work and the older\nworker still dereferences the ucma_multicast that the first thread frees.\n\nKeep ctx->mutex held from rdma_join_multicast() through copy_to_user() and,\non -EFAULT, through rdma_leave_multicast() so leave cannot miss this join.\nDo not leave if join itself failed: that path never published this address\non mc_list, and a leave-by-addr would destroy an earlier successful join."
    }
  ],
  "lastModified": "2026-10-06T09:18:13.887",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}