CVE-2025-39686

In the Linux kernel, the following vulnerability has been resolved: comedi: Make insn_rw_emulate_bits() do insn->n samples The `insn_rw_emulate_bits()` function is used as a default handler for `INSN_READ` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_READ`. Similarly, it is used as a default handler for `INSN_WRITE` instructions for subdevices that have a handler for `INSN_BITS` but not for `INSN_WRITE`. It works by emulating the `INSN_READ` or `INSN_WRITE` instruction handling with a constructed `INSN_BITS` instruction. However, `INSN_READ` and `INSN_WRITE` instructions are supposed to be able read or write multiple samples, indicated by the `insn->n` value, but `insn_rw_emulate_bits()` currently only handles a single sample. For `INSN_READ`, the comedi core will copy `insn->n` samples back to user-space. (That triggered KASAN kernel-infoleak errors when `insn->n` was greater than 1, but that is being fixed more generally elsewhere in the comedi core.) Make `insn_rw_emulate_bits()` either handle `insn->n` samples, or return an error, to conform to the general expectation for `INSN_READ` and `INSN_WRITE` handlers.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.17:rc2:*:*:*:*:*:*

Configuration 2 (hide)

cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*

History

19 Oct 2026, 21:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: comedi: Hacer que 'insn_rw_emulate_bits()' procese 'insn->n' muestras La función 'insn_rw_emulate_bits()' se utiliza como gestor predeterminado para instrucciones 'INSN_READ' para subdispositivos que tienen un gestor para 'INSN_BITS' pero no para 'INSN_READ'. De manera similar, se utiliza como gestor predeterminado para instrucciones 'INSN_WRITE' para subdispositivos que tienen un gestor para 'INSN_BITS' pero no para 'INSN_WRITE'. Funciona emulando el manejo de instrucciones 'INSN_READ' o 'INSN_WRITE' con una instrucción 'INSN_BITS' construida. Sin embargo, las instrucciones 'INSN_READ' e 'INSN_WRITE' deberían poder leer o escribir múltiples muestras, indicado por el valor 'insn->n', pero 'insn_rw_emulate_bits()' actualmente solo maneja una única muestra. Para 'INSN_READ', el núcleo de comedi copiará 'insn->n' muestras de vuelta al espacio de usuario. (Eso desencadenó errores de fuga de información del kernel de KASAN cuando 'insn->n' era mayor que 1, pero eso se está corrigiendo de manera más general en otra parte del núcleo de comedi.) Hacer que 'insn_rw_emulate_bits()' maneje 'insn->n' muestras, o devuelva un error, para ajustarse a la expectativa general para los gestores de 'INSN_READ' e 'INSN_WRITE'.

Information

Published : 2025-09-05 18:15

Updated : 2026-10-19 21:10


NVD link : CVE-2025-39686

Mitre link : CVE-2025-39686

CVE.ORG link : CVE-2025-39686


JSON object : View

Products Affected

debian

  • debian_linux

linux

  • linux_kernel