In the Linux kernel, the following vulnerability has been resolved: USB: serial: io_ti: fix heap overflow in build_i2c_fw_hdr() build_i2c_fw_hdr() allocates a fixed-size buffer of (16*1024 - 512) + sizeof(struct ti_i2c_firmware_rec) bytes, then copies le16_to_cpu(img_header->Length) bytes into it without validating that Length fits within the available space after the firmware record header. img_header->Length is a __le16 from the firmware file and can be up to 65535. check_fw_sanity() validates the total firmware size but not img_header->Length specifically. Fix by rejecting images where img_header->Length exceeds the available destination space.
| Date Added | Due Date | Vulnerability Name | Required Action |
|---|---|---|---|
| N/A |
| Type | Version | Base score | Base severity | Vector |
|---|---|---|---|---|
| Primary | 3.1 | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| Hyperlink | Source | Resource |
|---|---|---|
| https://git.kernel.org/stable/c/0fd2b00b2d3d05e3eaa13342b3dfb0fa85c226ae | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/130d6567eb148040eed1b73e1414ad6c27d22bd5 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/294692d3296eee3391c348d7ea6401916d27806c | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/2fd64bf0ad66ab5de0c73524591d879427ba5aba | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/3e187152f44d76d7633a3855ffd0099e1588b82a | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/4cb722747ed25971f35cc47ce5c0e79d7f717713 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/5a79b634ee58786ca627268daefa7744f2af2e14 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |
| https://git.kernel.org/stable/c/b7faf660eefa2047ebc2959ff76da2b6eae2e9e3 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Patch |