]> git.baikalelectronics.ru Git - kernel.git/commit
Bluetooth: ISO: Fix memory corruption
authorLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Fri, 29 Jul 2022 18:03:27 +0000 (11:03 -0700)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Tue, 9 Aug 2022 00:04:51 +0000 (17:04 -0700)
commit2166b76f5da02990e5390b0c38ee50f513f1842d
treefa8950139d03c7764f0e513ff7de510e1df90b4c
parent9878e79ee970203ed1a4607989a0b1e4be8b9fb0
Bluetooth: ISO: Fix memory corruption

The following memory corruption can happen since iso_pinfo.base size
did not account for its headers (4 bytes):

net/bluetooth/eir.c
    76          memcpy(&eir[eir_len], data, data_len);
                            ^^^^^^^         ^^^^^^^^
    77          eir_len += data_len;
    78
    79          return eir_len;
    80  }

The "eir" buffer has 252 bytes and data_len is 252 but we do a memcpy()
to &eir[4] so this can corrupt 4 bytes beyond the end of the buffer.

Fixes: 1f1c5a7fa128 ("Bluetooth: ISO: Add broadcast support")
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
net/bluetooth/iso.c