LangChain опубликовала два GitHub Security Advisory для langgraph-api — runtime LangGraph Server, лежащего в основе LangGraph Platform, включая официальный Helm chart, — в 18:55:57 и 18:56:03 UTC 19 августа. Обе уязвимости связаны с ошибками авторизации между арендаторами в production-окружении agent runtime.
Две ошибки
CVE-2026-55236 (CVSS 5.9, с акцентом на конфиденциальность): путь создания запуска отправлял событие авторизации assistants.search, тогда как прямые чтения и операции cron отправляли assistants.read. В развертываниях, где собственный обработчик ограничивал доступ к assistant на основе assistants.read без глобального fallback, вообще не вызывался ни один обработчик при создании запуска — ограничение по владельцу исчезало, и в ответе возвращались metadata, config и context приватного assistant другого пользователя.
CVE-2026-55235 (CVSS 5.9, с акцентом на целостность): запуск или cron могли указать относительный webhook target. Затем доставка замыкалась обратно в то же приложение через in-process transport, который middleware аутентификации считает внутренним и не аутентифицирует, позволяя запросу создавать запуски в потоках другого пользователя или изменять их состояние.
Что упускает распространенный пересказ
Это будут описывать как новые уязвимости, найденные в LangGraph. Два уточнения. Во-первых, исправление было в PyPI уже с 11 июня 2026 года — первая исправленная версия 0.10.0, и с тех пор вышло еще четырнадцать релизов, вплоть до 0.12.6 18 августа. Любой, кто использовал относительно актуальную версию, никогда не был подвержен риску. То, что произошло 19 августа, было раскрытием, а не обнаружением, и не авральным исправлением.
Во-вторых, формулировка "cross-tenant data exposure in agent platform" преувеличивает масштаб. CVE-2026-55236 затрагивает только те развертывания, где был написан собственный обработчик авторизации, регистрирующий assistants.read или assistants.search без глобального обработчика; в advisory LangChain прямо сказано, что развертывания без собственных обработчиков или с эквивалентными фильтрами владельца для всех событий не затронуты. В обоих уведомлениях прямо сказано: "We have no evidence of this behavior occurring in the wild."
Форма ошибки — и есть история
Обе уязвимости возникают из одного и того же сбоя — agent runtime имеет более одного внутреннего пути к одному ресурсу, при этом имя события авторизации на одном из путей расходится, а затем добавляется "internal" transport, который полностью пропускает аутентификацию. Серверы для агентов как раз и накапливают такие поверхности: webhooks, crons, threads и runs обращаются к общему состоянию через разные точки входа. Этот класс находок будет повторяться снова и снова по структурным причинам, а не из-за чьей-то небрежности.
