Эксперт компании Positive Technologies Александр Попов выявил уязвимость (CVE-2017-2636) в ядре Linux, которая позволяет локальному пользователю повысить привилегии в атакуемой системе или вызвать сбой в ее работе («отказ в обслуживании»). Данная проблема актуальна для большинства популярных дистрибутивов Linux, в том числе RHEL 6/7, Fedora, SUSE, Debian и Ubuntu.
Исследователь выявил ошибку типа «состояние гонки» (race condition) в драйвере n_hdlc, приводящую к двойному освобождению памяти ядра, что может быть использовано для повышения привилегий в операционной системе. Уязвимость оценена в 7.8 баллов по шкале CVSS v3, что соответствует высокому уровню опасности.
«Для автоматической загрузки модуля n_hdlc злоумышленнику достаточно прав непривилегированного пользователя, — отмечает Александр Попов, — кроме того, для атаки не нужно специализированного аппаратного обеспечения. Уязвимость давняя, поэтому она широко распространена на рабочих станциях и серверах под управлением Linux».
Обнаруженная ошибка существует в ядре с 22 июня 2009 года и была выявлена с помощью тестирования системных вызовов Linux фаззером syzkaller. 28 февраля 2017 года исследователь сообщил об уязвимости на kernel.org, приложил прототип эксплойта и патч, который ее устраняет. 7 марта состоялось публичное разглашение информации о CVE-2017-2636, после чего были выпущены обновления безопасности. Защититься также можно с помощью специальных правил блокировки загрузки модулей ядра.