В ядре Linux устранена следующая уязвимость:
nfc: rawsock: отменить tx_work перед демонтажем сокета
В rawsock_release() отмените все ожидающие tx_work и очистите запись.
очередь перед потерей сокета. rawsock_tx_work работает в системе
workqueue и вызывает nfc_data_exchange, который разыменовывает NCI
устройство. Без синхронизации tx_work может участвовать в гонках с сокетами и
демонтаж устройства при завершении процесса (например, с помощью SIGKILL), что приводит к
использовать после освобождения или утечки ссылок.
Сначала установите SEND_SHUTDOWN, чтобы, если tx_work уже запущен, он будет
увидеть флаг и пропустить передачу, затем использовать cancel_work_sync для ожидания
для завершения любого текущего выполнения и, наконец, очистки всех
оставшиеся skbs в очереди.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: nfc: rawsock: cancel tx_work before socket teardown In rawsock_release(), cancel any pending tx_work and purge the write queue before orphaning the socket. rawsock_tx_work runs on the system workqueue and calls nfc_data_exchange which dereferences the NCI device. Without synchronization, tx_work can race with socket and device teardown when a process is killed (e.g. by SIGKILL), leading to use-after-free or leaked references. Set SEND_SHUTDOWN first so that if tx_work is already running it will see the flag and skip transmitting, then use cancel_work_sync to wait for any in-progress execution to finish, and finally purge any remaining queued skbs.
Характеристики атаки
Последствия
Строка CVSS v3.1