In the Linux kernel, the following vulnerability has been resolved:
comedi: Fix initialization of data for instructions that write to subdevice
Some Comedi subdevice instruction handlers are known to access
instruction data elements beyond the first insn->n elements in some
cases. The do_insn_ioctl() and do_insnlist_ioctl() functions
allocate at least MIN_SAMPLES (16) data elements to deal with this,
but they do not initialize all of that. For Comedi instruction codes
that write to the subdevice, the first insn->n data elements are
copied from user-space, but the remaining elements are left
uninitialized. That could be a problem if the subdevice instruction
handler reads the uninitialized data. Ensure that the first
MIN_SAMPLES elements are initialized before calling these instruction
handlers, filling the uncopied elements with 0. For
do_insnlist_ioctl(), the same data buffer elements are used for
handling a list of instructions, so ensure the first MIN_SAMPLES
elements are initialized for each instruction that writes to the
subdevice.
| Software | From | Fixed in |
|---|---|---|
| linux / linux_kernel | 2.6.29 | 5.4.297 |
| linux / linux_kernel | 5.5 | 5.10.241 |
| linux / linux_kernel | 5.11 | 5.15.190 |
| linux / linux_kernel | 5.16 | 6.1.147 |
| linux / linux_kernel | 6.2 | 6.6.100 |
| linux / linux_kernel | 6.7 | 6.12.40 |
| linux / linux_kernel | 6.13 | 6.15.8 |
| linux / linux_kernel | 6.16-rc1 | 6.16-rc1.x |
| linux / linux_kernel | 6.16-rc2 | 6.16-rc2.x |
| linux / linux_kernel | 6.16-rc3 | 6.16-rc3.x |
| linux / linux_kernel | 6.16-rc4 | 6.16-rc4.x |
| linux / linux_kernel | 6.16-rc5 | 6.16-rc5.x |
| linux / linux_kernel | 6.16-rc6 | 6.16-rc6.x |
| debian / debian_linux | 11.0 | 11.0.x |