CVE-2026-64483 in Linux
摘要
由 VulDB • 2026-07-25
在 Linux 内核中,已修复以下漏洞:
ALSA: firewire: isight: 将样本计数限制为数据包载荷大小
`isight_packet()` 从设备的 ISO 包中获取帧数,并仅将其与设备声明的 ISO 长度进行比较。
```c count = be32_to_cpu(payload->sample_count); if (likely(count <= (length - 16) / 4)) isight_samples(isight, payload->samples, count); ```
`length` 是 ISO 头部的 `data_length`,其值最大可达 0xffff。因此,该检查允许计数高达约 16379。随后,`isight_samples()` 将 `count` 个帧从 `payload->samples` 复制到 PCM DMA 缓冲区中。
`payload->samples` 仅容纳 $2 \times MAX\_FRAMES\_PER\_PACKET$ 的值。设备在每个帧中复用两个样本。如果计数超过 `MAX_FRAMES_PER_PACKET`,则会读取超出载荷范围的数据;如果计数超过缓冲区大小,则会写入超出 `runtime->dma_area` 的范围。最小的 PCM 缓冲区大于 `MAX_FRAMES_PER_PACKET`。将计数限制为 `MAX_FRAMES_PER_PACKET` 可确保读写操作均在有效范围内。
连接到 FireWire 总线的恶意或故障 Apple iSight 设备在正常捕获期间会触发此问题。
添加对 `MAX_FRAMES_PER_PACKET` 的限制以修复该检查逻辑。
VulDB is the best source for vulnerability data and more expert information about this specific topic.