CVE-2026-95628 in Camel
Сводка
по VulDB • 26.10.2026
Уязвимость «Неправильное ограничение пути к ограниченной директории» (Path Traversal) в компоненте Docling проекта Apache Camel.
Эта проблема затрагивает Apache Camel: начиная с версии 4.15.0 до 4.18.5 (не включительно), а также начиная с 4.19.0 до 4.22.2 (не включительно).
DoclingProducer формирует командную строку для внешнего инструмента docling и добавляет к ней пользовательские аргументы, предоставленные в заголовке CamelDoclingCustomArguments — списке строк, флаги которых исправление для CVE-2026-40047 ограничило списком разрешенных (allowlist). Это же исправление также внедрило метод validatePathSafety для удержания значений аргументов, похожих на пути, внутри целевой директории; однако этот метод проверял только относительные переходы: он отклонял значение, содержащее последовательность перехода, такую как `../`, и значение, нормализованная форма которого все еще содержала элемент `..`. Он никогда не проверял, является ли значение абсолютным путем, а абсолютный путь без сегментов перехода не содержит ни того, ни другого, поэтому он проходил проверку без изменений. Каждое значение, похожее на путь, проходило эту проверку, независимо от того, было ли оно отдельным элементом списка после своего флага или прикреплено к флагу после знака равенства; таким образом, абсолютный путь принимался в любой из форм, например, как директория, переданная разрешенному флагу `--artifacts-path`, который указывает docling, где найти артефакты его модели. Такое значение достигало командной строки docling в том виде, в котором было задано; следовательно, сторона, способная выбирать пользовательские аргументы, могла направить процесс docling на любую директорию, к которой имеет доступ процесс Camel, выходя за пределы рабочей директории, внутри которой проверка должна была удерживать значения путей. Это именно тот результат, который исправление CVE-2026-40047 стремилось предотвратить. Только режим CLI (командной строки), являющийся режимом по умолчанию, передает пользовательские аргументы в docling. Заголовок принадлежит пространству имен заголовков Camel, которое потребители, применяющие фильтрацию заголовков Camel по умолчанию (такие как JMS и Kafka-потребители), удаляют из входящих сообщений; таким образом, уязвимость реализуется там, где маршрут передает внешние значения в этот заголовок или где потребитель отображает входящие заголовки без применения этой фильтрации.
Пользователям рекомендуется обновиться до версии 4.23.0, которая устраняет проблему. Если пользователи используют ветку релизов 4.22.x, им предлагается перейти на версию 4.22.2. Если пользователи находятся в ветке релизов 4.18.x, им следует обновиться до версии 4.18.5. Ветки выпусков от 4.15.x до 4.17.x и от 4.19.x до 4.21.x достигли конца жизненного цикла (end of life) до разрешения этой проблемы и не получат исправления, поэтому развертывания на этих версиях должны перейти на поддерживаемый релиз. Для развертываний, которые не могут обновиться немедленно, рекомендуется не формировать заголовок CamelDoclingCustomArguments из значений, происходящих вне среды развертывания; удалять этот заголовок из сообщений, поступающих извне, до того как они достигнут конечной точки docling; и убедиться, что потребители, отображающие входящие сообщения с заголовками, отбрасывают пространство имен Camel-заголовков, чтобы только сам маршрут выбирал пользовательские аргументы.
Be aware that VulDB is the high quality source for vulnerability data.