Mastodon Mastodon Mastodon Mastodon

CVE-2026-39987 в Marimo: человек-оператор обошёл ловушки и достиг SSH-бастиона за восемь секунд

Фото автора

CyberSecureFox Editorial Team

Опубликовано:

Критическая уязвимость CVE-2026-39987 (CVSS 9.3) в интерактивных ноутбуках Marimo — предаутентификационное удалённое выполнение кода через WebSocket-эндпоинт терминала — внесена в каталог CISA KEV с крайним сроком устранения 7 мая 2026 года. По данным Sysdig, квалифицированный человек-оператор, используя собственный Python-инструментарий без какого-либо ИИ-агента, прошёл полную цепочку от уязвимого ноутбука до SSH-бастиона за восемь секунд — скорость, которую исследователи ранее ассоциировали исключительно с автоматизированными атаками. Уязвимость затрагивает версии Marimo ниже 0.23.0; патч доступен. Мы уже писали об уязвимостях в Marimo ранее.

Техническая суть уязвимости

Согласно рекомендации GitHub Advisory, CVE-2026-39987 классифицируется как CWE-306 — отсутствие аутентификации для критической функции. Эндпоинт /terminal/ws в Marimo принимает WebSocket-соединения без проверки подлинности, предоставляя неаутентифицированному атакующему полноценную интерактивную оболочку (PTY) и возможность произвольного выполнения команд.

Следует отметить расхождение в данных об уязвимых версиях: поле пакета в рекомендации GitHub указывает версии ниже 0.23.0 как затронутые, тогда как детальный раздел того же документа называет Marimo ≤ 0.20.4. Версия 0.23.0 указана как исправленная.

Анатомия атаки: девять часов, 850 команд, ноль публичных инструментов

По данным Sysdig (через их исследование), цепочка атаки развернулась следующим образом:

  • 18:57:22 — установлено WebSocket-соединение с уязвимым эндпоинтом
  • 18:57:26 — извлечены учётные данные AWS из хранилища приложения
  • 18:57:30 — SSH-аутентификация на бастионном хосте с использованием закрытого ключа из AWS Secrets Manager

Восемь секунд от первого подключения до полного контроля над бастионом. Как сообщает Sysdig, оператор использовал единственный фоновый вызов Python3, который в одном скрипте извлекал учётные данные, получал SSH-ключ из Secrets Manager, записывал его на диск и аутентифицировался на бастионе.

За девятичасовую сессию (с 12:52 до 21:50) атакующий выполнил более 850 интерактивных команд, не применив ни одного известного публичного наступательного инструмента. Все скрипты были написаны и отлажены вручную прямо в сессии. Sysdig особо подчёркивает: оператор обошёл ловушку, в которую попадал каждый профилированный ими автономный ИИ-агент при атаке на ту же уязвимость.

Источник первоначального подключения — IP-адрес 172.236.12[.]17. В ходе сессии атакующий развернул слушатель в стиле asyncssh на собственном VPS.

Контекст: ИИ ускоряет атаки, но не заменяет мастерство

Этот инцидент иллюстрирует важный тезис: хотя ИИ-инструменты сокращают время от обнаружения уязвимости до её эксплуатации и снижают порог входа для менее квалифицированных злоумышленников, опытные операторы способны действовать на той же скорости без автоматизации — и при этом эффективнее обходить защитные механизмы. Как отмечает Sysdig, ИИ меняет экономику атак (больше целей, быстрее эксплуатация, меньше рутины), но пока не заменил квалифицированного атакующего, умеющего создавать инструменты с нуля и избегать ловушек.

Параллельные кампании: Redis и Dahua

Криптомайнинг через Redis

Параллельно с событиями вокруг Marimo, Hunt.io раскрыла кампанию криптомайнинга, в ходе которой были скомпрометированы 3 562 сервера Redis из списка в 12 966 хостов, обнаруженных сканированием порта 6379. Среди предварительно отобранных серверов без аутентификации (2 342 хоста) уровень компрометации достиг 72,6%.

Жертвы работали на Redis версий от 2.8.17 (2015) до 7.2.0 (2023) и Linux от устаревших RHEL/CentOS 6 до актуальных ядер Ubuntu. Hunt.io указывает, что причиной массовой компрометации стало отсутствие аутентификации, а не уязвимость конкретной версии Redis.

Основной метод — команда SLAVEOF для подмены репликации (rogue replication), через которую на целевой сервер доставлялся майнер XMRig. Из четырёх опробованных техник только репликация сработала в масштабе: инъекция SSH-ключей через AOF и попытки выхода из песочницы MongoDB не дали результатов в 2 810 попытках. Цепочка компрометации WordPress была обнаружена, но не подтверждена в масштабе. Кампания не атрибутирована какой-либо известной группировке.

Индикаторы компрометации из исследования: IP-адреса 47.250.92[.]230, 34.166.99[.]116, 20.198.10[.]42, 188.245.99[.]156; домен pool.moneroocean[.]stream.

Operation CameraSwarm

По данным индекса блога Hunt.io, в рамках операции Operation CameraSwarm за 35 дней были скомпрометированы более 14 530 IP-камер Dahua на территории Украины и России. Атака использовала брутфорс и уязвимости обхода аутентификации CVE-2021-33044 и CVE-2021-33045 (обе — CVSS 9.8, CWE-287), а также технику P2P-ретрансляции. Обе уязвимости Dahua внесены в каталог CISA KEV с августа 2024 года.

Оценка воздействия

Наибольшему риску от CVE-2026-39987 подвержены организации, использующие Marimo для интерактивных вычислений в облачных средах, особенно при наличии доступа к AWS Secrets Manager с того же инстанса. Цепочка «WebSocket → учётные данные → SSH-бастион» демонстрирует, как единственная уязвимость в инструменте для работы с данными может привести к полной компрометации облачной инфраструктуры.

Кампания против Redis подчёркивает масштаб проблемы открытых баз данных без аутентификации: 72,6% незащищённых серверов были скомпрометированы.

Рекомендации

  • Marimo: немедленно обновите до версии 0.23.0 или выше. Если обновление невозможно — заблокируйте доступ к эндпоинту /terminal/ws на уровне сетевого контроля
  • AWS: проведите аудит инстансов, на которых работает Marimo, на предмет доступа к Secrets Manager. Ротируйте SSH-ключи и учётные данные AWS, хранящиеся в Secrets Manager, если инстанс был доступен извне
  • Redis: включите аутентификацию (requirepass), ограничьте сетевой доступ к порту 6379, отключите команду SLAVEOF через rename-command
  • Dahua: обновите прошивку устройств до версий, устраняющих CVE-2021-33044 и CVE-2021-33045, смените стандартные учётные данные
  • Проверьте наличие указанных IOC в сетевых логах

Инцидент с Marimo — наглядная демонстрация того, что защитные стратегии, рассчитанные на обнаружение автоматизированных атак, недостаточны: квалифицированный оператор способен пройти от уязвимости до полного контроля за секунды, используя только собственный код и избегая типичных индикаторов. Приоритет — обновление Marimo до 0.23.0 и аудит цепочки доступа от вычислительных ноутбуков к секретам облачной инфраструктуры.


CyberSecureFox Editorial Team

Редакция CyberSecureFox освещает новости кибербезопасности, уязвимости, malware-кампании, ransomware-активность, AI security, cloud security и security advisories вендоров. Материалы готовятся на основе official advisories, данных CVE/NVD, уведомлений CISA, публикаций вендоров и открытых отчётов исследователей. Статьи проверяются перед публикацией и обновляются при появлении новых данных.

Оставьте комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.