Back to CVE records
Medium 5.5Published Sep 5, 2025

CVE-2025-39684comedi: Fix use of uninitialized memory in do_insn_ioctl() and do_insnlist_ioctl()

Updated under an hour ago ()

Does this affect you?

It affects Linux and 3 other products. Add what you run to find out whether that includes you.

No exploitation reported and no EPSS estimate yet.

In the Linux kernel, the following vulnerability has been resolved: comedi: Fix use of uninitialized memory in do_insn_ioctl() and do_insnlist_ioctl() syzbot reports a KMSAN kernel-infoleak in `do_insn_ioctl()`. A kernel buffer is allocated to hold `insn->n` samples (each of which is an `unsigned int`). For some instruction types, `insn->n` samples are copied back to user-space, unless an error code is being returned. The problem is that not all the instruction handlers that need to return data to userspace fill in the whole `insn->n` samples, so that there is an information leak. There is a similar syzbot report for `do_insnlist_ioctl()`, although it does not have a reproducer for it at the time of writing. One culprit is `insn_rw_emulate_bits()` which is used as the handler for `INSN_READ` or `INSN_WRITE` instructions for subdevices that do not have a specific handler for that instruction, but do have an `INSN_BITS` handler. For `INSN_READ` it only fills in at most 1 sample, so if `insn->n` is greater than 1, the remaining `insn->n - 1` samples copied to userspace will be uninitialized kernel data. Another culprit is `vm80xx_ai_insn_read()` in the "vm80xx" driver. It never returns an error, even if it fails to fill the buffer. Fix it in `do_insn_ioctl()` and `do_insnlist_ioctl()` by making sure that uninitialized parts of the allocated buffer are zeroed before handling each instruction. Thanks to Arnaud Lecomte for their fix to `do_insn_ioctl()`. That fix replaced the call to `kmalloc_array()` with `kcalloc()`, but it is not always necessary to clear the whole buffer.

CVSS
5.5 MEDIUM (v3.1, NVD)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
Not given
Known exploited
Not in CISA's KEV catalog
EPSS (exploitation in the next 30 days)
Not loaded for this CVE
Assigned by
Linux
NVD analysis
Modified
Record last updated
May 12, 2026
First seen by InfoSec Signals
Oct 19, 2026

Affected products

Affected products
Linux Linux
linux:linux (from the name)
from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before 868a1b68dcd9f2805bb86aa64862402f785d8c4a; from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before ff4a7c18799c7fe999fa56c5cf276e13866b8c1a; from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before d84f6e77ebe3359394df32ecd97e0d76a25283dc; from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before f3b0c9ec54736f3b8118f93a473d22e11ee65743; from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before aecf0d557ddd95ce68193a5ee1dc4c87415ff08a; from ed9eccbe8970f6eedc1b978c157caf1251a896d4 before 3cd212e895ca2d58963fdc6422502b10dd3966bb
CNA record
Siemens SIMATIC CN 4100
siemens:simatic_cn_4100 (from the name)
before V5.0
CISA ADP
linux linux_kernel
linux:linux_kernel
from 2.6.29 before 5.15.190; from 5.16 before 6.1.149; from 6.2 before 6.6.103; from 6.7 before 6.12.44; from 6.13 before 6.16.4; 6.17; 6.17
NVD
debian debian_linux
debian:debian_linux
11.0
NVD

References

References

The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.

Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.