---
id: CVE-2026-93106
title: |-
  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-…
summary: |-
  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-…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 62f17d9df6924cf805de5ae970470615c1c8d9f2 <
    b0f7343a002f9c8b8378011f60482c76f3216dfd
  - >-
    Linux >= 62f17d9df6924cf805de5ae970470615c1c8d9f2 <
    ed566979f99c5516cad45a76ae25e2a4928ffb67
  - >-
    Linux >= 62f17d9df6924cf805de5ae970470615c1c8d9f2 <
    ada2e5a44e99113e08ad9b7b71396c6c572204da
  - Linux 6.16
published: '2026-09-17'
updated: '2026-09-17'
sourceUpdated: '2026-09-17T17:18:04.953'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-93106'
references:
  - url: 'https://git.kernel.org/stable/c/ada2e5a44e99113e08ad9b7b71396c6c572204da'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/b0f7343a002f9c8b8378011f60482c76f3216dfd'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ed566979f99c5516cad45a76ae25e2a4928ffb67'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
ingestedAt: '2026-09-17T16:21:47.755Z'
epss: 0.00206
epssPercentile: 0.09478
---

## Overview

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.

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.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
