Linux-версия Mozilla VPN некорректно проверяет аутентификацию

Linux-версия Mozilla VPN некорректно проверяет аутентификацию

Linux-версия Mozilla VPN некорректно проверяет аутентификацию

Один из разработчиков Linux-дистрибутива SUSE указал на опасную уязвимость в клиенте Mozilla VPN для «пингвина». Эксплуатация бреши может позволить перенаправить сетевой трафик на сторонние ресурсы и вмешаться в текущие настройки VPN.

В посте на Openwall специалист Матиас Герстнер объясняет, что проблема кроется в некорректной проверке аутентификации. Баг затрагивает версию v2.14.1, которая вышла 30 мая.

Фактически уязвимость может использовать любой пользователь, что позволит ему перенаправить трафик «на сторону», вмешаться в конфигурацию VPN и многое другое. Особую опасность брешь представляет для компьютеров, которыми пользуются несколько людей.

По словам Герстнера, проблему удалось обнаружить в тот момент, когда один из сотрудников пытался добавить клиент Mozilla VPN в систему openSUSE Tumbleweed. Софт изучила команда безопасности SUSE (что является стандартной процедурой) и обратила внимание на службу D-Bus, запущенную от имени root и с политикой Polkit.

Polkit представляет собой API для аутентификации привилегированных программ. Как выяснила команда безопасников SUSE, процесс mozillavpn linuxdaemon содержал некорректную логику аутентификации.

После этого Герстнер обнаружил, что проверка аутентификации реализована по странной логике: код «просит» Polkit определить, авторизована ли служба Mozilla VPN D-Bus (а не конкретный пользователь) осуществлять определенное действие. Поскольку D-Bus работает с правами root, проверка аутентификации всегда возвращает утвердительное значение.

Таким образом, проверку пройдет любой пользователь и любой аккаунт, невзирая на права.

Подпишитесь на новости

Обновите Telegram для Android: версия 13.2.2 закрыла опасную уязвимость

Telegram исправил уязвимость в HTML-виджетах, которые мессенджер открыл для ботов 9 ноября. Через ошибку скрипт из обычного сообщения мог выйти за пределы песочницы и выполнить машинный код на устройстве. Проблема находилась в движке JavaScript QuickJS, который Telegram использует в собственном форке QuickJS-ng.

Патч описан в журнале изменений песочницы виджетов Telegram на GitHub. Парсер QuickJS принимал конструкцию await using в заголовке цикла даже внутри обычных, неасинхронных функций.

В таком случае движок завершал функцию по пути для асинхронного кода и не закрывал ссылки на ее локальные переменные. Вложенные функции после возврата продолжали обращаться к уже освобожденному участку стека. Такой класс ошибок называют use-after-return.

О проблеме сообщили применительно к Telegram для Android 13.2.1, но, по данным Telegram, она затрагивала все платформы, где собирается форк движка. Исправление внесли 10 ноября: теперь парсер выдает синтаксическую ошибку на такую конструкцию. В тот же день вышла версия Telegram для Android 13.2.2.

Уязвимый код попал в основную ветку QuickJS-ng 16 мая вместе с поддержкой явного управления ресурсами. Ошибку описал разработчик Андреас Рёсдал.

9 ноября он опубликовал в репозитории QuickJS-ng аудит безопасности всего движка, проведенный с помощью модели Claude от Anthropic. В отчете 27 находок, уязвимость с await using в нем третья, с высоким уровнем опасности.

RSS: Новости на портале Anti-Malware.ru