CVE-2026-99239
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
02/11/2026
Última modificación:
03/11/2026
Descripción
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
Bluetooth: L2CAP: refuse __l2cap_chan_add if chan already has conn<br />
<br />
l2cap_chan may be linked to l2cap_conn at most once. This is assumed in<br />
several places, eg l2cap_chan_del cleanup.<br />
<br />
There is a TOCTOU race where the invariant is violated:<br />
<br />
[Task 1] [Task 2]<br />
l2cap_chan_connect l2cap_sock_bind<br />
l2cap_chan_lock lock_sock<br />
l2cap_state_change if (sk->sk_state != BT_OPEN)<br />
chan->state = BT_CONNECT<br />
l2cap_sock_state_change_cb chan->state = BT_BOUND<br />
sk->sk_state = BT_BOUND<br />
lock_sock sk_state = BT_CONNECT<br />
<br />
l2cap_sock_connect() does not check sk->sk_state, so since chan->state<br />
is now BT_BOUND, subsequent connect() ends up with second<br />
__l2cap_chan_add.<br />
<br />
Explicitly document and check the invariant in __l2cap_chan_add with<br />
WARN_ON_ONCE. The only callsite where it could be hit is<br />
l2cap_chan_connect, so add pre-check there to avoid relying on<br />
chan->state. chan->state read/write is not properly guarded currently so<br />
there can be other TOCTOUC problems.<br />
<br />
Add l2cap_lock_chan in l2cap_sock_bind() to guard chan->state write.
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Referencias a soluciones, herramientas e información
- https://git.kernel.org/stable/c/10c705dd706aa93164ba41f2566f15206d6c178e
- https://git.kernel.org/stable/c/52fe88e4ef87311eee32b45c65603e7c69e75e7d
- https://git.kernel.org/stable/c/73820561d8cbfd3364a29b8fa77f1707f26029da
- https://git.kernel.org/stable/c/820579652b24ce277e0097cd65b42bd9b7b8bf07
- https://git.kernel.org/stable/c/85cc289eb08afa975375f838187369e68b429ee0
- https://git.kernel.org/stable/c/86b55991d3cd690e73c5ef8d20b75ae4905b357a
- https://git.kernel.org/stable/c/d3afd7803f9bc2a8c4270199497b60158b2fc647
- https://git.kernel.org/stable/c/e618d928ec7f88cbeadfa3542adcac40f474e629
- https://git.kernel.org/stable/c/fabaff1c59ff2cc89cb7e5bd0186a5e15f0c73b2


