В Linux обнаружена уязвимость, позволяющая поднять привилегии

Все версии ядра Linux, начиная с 3.8 и заканчивая веткой 4.5 в git, подвержены уязвимости (CVE-2016-0728), позволяющей локальному непривилегированному пользователю получить права суперпользователя.

Ошибка в коде существует с 2012 года — ей подвержены как минимум 2/3 пользователей ОС Android, которые находятся в зоне повышенного риска, так как Google не может проверить исполняемый код, собранных с использованием NDK (Native Development Kit) мобильных приложений и игр, опубликованных в Google Play. Обычные компьютеры и серверы находятся в относительной безопасности в случае, если в системе только один пользователь, пользователям запрещено исполнять код или экземпляры ОС находятся в среде виртуализации.

Уязвимость присутствует в подсистеме ядра keyrings, отвечающей за кэширование и хранение ключей аутентификации и сертификатов для шифрования. Ошибка вызвана некорректным освобождением объектов, что может привести к обращению к уже освобождённой области памяти (use-after-free) в ситуации, когда процесс пытается заменить свой текущий сессионный keyring тем же самым экземпляром. Эксплуатация уязвимости достаточно тривиальна — код эксплоита составляет всего 100 строк на языке C (эксплоит выполняется около 30 минут).