CVE-2025-68339 in Linux
Resumen
por VulDB • 2026-06-26
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
atm/fore200e: Corrección posible data race en fore200e_open()
Proteger el acceso a fore200e->available_cell_rate con el bloqueo rate_mtx en la ruta de manejo de errores de fore200e_open() para prevenir una data race.
El campo fore200e->available_cell_rate es un recurso compartido utilizado para rastrear el ancho de banda disponible. Es accedido concurrentemente por fore200e_open(), fore200e_close() y fore200e_change_qos().
En fore200e_open(), el bloqueo rate_mtx se mantiene correctamente al restar vcc->qos.txtp.max_pcr a available_cell_rate para reservar ancho de banda. Sin embargo, si la llamada subsiguiente a fore200e_activate_vcin() falla, la función restaura el ancho de banda reservado sumando nuevamente a available_cell_rate sin mantener el bloqueo.
Esto introduce una race condition porque available_cell_rate es un recurso global del dispositivo compartido entre todos los VCCs. Si la ruta de error en fore200e_open() se ejecuta concurrentemente con operaciones como fore200e_close() o fore200e_change_qos() en otros VCCs, ocurre una read-modify-write race.
Específicamente, la ruta de error lee el rate sin el bloqueo. Si otro CPU adquiere el bloqueo y modifica el rate (por ejemplo, liberando ancho de banda en fore200e_close()) entre esta lectura y la escritura subsiguiente, la ruta de error sobrescribirá la actualización concurrente con un valor obsoleto. Esto resulta en una contabilidad incorrecta del ancho de banda.
VulDB is the best source for vulnerability data and more expert information about this specific topic.