Аутсорсинг IT специалистов

Москва, Большой Сухаревский пер, д15, стр1, офис 3

← Журнал
Безопасность

Почтовый адрес на GNU Savannah открывал путь к коду на сервере

Редакция XORit · Источники, использование AI и исправления

Почтовый адрес на GNU Savannah открывал путь к коду на сервере
Фото: VectorVoyager, CC BY-SA 4.0

Команда Hacktron 30 октября 2026 года опубликовала разбор атаки на GNU Savannah, площадку с репозиториями Bash, Coreutils и сотен других проектов GNU. Ошибка в Savane, приложении на PHP, на котором работает форж, позволяла любому зарегистрированному пользователю выполнить свой код на сервере. Об уязвимости исследователи сообщили в FSF 11 мая 2026 года: организация закрыла 26 проблем и выпустила отчёт об инциденте.

Почтовый адрес как команда

Механизм оказался простым. Валидатор адресов Savane принимал в локальной части обратные кавычки, знак доллара, фигурные скобки, слэш и вертикальную черту: RFC разрешает такие символы в адресе. Адрес с командой внутри проходил регистрацию или смену почты. Дальше хватало зайти на страницу проверки GPG-ключа и нажать кнопку теста: Savane подставлял адрес в строку команды gpg, а proc_open с одной строкой отдаёт её в /bin/sh. Оболочка выполняла вложенную команду раньше, чем запускался gpg. Пробел обходили через ${IFS}, потому что валидатор его не пропускал.

Уязвимый путь появился в релизе Savane 3.17-c369 от 7 марта 2026 года и затронул savannah.gnu.org и savannah.nongnu.org, так что окно составляло около двух месяцев. Из полученной веб-оболочки исследователи прочитали конфигурацию Savane с учётными данными базы, выставили своему аккаунту флаг суперпользователя и обновили страницу.

В панели суперпользователя есть блок Become this user, который позволяет действовать от имени любого аккаунта без пароля. Исследователи ввели chet и попали на страницу SSH-ключей Чета Рэми, мейнтейнера Bash, где оставался пустой слот. Хостинг Git в Savannah привязан к этим записям, поэтому добавленный ключ дал бы право писать в апстрим Bash. Ключ они не добавляли и репозиторий не трогали; в отчёте отмечено, что в такой позиции атакующий мог бы запушить коммит под именем мейнтейнера, и то же самое касается Coreutils и других проектов.

Ядро, root и резервный сервер

Отдельно сыграло ядро. Savannah работает на Trisquel GNU/Linux 11 с linux-libre, собранным из 5.15 LTS Ubuntu 22.04, и это ядро оставалось уязвимым к двум багам OverlayFS 2023 года, CVE-2023-2640 и CVE-2023-32629, известным как GameOver(lay). Для 5.15 исправление вышло в USN-8255-1 7 мая 2026 года, за четыре дня до отчёта. Публичный эксплойт сработал с первой попытки и дал root на бэкенде. Уже как root исследователи нашли ключ, с которым можно было зайти по SSH на резервный хост GNU под пользователем gnubackup.

После первого отчёта Hacktron прогнали аудит по всей кодовой базе Savane, которая происходит от SourceForge 2001 года. Инструмент выдал 33 находки, 7 отбросили как ложные, а в FSF ушли 26: 2 критических, 6 высоких, 16 средних и 2 низких, с путями к файлам, номерами строк и шагами воспроизведения. Среди них обход авторизации в конфигурации админ-группы сайта, возможность любому участнику группы удалить её рассылки, смена адресов уведомлений трекера и XSS через поле настоящего имени.

Администратор Savannah Корвин Браст ответил в ту же ночь. FSF отнёсся к сообщению как к полной компрометации: обновили ядро, проверили права доступа, базы и журналы, предупредили оператора другой публичной инсталляции Savane. 14 мая 2026 года организация поставила исправленное ядро и удалила аккаунт исследователей. 19 июня вышел заявление FSF, 7 августа 2026 года опубликовали отчёт об инциденте и патчи Savane. Код, который лежит на Savannah, дальше расходится по дистрибутивам и оказывается на миллионах машин, и держат эту инфраструктуру несколько добровольцев и сотрудников FSF.

Изображение: VectorVoyager CC BY-SA 4.0 · Лицензия

Редакторы перевода: Соловьев В., Пеков А.

Источник материала: www.hacktron.ai ↗

← Все новостиЧитать XORit в Telegram ↗

Закажите звонок
или свяжитесь с нами

Заказать звонок

Ваша заявка успешно
отправлена

Мы свяжемся с вами в ближайшее время,
чтобы обсудить детали сотрудничества

Произошла ошибка
при отправке формы

Пожалуйста, попробуйте позже
или свяжитесь с нами напрямую: