Локальная root-уязвимость в реализации SCTP в ядре Linux
В реализации протокола SCTP, предлагаемой в ядре Linux, выявлена уязвимость (CVE-2019-8956), потенциально позволяющая локальному пользователю получить root привилегии в системе (выполнить код в контексте ядра). Прототип эксплоита пока не подготовлен.
Проблема вызвана ошибкой в коде функции sctp_sendmesg, которая позволяет через манипуляцию с локальным сокетом создать условия для обращения к уже освобожденной области памяти (use-after-free). В частности, проблема проявляется при обработке списка ассоциаций получателей, привязанных к сообщению, отправленному по нескольким адресам в режиме SCTP_SENDALL. В случае удаления ассоциации во время перебора продолжается обработка поврежденного списка.
Проблема проявляется начиная с ядра 4.17 и исправлена в обновлениях 4.20.8 и 4.19.21, а также в тестовом выпуске 5.0rc6. Уязвимость не затрагивает дистрибутивы с версией ядра меньше 4.17, например, проблеме не подвержены Debian (кроме тестовых веток sid и buster), SUSE/openSUSE и RHEL/CentOS. Обновления пакетов уже выпущены для Arch Linux и Fedora. В Ubuntu 18.10 применяется ядро 4.18 и обновление пока недоступно/CVE-2019-8956.html.