Skip to main content
← All vulnerabilities
CVE-2026-90104

NFSv4.1: zero referring call lists before decoding

Published
Last modified
published
Not listed in CISA KEV
Unclear
Fix
Fixed in 6.6.160, 6.12.114, 6.18.57, 7.2.6
None on Exploit-DB, Metasploit or GitHub

Summary

The vulnerability affects the Linux kernel's NFSv4.1 client callback handling, specifically the code that processes referring call lists in CB_SEQUENCE requests. Because uninitialized pointers can be passed to kfree(), it may cause memory corruption or a kernel crash.

Summarized by anthropic/claude-haiku-5.5. Verify details against the original sources.

Read the original description

In the Linux kernel, the following vulnerability has been resolved: NFSv4.1: zero referring call lists before decoding decode_cb_sequence_args() allocates csa_rclists with kmalloc_objs(), so each referring_call_list starts uninitialized. decode_rc_list() assigns rcl_refcalls only when rcl_nrefcalls is nonzero. A valid list with zero referring calls therefore leaves the pointer uninitialized, and nfs4_callback_sequence() later passes stale slab contents to kfree(). Allocate csa_rclists with kzalloc_objs() so every rcl_refcalls member is NULL from the beginning, including valid empty referring call lists.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 4aece6a19cf7f474f15eb861ba74db4479884ce3 · fixed in ed54460caf5b5aa65ec03c9a6032d831f39f19f5; From 4aece6a19cf7f474f15eb861ba74db4479884ce3 · fixed in 7510a5b9edec9d9536a4e69f10edfb2592e6cf7f; From 4aece6a19cf7f474f15eb861ba74db4479884ce3 · fixed in f4d23937e1c41995c2f54af26c89b5e48a41c299; From 4aece6a19cf7f474f15eb861ba74db4479884ce3 · fixed in f31f3c042e024aef437cda42f0424ae8d4594b6c; From 4aece6a19cf7f474f15eb861ba74db4479884ce3 · fixed in 8fa4804fe62ca4155a2d8fc2789d630376cbf2fc

  • Linux Linux

    2.6.31

  • KernelLinux

    From 2.6.31 · fixed in 6.6.160; From 6.7.0 · fixed in 6.12.114; From 6.13.0 · fixed in 6.18.57; From 6.19.0 · fixed in 7.2.6

References 5

git.kernel.org

FAQ

Questions about CVE-2026-90104

What does this mean?

The NFSv4.1 client code handles a callback request that carries a referring call list with zero entries. The decoder never sets that list's pointer, so later code reads leftover slab memory and passes it to kfree(), which is an invalid free of uninitialized memory.Source: git.kernel.org

Am I affected, and how do I check?

The facts list Linux kernel builds from the commit introducing the bug (4aece6a19cf7f474f15eb861ba74db4479884ce3) up to the fixed versions, covering stable branches 6.6.160 and earlier fixes in 6.12.x, 6.18.x and 7.2.x. To check a kernel, run uname -r and compare it with these ranges; the trigger needs NFSv4.1 callbacks with a CB_SEQUENCE referring call list containing zero referring calls.Source: git.kernel.org

What should I do about it?

Update to a Linux kernel release that includes the fix for the affected branch: 6.6.160 or later, 6.12.114 or later, 6.18.57 or later, or 7.2.6 or later, depending on the version in use.Source: git.kernel.org

Is it being exploited?

It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data