« Volver al listado

CVE-2026-93106

Estado: RecibidaSin puntuar—

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

crash_dump: release keyring reference at the correct time

restore_dm_crypt_keys_to_thread_keyring() gets a reference to the user keyring before restoring the saved dm-crypt keys.

The same keyring reference is then passed to add_key_to_keyring() for each saved key, but add_key_to_keyring() drops that reference on every call. This is only balanced when exactly one key is restored. With multiple keys, the keyring reference is dropped too many times and may trigger a refcount underflow or use-after-free.

When more than five keys are restored, a refcount underflow/use-after-free warning can be triggered.

Leer descripción completaMostrar menos

The early error paths after lookup_user_key() also return without dropping the keyring reference.

Keep ownership of the keyring reference in restore_dm_crypt_keys_to_thread_keyring(), drop it once on all exit paths, and make add_key_to_keyring() only use the reference without consuming it.

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-93106",
  "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": "62f17d9df6924cf805de5ae970470615c1c8d9f2",
              "lessThan": "b0f7343a002f9c8b8378011f60482c76f3216dfd",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "62f17d9df6924cf805de5ae970470615c1c8d9f2",
              "lessThan": "ed566979f99c5516cad45a76ae25e2a4928ffb67",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "62f17d9df6924cf805de5ae970470615c1c8d9f2",
              "lessThan": "ada2e5a44e99113e08ad9b7b71396c6c572204da",
              "versionType": "git"
            }
          ],
          "programFiles": [
            "kernel/crash_dump_dm_crypt.c"
          ],
          "defaultStatus": "unaffected"
        },
        {
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "product": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.16"
            },
            {
              "status": "unaffected",
              "version": "0",
              "lessThan": "6.16",
              "versionType": "semver"
            },
            {
              "status": "unaffected",
              "version": "6.18.52",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "status": "unaffected",
              "version": "7.2.6",
              "versionType": "semver",
              "lessThanOrEqual": "7.2.*"
            },
            {
              "status": "unaffected",
              "version": "7.3-rc1",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ],
          "programFiles": [
            "kernel/crash_dump_dm_crypt.c"
          ],
          "defaultStatus": "affected"
        }
      ]
    }
  ],
  "published": "2026-09-17T17:18:04.953",
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/ada2e5a44e99113e08ad9b7b71396c6c572204da",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/b0f7343a002f9c8b8378011f60482c76f3216dfd",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/ed566979f99c5516cad45a76ae25e2a4928ffb67",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ],
  "vulnStatus": "Received",
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrash_dump: release keyring reference at the correct time\n\nrestore_dm_crypt_keys_to_thread_keyring() gets a reference to the user\nkeyring before restoring the saved dm-crypt keys.\n\nThe same keyring reference is then passed to add_key_to_keyring() for each\nsaved key, but add_key_to_keyring() drops that reference on every call.\nThis is only balanced when exactly one key is restored. With multiple\nkeys, the keyring reference is dropped too many times and may trigger a\nrefcount underflow or use-after-free.\n\nWhen more than five keys are restored, a refcount underflow/use-after-free\nwarning can be triggered.\n\nThe early error paths after lookup_user_key() also return without dropping\nthe keyring reference.\n\nKeep ownership of the keyring reference in\nrestore_dm_crypt_keys_to_thread_keyring(), drop it once on all exit paths,\nand make add_key_to_keyring() only use the reference without consuming it."
    }
  ],
  "lastModified": "2026-09-17T17:18:04.953",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}