CVE-2026-78163
Apache Camel: невалидированный источник входных данных тела сообщения Camel-Docling позволяет осуществлять подделку запросов на стороне сервера и раскрытие локальных файлов
- Опубликовано
- 19 окт. 2026 г.
- Обновлено
- 19 окт. 2026 г.
- Назначение CNA
- apache
- Наблюдены доказательства
- 17 окт. 2026 г.
Первичный CVSS
cvelist · CVSS 3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:NРезюме
Уязвимость Server-Side Request Forgery (SSRF), неправильное ограничение пути к каталогу ('Path Traversal') и раскрытие конфиденциальной информации неавторизованному субъекту в компоненте Apache Camel Docling. Проблема затрагивает Apache Camel: с 4.15.0 до 4.18.5, с 4.19.0 до 4.22.1. DoclingProducer определял, что означает тело сообщения типа String, проверяя его префикс. Тело, начинающееся с http:// или https://, передавалось Docling как удалённый URL для загрузки, тело, начинающееся с / или содержащее обратную косую черту, читалось из локальной файловой системы, а всё остальное записывалось во временный файл и преобразовывалось как содержимое документа. Режим выбирался неявно, и ни одна опция эндпоинта не позволяла автору маршрута зафиксировать компонент на единственной интерпретации, поэтому маршрут, подразумевающий преобразование любого текста, поступающего в тело, незаметно превращался в загрузчик удалённых ресурсов или средство чтения локальных файлов всякий раз, когда текст случайно начинался с одного из этих префиксов. Единственной проверкой, применявшейся к полученному значению, была проверка размера, и эта проверка была обёрнута в тест на существование, поэтому путь, который ни к чему не приводил, или указывал на псевдофайл с нулевым размером, проходил вообще без проверки. Пять мест вызова достигали двух стоков: режим CLI добавлял значение как последний позиционный аргумент подпроцесса docling, а режим docling-serve передавал его либо в HttpSource для загрузки бэкендом, либо в Files.readAllBytes, чтобы содержимое можно было закодировать в base64 и загрузить. Поскольку тело обмена никогда не фильтруется через HeaderFilterStrategy, в отличие от пространства имён заголовков Camel, отправитель, способный поместить текст в сообщение, которое маршрут пересылает в эндпоинт docling, мог достичь обоих стоков без какого-либо согласия со стороны развёртывания. Пользователям рекомендуется обновиться до версии 4.23.0, в которой исправлена проблема. Если пользователи находятся на ветке релизов 4.22.x, им рекомендуется обновиться до 4.22.1. Если пользователи находятся на ветке релизов 4.18.x, им рекомендуется обновиться до 4.18.5. Ветка релизов 4.14.x и более ранние достигли окончания срока поддержки до того, как эта проблема была решена, и не получат исправления, поэтому развёртывания на этих линиях должны перейти на поддерживаемый релиз. Для развёртываний, которые не могут обновиться немедленно, не направляйте тела сообщений, происходящие извне развёртывания, в эндпоинт docling, а передавайте документ через типизированное тело, такое как File, byte[] или InputStream, либо через заголовок CamelDoclingInputFilePath, чтобы тело никогда не подвергалось интерпретации префикса.
Ответственное использование
Используйте информацию об уязвимостях только в тех системах, которыми вы владеете или имеете право тестировать. Kitploit ссылается на метаданные общедоступных исследований и не хранит код эксплойта или вредоносные полезные данные.