In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: L2CAP: Fix use-after-free in l2capsocknewconnectioncb()
l2capsocknewconnectioncb() returned l2cappi(sk)->chan after releasesock(parent). Once the parent lock is dropped the newly enqueued child socket sk is reachable via the accept queue, so another task can accept and free it before the callback dereferences sk, resulting in a use-after-free.
Rework the ->newconnection() op so the core, rather than the callback, owns the child channel's lifetime. The op now receives a pre-allocated newchan and returns an errno instead of allocating and returning a channel. l2capnewconnection() allocates the child channel and links it into the conn list via _l2capchanadd() before invoking the callback, so the conn-list reference keeps the channel alive once releasesock(parent) exposes the socket to other tasks.
Channel configuration that was duplicated in l2capsockinit() and the various newconnection callbacks is consolidated into l2capchansetdefaults(), which now inherits from the parent channel when one is supplied.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64557.json",
"cna_assigner": "Linux"
}