Description (CNA)
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 (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 18b1a868a2cda66fb438007ba47ce5f2484db381; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 0c9268457bd6e4058fe55b4db01b16661c2eacf5; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 94fb6fe83ce152532b11b36730b30f3dc0c94217; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 825c903ca3c98cd0cf0e3de8ab8f2604a5339b3f; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before f97b7e5e1cdaae15cd95b3a360028c7929664969; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 1acab790b7cecd4e144d1d18bdfe549e282f6b0b; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 0149fdb50a30944827acf9600a2cc44de0325a7f; affected d8a199355f8f8a0797c00d98788d7282c9ea38bd before 39132f166ca8ce00ae60d8a9068e06a60943cc4b |
| Linux / Linux | affected 3.4; unaffected 0 before 3.4; unaffected 5.10.265 through 5.10.*; unaffected 5.15.216 through 5.15.*; unaffected 6.1.183 through 6.1.*; unaffected 6.6.151 through 6.6.*; unaffected 6.12.103 through 6.12.*; unaffected 6.18.44 through 6.18.*; unaffected 7.1.8 through 7.1.*; unaffected 7.2 through * |
CWE
No CWE identifiers supplied.
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