Бесплатно Экспресс-аудит сайта:

28.04.2021

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

<p>
     Японский исследователь в области безопасности, использующий псевдоним RyotaK, <a href=" https://brew.sh/2021/04/21/security-incident-disclosure/ ">обнаружил</a> критическую уязвимость в официальном репозитории Homebrew Cask. Ее эксплуатация позволяла злоумышленнику выполнить произвольный код на компьютерах пользователей c установленным ПО Homebrew.
</p>
<p>
     Homebrew — бесплатное решение для управления пакетами программного обеспечения с открытым исходным кодом, позволяющее устанавливать программное обеспечение на устройствах под управлением ОС macOS и Linux. Homebrew Cask расширяет функциональные возможности, включая рабочие процессы командной строки для приложений macOS на основе графического интерфейса пользователя, шрифтов, плагинов и другого программного обеспечения без открытого исходного кода.
</p>
<p>
     Проблема связана с обработкой изменений кода в репозитории на GitHub, что позволяло автоматически рассматривать и утверждать вредоносные pull-запросы<br>
</p>
<p>
     «Уязвимость позволяет злоумышленнику внедрить произвольный код в контейнер и автоматически объединить его. Это происходит из-за проблемы в зависимости git_diff действия GitHub review-cask-pr, которое используется для синтаксического анализа различий в pull-запросе для проверки. Синтаксический анализатор можно обмануть, и он полностью проигнорирует вредоносные строки, что приведет к успешному одобрению вредоносного pull-запроса», — пояснили представители Homebrew.
</p>
<p>
     Исследователь также продемонстрировал PoC-код для эксплуатации уязвимости. Разработчики Homebrew удалили автоматическое объединение кода в контейнере на GitHub, а также отключили и удалили действие review-cask-pr из всех уязвимых репозиториев.
</p>
<p>
     Кроме того, для ботов была удалена возможность фиксации в репозиториях homebrew/cask*, и в дальнейшем все pull-запросы потребуют ручного просмотра и утверждения.
</p>