---
id: CVE-2026-98725
title: 'nvmet-auth: fix out-of-bounds write in nvmet_auth_challenge()'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  nvmet-auth: fix out-of-bounds write in nvmet_auth_challenge()

  nvmet_auth_challenge() receives its output buffer as a void pointer.
  sizeof(*d) therefore evaluates to on…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 <
    9d61131acd742cf97ee64e453383e41b46568513
  - >-
    Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 <
    7fd3c363eba4f2aceb4b3f31cd1cf65e0dcbaee4
  - >-
    Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 <
    8a9b4c0eef19c207663c1ee888257307c869ca86
  - >-
    Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 <
    fa6778e030bed9841ddcdf96bc7018da9ac03562
  - Linux 6.0
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:47:02.735Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98725'
references:
  - url: 'https://git.kernel.org/stable/c/9d61131acd742cf97ee64e453383e41b46568513'
  - url: 'https://git.kernel.org/stable/c/7fd3c363eba4f2aceb4b3f31cd1cf65e0dcbaee4'
  - url: 'https://git.kernel.org/stable/c/8a9b4c0eef19c207663c1ee888257307c869ca86'
  - url: 'https://git.kernel.org/stable/c/fa6778e030bed9841ddcdf96bc7018da9ac03562'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.508Z'
---

## Overview

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

nvmet-auth: fix out-of-bounds write in nvmet_auth_challenge()

nvmet_auth_challenge() receives its output buffer as a void pointer.
sizeof(*d) therefore evaluates to one with GCC and undercounts the fixed
challenge header by 15 bytes.  A short AUTH_RECEIVE buffer can pass the
check before the challenge is copied past the end of its allocation.

Use the typed challenge pointer when calculating the response size.

  BUG: KASAN: slab-out-of-bounds in nvmet_execute_auth_receive (drivers/nvme/target/fabrics-cmd-auth.c:442 drivers/nvme/target/fabrics-cmd-auth.c:569)
  Write of size 32 by task kworker/1:1H/64
  Workqueue: nvmet_tcp_wq nvmet_tcp_io_work
  Call Trace:
  nvmet_execute_auth_receive (drivers/nvme/target/fabrics-cmd-auth.c:442 drivers/nvme/target/fabrics-cmd-auth.c:569)
  nvmet_tcp_try_recv_pdu (drivers/nvme/target/tcp.c:1119 drivers/nvme/target/tcp.c:1243)
  nvmet_tcp_io_work (drivers/nvme/target/tcp.c:1350 drivers/nvme/target/tcp.c:1382 drivers/nvme/target/tcp.c:1445)
  process_one_work (kernel/workqueue.c:3322)
  worker_thread (kernel/workqueue.c:3405 kernel/workqueue.c:3486)
  kthread (kernel/kthread.c:436)
  ret_from_fork (arch/x86/kernel/process.c:158)
  ret_from_fork_asm (arch/x86/entry/entry_64.S:245)
  The buggy address is located 16 bytes inside of
   allocated 33-byte region [ffff888000554e80, ffff888000554ea1)
  Kernel panic - not syncing: KASAN: panic_on_warn set ...

## Affected

- `Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 < 9d61131acd742cf97ee64e453383e41b46568513`
- `Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 < 7fd3c363eba4f2aceb4b3f31cd1cf65e0dcbaee4`
- `Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 < 8a9b4c0eef19c207663c1ee888257307c869ca86`
- `Linux >= db1312dd95488b5e6ff362ff66fcf953a46b1821 < fa6778e030bed9841ddcdf96bc7018da9ac03562`
- `Linux 6.0`

## Remediation

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