Аудит кода выявил 25 уязвимостей в Homebrew

Аудит кода выявил 25 уязвимостей в Homebrew

Аудит кода выявил 25 уязвимостей в Homebrew

В менеджере пакетов Homebrew после аудита обнаружили 25 уязвимостей, которые могли позволить злоумышленникам выполнить вредоносный код и модифицировать сборки бинарников.

В теории эксплуатация этих брешей позволит атакующим контролировать поток CI/CD и вытащить секреты. Проблемы удалось выявить в ходе аудита кода, который провели специалисты Trail of Bits в августе 2023 года.

Ни одна из уязвимостей не получила статус критической, команда разработчиков Homebrew уже устранила 16 брешей и при этом работает над патчами ещё для трёх.

14 получили среднюю степень риска, две — низкую, семь стали просто информационными, а статус ещё двух не раскрывается.

Среди багов есть возможность изменения локального пути (path traversal), выход за пределы песочницы, недостаточные проверки, слабая криптография, возможность повышения прав и использование устаревшего кода.

«Большая поверхность API и CLI Homebrew открывает потенциальному злоумышленнику возможность для локального выполнения кода за пределами песочницы», — пишут специалисты Trail of Bits.

В отчёте (PDF) также упоминается, что у модели безопасности Homebrew нет чёткой документации, а пакеты могут использовать ряд способов для повышения своих прав.

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

Обновите 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