В январе 2019 года ИБ-эксперт Крис Моберли (Chris Moberly) из австралийской компании The Missing Link обнаружил опасную уязвимость в snapd, которая получила имя Dirty Sock и идентификатор CVE-2019-7304. В настоящее время на GitHub уже были опубликованы proof-of-concept эксплоиты для этой проблемы, которая затрагивает Ubuntu и другие дистрибутивы.
Dirty Sock не позволяет атакующему удаленно проникнуть на уязвимую машину, однако позволяет злоумышленнику повысить свои привилегии в уже зараженной системе до root-доступа, то есть захватить полный контроль.
Исследователь пишет, что эксплуатация проблемы может варьировать от дистрибутива к дистрибутиву. Так, эксплоит dirty_sockv1 использует API create-user для создания локального пользователя, используя данные Ubuntu SSO. В свою очередь, эксплоит dirty_sockv2 используется для загрузки snap-пакета, содержащего install-хук для создания нового локального пользователя. Моберли объясняет, что snapd ставит под удар локальный сервер REST API, с которым snap-пакеты взаимодействуют во время установки новых sanp’ов. Эксперт нашел способ обойти установленные ограничения и получить доступ ко всем функциям API, а в итоге и root-доступ.
Специалист предупреждает, что баг можно эксплуатировать, напрямую выполнив вредоносный код на зараженной машине, а можно спрятав эксплоит в snap-пакете. Это довольно тревожная новость, так как в Snap Store ранее уже обнаруживали малварь.
Перед проблемой Dirty Sock уязвимы все версии snapd от 2.28 до 2.37. Разработчики Canonical уже подготовили патч (USN-3887-1) и представили исправленный snapd 2.37.1. Так как snapd входит не только в состав Ubuntu, но и других дистрибутивов, обновления доступны для Debian, Arch Linux, OpenSUSE, Solus и Fedora.
Источник: https://xakep.ru/2019/02/14/dirty-sock/