В Linux-подсистеме nvmet-tcp обнаружена уязвимость, грозящая RCE

В Linux-подсистеме nvmet-tcp обнаружена уязвимость, грозящая RCE

В драйвере NVMe-oF/TCP, входящем в состав ядра Linux, выявлена уязвимость, позволяющая удаленно выполнить вредоносный код в системе. Варианты патча обсуждаются.

Модуль NVMe-oF/TCP (nvmet-tcp) был в 2018 году добавлен в ядро Linux, чтобы обеспечить возможность использования TCP-протокола при обращении к энергонезависимой памяти по сети.

Проблема, зарегистрированная под идентификатором CVE-2023-5178, классифицируется как использование освобожденной памяти (use-after-free). Она появилась из-за логической ошибки и проявляется при вызове функции nvmet_tcp_free_crypto.

Эксплойт осуществляется отправкой специально созданного сообщения по локальной сети либо через WAN. В первом случае злоумышленник сможет повысить свои привилегии, во втором — добиться исполнения своего кода.

Уязвимость была оценена как очень опасная (8,8 балла CVSS). Ей подвержены Linux 5.15 и выше с включенным сервисом NVMe-oF/TCP (по умолчанию работает на порту 4420).