---
id: CVE-2025-38566
title: |-
  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 fr…
summary: |-
  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 fr…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-754
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 6.4, < 6.6.102'
  - 'linux_kernel >= 6.7, < 6.12.42'
  - 'linux_kernel >= 6.13, < 6.15.10'
  - 'linux_kernel >= 6.16, < 6.16.1'
  - linux_kernel = 6.17
patched:
  - linux_kernel 6.16.1
published: '2025-08-19'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T22:18:45.637'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-38566'
references:
  - url: 'https://git.kernel.org/stable/c/25bb3647d30a20486b5fe7cff2b0e503c16c9692'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/3b549da875414989f480b66835d514be80a0bd9c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/6b33c31cc788073bfbed9297e1f4486ed73d87da'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/b1df394621710b312f0393e3f240fdac0764f968'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/bee47cb026e762841f3faece47b51f985e215edb'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
  - cve.org
epss: 0.00611
epssPercentile: 0.49058
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-10-15T21:51:44.870495Z'
ingestedAt: '2026-10-15T22:48:25.513Z'
---

## Overview

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.

## Affected

- `linux_kernel >= 6.4, < 6.6.102`
- `linux_kernel >= 6.7, < 6.12.42`
- `linux_kernel >= 6.13, < 6.15.10`
- `linux_kernel >= 6.16, < 6.16.1`
- `linux_kernel = 6.17`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.16.1`
