Раньше такие ошибки считали проблемой для узкого круга администраторов. Теперь выяснилось, что в Gogs достаточно обычной учётной записи, чтобы через одну настройку добраться до запуска кода на сервере.
Критическая уязвимость затрагивает популярный self-hosted Git-сервис и получила оценку 9,4 балла по CVSS. Ошибка пока не получила CVE-идентификатор, а патча на момент публикации всё ещё нет.
Что произошло
Исследователи Rapid7 сообщили о критической уязвимости в Gogs — открытом Git-сервисе, который компании и команды часто разворачивают у себя. Дыра позволяет аутентифицированному пользователю запустить произвольный код на сервере.
Главная проблема в том, что атаке не нужен админский доступ. В ряде сценариев злоумышленнику хватает обычной регистрации, собственной репозитории и включённого режима «Rebase before merging».
Как работает атака
Схема завязана на Git rebase — механизме, который переписывает историю коммитов, перенося их поверх другой ветки. В Gogs этот процесс можно заставить принять вредоносное имя ветки, которое подсовывает флаг --exec в команду git rebase.
Этот флаг умеет запускать shell-команду после каждого переписанного коммита. В результате злоумышленник получает удалённое выполнение кода (RCE) на сервере без участия других пользователей.
По словам исследователя Джона Берджесса, уязвимость не требует взаимодействия с жертвой. Если на инстансе разрешена регистрация, атакующий может создать учётную запись, завести репозиторий и сам включить rebase merge в настройках.
Если создание репозиториев закрыто, условия всё равно остаются опасными. Тогда достаточно прав на запись в уже существующий проект, где rebase-слияние включено.
Чем это грозит компаниям
Последствия выходят далеко за пределы одного репозитория. Успешная эксплуатация может открыть доступ ко всему серверу, позволить украсть учётные данные, добраться до других узлов сети и изменить код в любых хранящихся проектах.
Отдельный риск — утечка между арендаторами на общем сервере. Rapid7 прямо указывает, что атакующий может читать приватные репозитории других пользователей, если они лежат на той же машине.
По оценке специалистов, в сети сейчас есть около 1 141 доступного из интернета экземпляра Gogs. Реальное число, вероятно, выше: часть инсталляций спрятана за внутренними сетями и средствами удалённого доступа. Для корпоративных команд это не повод паниковать, но серьёзный аргумент пересмотреть настройки, особенно если вы уже сталкивались с опасными RCE-дырами в серверных продуктах.
Что делать прямо сейчас
Авторы отчёта советуют не ждать обновления и сразу закрыть лишние возможности. Речь идёт о запрете регистрации, ограничении создания репозиториев и проверке настроек rebase merge.
Если ваш Git-сервис доступен сотрудникам извне или работает в общей инфраструктуре, полезно дополнительно проверить журналы и права доступа. Для команд, которые держат исходники на собственном сервере, это такой же важный элемент защиты, как контроль входящих писем от фишинга — особенно после историй вроде атак через поддельные служебные документы.
В повседневной работе стоит убрать всё лишнее, что расширяет поверхность атаки. Это касается и удобных функций, которые включали «на всякий случай»: они часто и становятся точкой входа.
Пользователям и администраторам, которые подключаются к внутренним ресурсам из поездок, отелей и кафе, стоит помнить и о защите трафика в открытых сетях. Для таких сценариев подойдёт сервис приватного подключения для поездок и офиса, если вы не хотите светить лишние метаданные в чужой сети.
- Проверить, включена ли регистрация новых пользователей в Gogs
- Ограничить создание репозиториев, если в этом нет бизнес-необходимости
- Выключить rebase merge там, где он не нужен
- Пересмотреть права записи в существующих проектах
- Проверить логи на странные HTTP 500 и подозрительные операции с pull request
- Сверить версию Gogs и план обновления, как только выйдет исправление
- Ограничить доступ к Git-сервису из внешней сети, если это допустимо по политике компании
- Проверить, не хранятся ли в репозиториях секреты, токены и пароли
Комментарии (0)
Будьте уважительны. Спам и ссылки на сторонние сервисы скрываются модерацией.
Пока комментариев нет. Вы можете быть первым.