Description
In the Linux kernel, the following vulnerability has been resolved: can: peak_usb: add bounds check for USB channel index The channel control index ctrl_idx is derived from rx->len which comes directly from a device USB payload. The mask 0x0f allows values 0-15, but the array size of usb_if->dev[] is only 2. Values 2-15 cause heap out-of-bounds read, eventually causing kernel panic in the IRQ context. Add bounds checking for ctrl_idx before the array access in both pcan_usb_pro_handle_canmsg() and pcan_usb_pro_handle_error().
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
d8a199355f8f8a0797c00d98788d7282c9ea38bd to < 18b1a868a2cda66fb438007ba47ce5f2484db381affectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 0c9268457bd6e4058fe55b4db01b16661c2eacf5affectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 94fb6fe83ce152532b11b36730b30f3dc0c94217affectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 825c903ca3c98cd0cf0e3de8ab8f2604a5339b3faffectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < f97b7e5e1cdaae15cd95b3a360028c7929664969affectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 1acab790b7cecd4e144d1d18bdfe549e282f6b0baffectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 0149fdb50a30944827acf9600a2cc44de0325a7faffectedd8a199355f8f8a0797c00d98788d7282c9ea38bd to < 39132f166ca8ce00ae60d8a9068e06a60943cc4baffected
Linux Linux
Default version status: affected
3.4affected0 to < 3.4unaffected5.10.265 to ≤ 5.10.*unaffected5.15.216 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.151 to ≤ 6.6.*unaffected6.12.103 to ≤ 6.12.*unaffected6.18.44 to ≤ 6.18.*unaffected7.1.8 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/18b1a868a2cda66fb438007ba47ce5f2484db381 ↗
- https://git.kernel.org/stable/c/0c9268457bd6e4058fe55b4db01b16661c2eacf5 ↗
- https://git.kernel.org/stable/c/94fb6fe83ce152532b11b36730b30f3dc0c94217 ↗
- https://git.kernel.org/stable/c/825c903ca3c98cd0cf0e3de8ab8f2604a5339b3f ↗
- https://git.kernel.org/stable/c/f97b7e5e1cdaae15cd95b3a360028c7929664969 ↗
- https://git.kernel.org/stable/c/1acab790b7cecd4e144d1d18bdfe549e282f6b0b ↗
- https://git.kernel.org/stable/c/0149fdb50a30944827acf9600a2cc44de0325a7f ↗
- https://git.kernel.org/stable/c/39132f166ca8ce00ae60d8a9068e06a60943cc4b ↗