Bluetooth: SCO: Fix use-after-free in sco_recv_frame() due to missing sock_hold
Plattform
linux
Komponente
linux
Behoben in
e76e8f0581ef555eacc11dbb095e602fb30a5361
In the Linux kernel, die folgende Schwachstelle wurde behoben: Bluetooth: SCO: Fix use-after-free in sco_recv_frame() due to missing sock_hold sco_recv_frame() liest conn->sk unter sco_conn_lock() aus, gibt den Lock aber sofort frei, ohne eine Referenz auf das Socket zu halten. Ein gleichzeitiger close() kann das Socket zwischen der Lock-Freigabe und dem anschließenden Zugriff auf sk->sk_state freigeben, was zu einem use-after-free führt. Andere Funktionen in derselben Datei (sco_sock_timeout(), sco_conn_del()) verwenden korrekt sco_sock_hold(), um sicher eine Referenz unter dem Lock zu halten. Behebung durch Verwendung von sco_sock_hold(), um eine Referenz zu nehmen, bevor der Lock freigegeben wird, und Hinzufügen von sock_put() auf allen Ausstiegspfaden.
So beheben
Kein offizieller Patch verfügbar. Prüfe auf Workarounds oder überwache auf Updates.
Abhängigkeiten automatisch überwachen
Werde benachrichtigt, wenn neue Schwachstellen deine Projekte betreffen. Für immer kostenlos.
Kostenlos starten