Критическая уязвимость Rails Active Storage с возможностью удалённого выполнения кода

В Rails закрыли критическую уязвимость Active Storage с потенциалом RCE

Разработчики Ruby on Rails выпустили экстренное обновление, закрывающее уязвимость CVE-2026-66066 во встроенном фреймворке для работы с файлами Active Storage. Проблема получила критический статус из-за возможности удалённого выполнения кода (RCE).

Active Storage отвечает за загрузку и хранение вложений. Если сервер принимает изображения от непроверенных пользователей и применяет для обработки библиотеку libvips, злоумышленник способен прочитать произвольные файлы приложения.

Как работает атака

Для эксплуатации требуется специально подготовленное изображение. После загрузки такого файла атакующий получает доступ к конфиденциальным данным процесса: переменным окружения, мастер-ключу secret_key_base, учётным записям баз данных и облачных хранилищ.

«Получив secret_key_base, злоумышленник завладевает криптографическим мастер-ключом приложения. Это даёт возможность подделывать сессионные cookie, подписывать глобальные идентификаторы и манипулировать сериализованными данными, что напрямую приводит к полному удалённому выполнению кода на сервере», — предупреждает команда Akamai.

Исследователи из Akamai назвали цепочку «KindaRails2Shell». После кражи ключа атакующий может десериализовать вредоносные объекты и выполнить произвольные команды с правами веб-приложения.

Затронутые версии и срочные меры

Опасности подвержены следующие редакции Rails:

  • Active Storage до 7.2.3.2
  • Rails 8.0.x до 8.0.5.1
  • Rails 8.1.x до 8.1.3.1
  • Rails 6.x — только при нестандартных настройках Active Storage

Рекомендации команды Rails жёсткие:

  • Немедленно обновиться до безопасных версий: 7.2.3.2, 8.0.5.1 или 8.1.3.1.
  • Обновить libvips до версии 8.13 или выше.
  • Сменить все секреты: secret_key_base, пароли баз данных, токены облачных сервисов.

Для тех, кто уже использует libvips 8.13+, временное решение — установить переменную окружения VIPS_BLOCK_UNTRUSTED или вызвать Vips.block_untrusted(true) в ruby-vips версии 2.2.1 и новее.

Раскрытие и реакция индустрии

Уязвимость обнаружили и ответственно передали специалистам Rails исследователи из Ethiack и GMO Flatt Security Inc. Планировалось опубликовать технические детали 28 августа, однако публичные доказательства концепции (PoC) появились почти мгновенно. Из-за этого сопровождающие решили немедленно раскрыть всю информацию и выпустить инструменты криминалистического анализа.

В официальных Docker-образах Rails, а также в сборках Debian и Ubuntu libvips используется по умолчанию. Пользователи ImageMagick данному вектору не подвержены.

Akamai совместно с Ethiack подготовила сигнатуры для веб-фаерволов (WAF) ещё до публичного разглашения, однако эксперты подчёркивают: WAF лишь даёт временную отсрочку. ИИ-инструменты позволяют быстро восстановить цепочку атаки по патч-диффу.

Читайте также: Что такое компьютерный вирус: история, виды и защита

Источник: BleepingComputer

Похожие записи