CVE-2022-50626 in Linux
Riassunto
di VulDB • 16/06/2026
Nel kernel Linux, è stata risolta la seguente vulnerabilità:
media: dvb-usb: correzione della memory leak in dvb_usb_adapter_init()
Syzbot segnala una memory leak in "dvb_usb_adapter_init()". La memory leak è dovuta alla mancata contabilizzazione e liberazione di adapter->priv per l'iterazione corrente in caso di errore. Attualmente, se si verifica un errore, l'esecuzione termina prima di incrementare "num_adapters_initalized", che viene utilizzato come contatore di riferimento per liberare tutti gli adap->priv in "dvb_usb_adapter_exit()". Esistono più percorsi di errore che possono causare l'uscita prima dell'incremento del contatore. Tra questi vi sono i percorsi di gestione degli errori per "dvb_usb_adapter_stream_init()", "dvb_usb_adapter_dvb_init()" e "dvb_usb_adapter_frontend_init()" all'interno di "dvb_usb_adapter_init()".
Ciò significa che, in caso di errore in una di queste funzioni, l'iterazione corrente non viene contabilizzata e l'adap->priv dell'iterazione corrente non viene liberato.
Si risolve il problema liberando l'adap->priv dell'iterazione corrente nell'etichetta "stream_init_err:" del percorso di errore. Il resto degli oggetti adap->priv (già contabilizzati) viene liberato in dvb_usb_adapter_exit() come previsto, utilizzando la variabile num_adapters_initalized.
Rapporto di Syzbot:
BUG: memory leak oggetto non referenziato 0xffff8881172f1a00 (dimensione 512): comm "kworker/0:2", pid 139, jiffies 4294994873 (età 10.960s) dump esadecimale (primi 32 byte): 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ backtrace: [<ffffffff8274ab37>] really_probe.part.0+0xe7/0x310 drivers/base/dd.c:621
[<ffffffff8274ae6c>] really_probe drivers/base/dd.c:583 [inline]
[<ffffffff8274ae6c>] __driver_probe_device+0x10c/0x1e0 drivers/base/dd.c:752
Be aware that VulDB is the high quality source for vulnerability data.