CVE-2025-38566

sunrpc: fix handling of server side tls alerts

State
Published
Severity
9.8 Critical
Published
Aug 19, 2025
Updated
Oct 15, 2026
Reserved
Apr 16, 2025

Read the record on cve.org

Description

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

sunrpc: fix handling of server side tls alerts

Scott Mayhew discovered a security exploit in NFS over TLS in tls_alert_recv() due to its assumption it can read data from the msg iterator's kvec..

kTLS implementation splits TLS non-data record payload between the control message buffer (which includes the type such as TLS aler or TLS cipher change) and the rest of the payload (say TLS alert's level/description) which goes into the msg payload buffer.

This patch proposes to rework how control messages are setup and used by sock_recvmsg().

If no control message structure is setup, kTLS layer will read and process TLS data record types. As soon as it encounters a TLS control message, it would return an error. At that point, NFS can setup a kvec backed msg buffer and read in the control message such as a TLS alert. Msg iterator can advance the kvec pointer as a part of the copy process thus we need to revert the iterator before calling into the tls_alert_recv.

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 5e052dda121e2870dd87181783da4a95d7d2927b to before b1df394621710b312f0393e3f240fdac0764f968Affected
  • 5e052dda121e2870dd87181783da4a95d7d2927b to before 25bb3647d30a20486b5fe7cff2b0e503c16c9692Affected
  • 5e052dda121e2870dd87181783da4a95d7d2927b to before 3b549da875414989f480b66835d514be80a0bd9cAffected
  • 5e052dda121e2870dd87181783da4a95d7d2927b to before 6b33c31cc788073bfbed9297e1f4486ed73d87daAffected
  • 5e052dda121e2870dd87181783da4a95d7d2927b to before bee47cb026e762841f3faece47b51f985e215edbAffected
LinuxLinux
  • 6.4Affected
  • before 6.4Not affected
  • 6.6.102 through 6.6.*Not affected
  • 6.12.42 through 6.12.*Not affected
  • 6.15.10 through 6.15.*Not affected
  • 6.16.1 through 6.16.*Not affected
  • 6.17 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.