Хакеры начали эксплуатировать критическую уязвимость в платформе реактивных блокнотов с открытым исходным кодом Marimo всего через 10 часов после ее публичного раскрытия.
Эта уязвимость позволяет удаленно выполнять код без аутентификации в версиях Marimo 0.20.4 и более ранних. Она отслеживается как CVE-2026-39987, и GitHub оценил ее критическим баллом 9.3 из 10.
По словам исследователей из компании Sysdig, специализирующейся на облачной безопасности, злоумышленники создали эксплойт на основе информации из рекомендаций разработчика и немедленно начали использовать его в атаках, направленных на кражу конфиденциальной информации.
Marimo — это среда Python-блокнота с открытым исходным кодом, open-source, которую обычно используют специалисты по данным, практики машинного обучения/ИИ, исследователи и разработчики, создающие приложения для работы с данными или дашборды. Это довольно популярный проект, насчитывающий 20 000 звезд на GitHub и 1 000 форков.
CVE-2026-39987 вызвана тем, что конечная точка WebSocket ‘/terminal/ws’ предоставляет интерактивный терминал без надлежащих проверок аутентификации, допуская подключения от любого неаутентифицированного клиента.
Это дает прямой доступ к полноценной интерактивной оболочке, работающей с теми же привилегиями, что и процесс Marimo.
Marimo раскрыла уязвимость 8 апреля, а вчера выпустила версию 0.23.0 для ее устранения. Разработчики отметили, что уязвимость затрагивает пользователей, которые развернули Marimo как редактируемый блокнот, а также тех, кто предоставляет доступ к Marimo в общей сети с помощью флага –host 0.0.0.0 в режиме редактирования.
Эксплуатация в реальных условиях
В течение первых 12 часов после раскрытия сведений об уязвимости 125 IP-адресов начали разведывательную активность, по данным Sysdig.
Менее чем через 10 часов после раскрытия исследователи зафиксировали первую попытку эксплуатации в операции по краже учетных данных.
Злоумышленник сначала проверил уязвимость, подключившись к конечной точке /terminal/ws и выполнив короткую скриптовую последовательность для подтверждения удаленного выполнения команд, отключившись через несколько секунд.
Вскоре после этого он переподключился и начал ручную разведку, выполняя базовые команды, такие как pwd, whoami и ls, чтобы понять окружение, а затем предпринял попытки навигации по каталогам и проверки мест, связанных с SSH.
Далее злоумышленник сосредоточился на сборе учетных данных, немедленно нацелившись на файл .env и извлекая переменные окружения, включая облачные учетные данные и секреты приложений. Затем он попытался прочитать дополнительные файлы в рабочем каталоге и продолжил поиск SSH-ключей.

Весь этап получения доступа к учетным данным был завершен менее чем за три минуты, отмечается в отчете Sysdig на этой неделе.
Примерно через час злоумышленник вернулся для второй сессии эксплуатации, используя ту же эксплойт-последовательность.
Исследователи полагают, что за атакой стоит «методичный оператор» с практическим подходом, а не автоматизированные скрипты, сосредоточенный на целях высокой ценности, таких как кража учетных данных .env и SSH-ключей.
Злоумышленники не пытались установить постоянство, развернуть майнеры криптовалюты или бэкдоры, что указывает на быструю, скрытную операцию.
Пользователям Marimo рекомендуется немедленно обновиться до версии 0.23.0, отслеживать WebSocket-соединения к ‘/terminal/ws’, ограничить внешний доступ с помощью брандмауэра и сменить все раскрытые секреты.
Если обновление невозможно, эффективной мерой смягчения последствий является полная блокировка или отключение доступа к конечной точке ‘/terminal/ws’.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Bill Toulas




