Утечка приватного email-адреса GitLab предоставляет злоумышленникам возможность вносить изменения в код и запускать автоматические задачи CI/CD от вашего имени. Эта уязвимость ставит под угрозу безопасность пользователей, так как команда GitLab не проверяет отправителя электронных писем.
Что произошло
Каждому пользователю GitLab предоставляется приватный email-адрес для отчётности по проблемам. Адрес используется для создания задач в проектах, но не имеет срока действия, что делает его опасным, если он попадёт в чужие руки. Aikido Security обнаружила, что email адреса для различных проектов одного пользователя содержат один и тот же токен, что даёт возможность выполнять любые действия в ваших проектах.
Подробности уязвимости
Злоумышленник, получивший доступ к такому адресу, может отправить email с изменениями, который GitLab выполнит от вашего имени. Для этого достаточно изменить суффикс в адресе с -issue на -merge-request. В результате может быть создана несанкционированная ветка кода, а если она влияет на файл .gitlab-ci.yml, то CI/CD задачи могут запуститься с вашими правами доступа.
Вторичный вопрос безопасности заключается в том, что GitLab не применяет ограничения по IP для входящей почты, что даёт возможность атаковать даже с неразрешённых адресов. Это позволяет злоумышленникам обходить двухфакторную аутентификацию для выполнения команд, что делает ситуацию особенно критической.
Что делать пользователям GitLab
Пользователи могут защитить себя, сбросив токен входящей почты на странице своих персональных токенов доступа. Это немедленно заменит все старые адреса, однако адреса, находящиеся в использовании, также перестанут работать до того, как вы не передадите новый адрес.
Анализ данной уязвимости подчеркивает важность информационной безопасности в облачных платформах и необходимости внимательного отношения к доступам и токенам. Для команд, работающих с GitLab, дальнейшая устойчивость их проектов требует мониторинга и регулярного обновления токенов доступа.
Следующий шаг для GitLab — развитие механизмов защиты от подобных уязвимостей, а также более тщательное документирование особенностей работы с токенами.