В менеджере пакетов Homebrew обнаружена RCE-уязвимость

27 апреля 2021 года

Уязвимость позволяет автоматически рассматривать и утверждать вредоносные pull-запросы.

Японский исследователь в области безопасности, использующий псевдоним RyotaK, обнаружил критическую уязвимость в официальном репозитории Homebrew Cask. Ее эксплуатация позволяла злоумышленнику выполнить произвольный код на компьютерах пользователей c установленным ПО Homebrew.

Homebrew — бесплатное решение для управления пакетами программного обеспечения с открытым исходным кодом, позволяющее устанавливать программное обеспечение на устройствах под управлением ОС macOS и Linux. Homebrew Cask расширяет функциональные возможности, включая рабочие процессы командной строки для приложений macOS на основе графического интерфейса пользователя, шрифтов, плагинов и другого программного обеспечения без открытого исходного кода.

Проблема связана с обработкой изменений кода в репозитории на GitHub, что позволяло автоматически рассматривать и утверждать вредоносные pull-запросы.

«Уязвимость позволяет злоумышленнику внедрить произвольный код в контейнер и автоматически объединить его. Это происходит из-за проблемы в зависимости git_diff действия GitHub review-cask-pr, которое используется для синтаксического анализа различий в pull-запросе для проверки. Синтаксический анализатор можно обмануть, и он полностью проигнорирует вредоносные строки, что приведет к успешному одобрению вредоносного pull-запроса», — пояснили представители Homebrew.

Исследователь также продемонстрировал PoC-код для эксплуатации уязвимости. Разработчики Homebrew удалили автоматическое объединение кода в контейнере на GitHub, а также отключили и удалили действие review-cask-pr из всех уязвимых репозиториев.

Кроме того, для ботов была удалена возможность фиксации в репозиториях homebrew/cask*, и в дальнейшем все pull-запросы потребуют ручного просмотра и утверждения.

Источники

править
 
Эта статья загружена автоматически ботом NewsBots и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.