В инфраструктуре GitHub обнаружили критическую уязвимость CVE-2026-3854, которая позволяла выполнять произвольный код на серверах платформы через обычную команду git push. Проблема затрагивала как GitHub.com, так и GitHub Enterprise Server.
Уязвимость нашла команда Wiz. Исследователи показали: достаточно иметь доступ к любому репозиторию, даже созданному самим атакующим, чтобы запустить код на бэкенд-серверах GitHub.
Механика атаки строилась на ошибке обработки данных во внутреннем протоколе Git. При передаче параметров через git push сервер некорректно обрабатывал специальные символы. Это открывало возможность внедрить дополнительные поля и изменить поведение внутренних сервисов.
Читайте также:
GitHub добавил ИИ-поиск уязвимостей в Code Security
После успешной эксплуатации атакующий получал доступ к инфраструктуре GitHub. В худшем сценарии это давало возможность выполнения команд на сервере, доступа к внутренним данным, чтению и изменению чужих репозиториев
Для GitHub Enterprise Server последствия были ещё серьёзнее — полный компромисс сервера с доступом ко всем проектам и секретам.
На GitHub[.]com ситуация осложнялась архитектурой хранения: уязвимость позволяла выполнять код на общих узлах хранения, где размещаются данные разных пользователей. Исследователи подтвердили, что в таком состоянии были доступны миллионы публичных и приватных репозиториев.
Отдельная деталь — простота эксплуатации. В отчётах подчёркивается, что для атаки не требовались сложные цепочки действий или редкие условия. Достаточно стандартного клиента Git и одной команды push с подготовленным параметром.
GitHub получил отчёт через bug bounty 4 марта 2026 года и отреагировал быстро. Уязвимость подтвердили в течение десятков минут и закрыли на основной платформе менее чем за несколько часов. Параллельно выпустили обновления для корпоративных версий.
Форензика не выявила признаков эксплуатации в реальных атаках. Это важный момент: баг находился в системе, но не был замечен злоумышленниками до публикации и исправления.
Тем не менее риск был максимальный. Любой пользователь с доступом к push мог использовать уязвимость. Ограничение по аутентификации в данном случае почти не снижало угрозу, так как создать собственный репозиторий может любой зарегистрированный пользователь.
Эксперты отдельно обращают внимание на архитектурную причину: ошибка возникла в точке, где пользовательские данные пересекаются с внутренними протоколами. Такие места считаются критическими, так как одна ошибка обработки может привести к выполнению кода на уровне всей платформы.
Есть новость? Станьте автором.
Мы сотрудничаем с независимыми исследователями и специалистами по кибербезопасности. Отправьте нам новость или предложите статью на рассмотрение редакции.