Пропуск сетевых модулей в сканере Langflow и десериализация в IBM MQ позволяют выполнить код на сервере

IBM

Три уязвимости в продуктах IBM открывают путь к захвату сервера Langflow OSS, выполнению чужого кода через JMS-клиент IBM MQ и краже конфиденциальных сведений из IBM Sterling File Gateway. Первые две требуют от атакующего лишь учётной записи в системе, третья обходится вообще без неё. Речь идёт о платформе для сборки приложений на базе языковых моделей, о брокере сообщений и о системе обмена файлами между компаниями. IBM закрыла все три ошибки и опубликовала бюллетени с оценками от 7.5 до 9.6 балла по шкале CVSS (общая система оценки уязвимостей). Упоминаний о том, что эти уязвимости уже используют в реальных атаках, в бюллетенях нет.

Детали уязвимостей

Самая высокая оценка досталась CVE-2026-12944 в Langflow OSS. Этот продукт собирает приложения из готовых компонентов, и перед сборкой встроенный сканер проверяет загруженный код на опасные операции. Разработчики внесли в чёрный список импорт подпроцессов, однако сетевые модули стандартной библиотеки, socket и urllib, в перечне не оказались. А ведь именно они открывают соединения и скачивают данные по ссылкам. Поэтому проверка спокойно пропускала компонент с сетевым обращением на уровне модуля.

Компонент исполнялся на сервере во время проверки, причём с правами суперпользователя. Сканер при этом отчитывался об успешной проверке. Ложный сигнал безопасности и составлял главную проблему. Атакующий с учётной записью получал несколько возможностей. Он мог подделать запросы на стороне сервера, то есть заставить Langflow обратиться к чужому адресу от своего имени (подделка запросов на стороне сервера, SSRF). Целью становилась служба метаданных облачного экземпляра. Оттуда он забирал учётные данные роли AWS и действовал от её имени, если экземпляр настроен на первую версию этой службы, которая отдаёт сведения без дополнительного подтверждения. Ещё он мог установить обратную оболочку, то есть получить удалённое управление контейнером. Третья возможность - выкачать файлы из файловой системы контейнера и перейти на соседние сервисы внутри сети Docker, включая PostgreSQL и Redis.

Атака идёт по сети, действий пользователя не требует и меняет область действия, поэтому IBM поставила 9.6 балла. Затронуты сборки Langflow OSS до 1.10.0, 1.10.2, 1.11.2 и 1.11.5 включительно. Исправление IBM называет в версии 1.10.1. Обходных мер нет. Разумное дополнение к обновлению - ограничить контейнеру доступ к службе метаданных облака и урезать права сервисной учётной записи, от имени которой он работает.

Вторая уязвимость, CVE-2026-13293, затрагивает IBM MQ. Это брокер сообщений, через который приложения обмениваются данными. Проблема сидит в Java-компоненте JMS (Java Message Service, интерфейс обмена сообщениями в среде Java). Клиент JMS сверяет входящие объекты со списком разрешённых классов и отбрасывает всё лишнее. Обойти список удалось, и потому десериализация недоверенных данных, то есть обратное превращение потока байтов в объекты, приводила к выполнению чужого кода. Пользователь с учётной записью мог прислать специально собранное сообщение, а код выполнялся на стороне получателя. Оценка IBM - 8.8 балла.

Затронуты ветки 9.1, 9.2, 9.3 и 9.4 в вариантах LTS, то есть в выпусках с длительным сроком поддержки, а также непрерывные сборки 9.3 и 9.4 и версия 10.0.0.0. Исправления вошли в накопительные обновления 9.1.0.38, 9.2.0.44, 9.3.0.42 и 9.4.0.26. Тем, кто работает на непрерывных сборках или на 10.0.0.0, предлагают перейти на 10.0.0.5. Обходных мер вендор не предложил. Опасность здесь в том, что брокер часто стоит в центре обмена данными между внутренними системами. Успешная атака даёт точку опоры в самой защищённой части инфраструктуры.

Третья уязвимость, CVE-2026-19290, относится к IBM Sterling File Gateway, платформе управляемого обмена файлами между организациями. Ошибка лежит в контроле доступа: сервер не проверяет, вправе ли обратившийся видеть запрошенные сведения. Учётная запись для атаки не нужна, участие пользователя тоже. Значит, перебирать адреса может любой, у кого есть сетевой доступ к системе. Оценка - 7.5 балла. Исправления вышли в выпусках 6.2.0.6_2, 6.2.1.2_1 и 6.2.2.1_1, образы контейнеров лежат в реестре IBM Entitled Registry. Для ветки 6.2.0.6_2 вендор советует обратиться в поддержку. Обходных путей снова нет.

Общего между тремя историями немного. Две касаются выполнения кода, одна - утечки, продукты из разных областей. Объединяет их другое. Во всех случаях механизм защиты существовал и выглядел рабочим, но охватывал не весь набор опасных операций. Чёрный список в сканере Langflow не учитывал сетевые модули. Список разрешённых классов в JMS-клиенте удалось обойти. Контроль доступа в Sterling File Gateway не сработал вовсе. Проверять стоит не сам факт наличия защиты, а полноту её настройки, и делать это до того, как система окажется в сети с широким доступом. Обновления закрывают все три уязвимости сразу, а сроки лучше сократить: две из них доступны пользователю с обычной учётной записью, а такие учётные записи есть почти в любом развёртывании.

Ссылки

Комментарии: 0