Уязвимость в Redis (CVE-2026-23631)
Введение
В Redis обнаружена уязвимость CVE-2026-23631, которая при определённых условиях может привести к удалённому выполнению произвольного кода на сервере.
Проблема связана с ошибкой управления памятью типа Use-After-Free в механизме синхронизации между основным сервером и репликами. Уязвимость затрагивает версии Redis с поддержкой Lua-скриптов до версии 8.6.3.
Что произошло
Ошибка находится в механизме обработки Lua-скриптов во время репликации данных между узлами Redis.
При определённой последовательности действий злоумышленник может вызвать ситуацию, когда Redis продолжает использовать уже освобождённый участок памяти. Это приводит к повреждению памяти процесса и потенциально позволяет выполнить произвольный код на целевой системе.
Для успешной эксплуатации должны выполняться следующие условия:
- включена поддержка Lua-скриптов;
- используется репликация Redis;
- параметр
replica-read-onlyотключён либо может быть отключён; - злоумышленник обладает действующей учётной записью Redis.
Особенности эксплуатации
В отличие от многих критических уязвимостей, данная проблема не позволяет атаковать сервер без авторизации.
Однако во многих инфраструктурах Redis используется:
- в качестве кэша приложений;
- для хранения сессий пользователей;
- в очередях обработки задач;
- в системах обмена сообщениями;
- в высоконагруженных кластерах с репликацией.
При наличии доступа к Redis злоумышленник может использовать механизм репликации для запуска специально подготовленного Lua-кода и добиться выполнения команд на сервере реплики.
Почему это опасно
Redis является одним из самых популярных хранилищ данных в современных веб-приложениях.
Уязвимость потенциально затрагивает:
- облачные платформы;
- контейнерные среды Docker;
- инфраструктуру Kubernetes;
- системы мониторинга;
- SaaS-платформы;
- высоконагруженные веб-сервисы.
Особенно высокий риск возникает в случаях, когда Redis доступен нескольким сервисам или используется как общий компонент инфраструктуры. Компрометация реплики может привести к дальнейшему развитию атаки внутри сети компании.
Уязвимость устранена в версии Redis 8.6.3.
Рекомендуемые действия:
- обновить Redis до версии 8.6.3 или новее;
- ограничить выполнение Lua-скриптов для пользователей, которым эта возможность не требуется;
- использовать параметр
replica-read-only yesна репликах; - проверить права пользователей Redis и минимизировать их привилегии;
- не публиковать Redis напрямую в интернет;
- ограничить доступ к Redis через firewall и ACL.
Дополнительно
Интересно, что CVE-2026-23631 вошла в состав крупного пакета исправлений безопасности Redis 8.6.3. Вместе с ней разработчики устранили ещё несколько ошибок управления памятью, которые также могли привести к выполнению произвольного кода.
Хотя для эксплуатации требуется авторизация, специалисты рекомендуют не откладывать обновление. В современных инфраструктурах Redis часто играет роль центрального компонента, а его компрометация может привести к развитию атаки на другие сервисы организации.
