All vulnerabilities
CVE-2026-98775

Linux: nitro_enclaves: fix use-after-free on SLOT_ALLOC failure

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.17%Chance of exploitation activity in the next 30 days, higher than 5% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in8bde6f643ab6fe5e3e3f4c312f84ce327ecf39b2Also 466041d14f26dc2babd606a2e85dce08774112a6, 43f78b328f3907ca2f7424e15b7e45ffbf9fe21c and 1 moreCVE List
Published18 Oct 2026Updated 21 Oct 2026CVE List

What fixes it

  • 8bde6f643ab6fe5e3e3f4c312f84ce327ecf39b2LinuxCVE List
  • 466041d14f26dc2babd606a2e85dce08774112a6LinuxCVE List
  • 43f78b328f3907ca2f7424e15b7e45ffbf9fe21cLinuxCVE List
  • 9bc184a2eda8b773c88ecbff934001ad649b9cc1LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

nitro_enclaves: fix use-after-free on SLOT_ALLOC failure

When ne_create_vm_ioctl() fails the SLOT_ALLOC request after anon_inode_getfile() has succeeded, the error path calls fput(enclave_file) and then frees ne_enclave.

In normal userspace context, fput() defers the final __fput() via task_work. ne_enclave_release() therefore runs after ne_enclave has already been freed and dereferences ne_enclave->slot_uid, causing a use-after-free: KASAN: slab-use-after-free in ne_enclave_release.

The enclave has no slot allocated and is not yet linked into the enclaves list on this error path, so ne_enclave_release() is expected to return early when slot_uid is zero. However, reading slot_uid already accesses the freed object.

Clear enclave_file->private_data before fput() on the error path. ne_enclave_release() then returns immediately when private_data is NULL, leaving the ioctl error path as the sole owner of ne_enclave. This is safe because the file has not been fd_install()'d yet.

Tested on an AWS EC2 m5.2xlarge with CONFIG_KASAN=y. Without the patch, the reproducer triggers a KASAN slab-use-after-free on every SLOT_ALLOC failure. With the patch, no KASAN report is produced and the SLOT_ALLOC error is still returned. Normal enclave creation and teardown are unaffected.

Text from CVE List

Affected versions 12

  • Linuxaffected: 9c8eb50fe9e2bb8a2e725979e052fbf592b6b799 before 8bde6f643ab6fe5e3e3f4c312f84ce327ecf39b2CVE List
  • Linuxaffected: 9c8eb50fe9e2bb8a2e725979e052fbf592b6b799 before 466041d14f26dc2babd606a2e85dce08774112a6CVE List
  • Linuxaffected: 9c8eb50fe9e2bb8a2e725979e052fbf592b6b799 before f7fb6c2835ede1b8ad84cf7e78a528a9d0159b84CVE List
  • Linuxaffected: 9c8eb50fe9e2bb8a2e725979e052fbf592b6b799 before 43f78b328f3907ca2f7424e15b7e45ffbf9fe21cCVE List
  • Linuxaffected: 9c8eb50fe9e2bb8a2e725979e052fbf592b6b799 before 9bc184a2eda8b773c88ecbff934001ad649b9cc1CVE List
  • Linuxaffected: 5.10CVE List
  • Linuxunaffected: all versions before 5.10CVE List
  • Linuxunaffected: 6.6.160 through 6.6.*CVE List
  • Linuxunaffected: 6.12.113 through 6.12.*CVE List
  • Linuxunaffected: 6.18.56 through 6.18.*CVE List
  • Linuxunaffected: 7.2.10 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 5