Activity log
- Created & dismissed (max. allowed matches exceeded) suggestion
coresight: ultrasoc-smb: Fix OOB write in smb_sync_perf_buffer()
In the Linux kernel, the following vulnerability has been resolved: coresight: ultrasoc-smb: Fix OOB write in smb_sync_perf_buffer() When the SMB sink is used as a perf AUX sink, smb_update_buffer() calls smb_sync_perf_buffer() to copy hardware trace data into the perf AUX ring buffer pages. It derives pg_idx = head >> PAGE_SHIFT from @head, which is handle->head, and indexes dst_pages[pg_idx]. The pg_idx %= nr_pages normalization is only applied after the first loop iteration. This leaves the initial page index underived from the buffer size, which can result in an out-of-bounds write past dst_pages[] when head exceeds the AUX buffer size. Normalize head modulo the AUX buffer size before deriving the page index and offset, mirroring tmc_etr_sync_perf_buffer().
References
Affected products
- <4c5a0a946373da99a80398289b28845b5ae40cd1
- <661a019ac0413ecec9e5d1dfcc12fbca8e78d5fb
- =<6.18.*
- =<6.12.*
- <98495b5a4d77dd22e106f462b76e1093a55b29a7
- =<7.1.*
- =<*
- =<6.6.*
- <daf6246ab988fc8bdc82ad7c8d0b1c182d11b15f
- <6.3
- <38dbc8db8341ccdf8e1e1a067453d33ad751864b
- ==6.3