Description
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: ISO: avoid NULL deref of conn in iso_conn_big_sync() iso_conn_big_sync() drops the socket lock to call hci_get_route() and then re-acquires it, but dereferences iso_pi(sk)->conn->hcon afterwards without re-checking that conn is still valid. While the lock is dropped, the connection can be torn down under the same socket lock: iso_disconn_cfm() -> iso_conn_del() -> iso_chan_del() sets iso_pi(sk)->conn to NULL (and the broadcast teardown path can also clear conn->hcon on its own). When iso_conn_big_sync() re-acquires the lock and reads conn->hcon, conn may be NULL, causing a NULL pointer dereference (hcon is the first member of struct iso_conn). This path is reached from iso_sock_recvmsg() for a PA-sync broadcast sink socket (BT_SK_DEFER_SETUP | BT_SK_PA_SYNC), so the dropped-lock window can race with connection teardown driven by controller events. Re-validate iso_pi(sk)->conn and its hcon after re-acquiring the socket lock and bail out if the connection went away, as already done in the sibling iso_sock_rebind_bc().
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
cbe640d6cae590b9a7d81ce86fe9a90e83eec1d5 to < b3e647a4aa4d2d054f86a783f5c426035e1dc237affected7a17308c17880d259105f6e591eb1bc77b9612f0 to < b84eeb7636d6962dd882d5e0b31475e4f404313caffected7a17308c17880d259105f6e591eb1bc77b9612f0 to < 01afd198c2c286cd3b81f44d4e33a2e638711550affected7a17308c17880d259105f6e591eb1bc77b9612f0 to < d5541eb148da72d5e0a1bca8ecd171f9fc8b366faffected6.12.6 to < 6.12.96affected
Linux Linux
Default version status: affected
6.13affected0 to < 6.13unaffected6.12.96 to ≤ 6.12.*unaffected6.18.39 to ≤ 6.18.*unaffected7.1.4 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected