CVE-2026-40047
Apache Camel: Camel-Docling: недостаточная проверка пользовательских аргументов CLI позволяет внедрение аргументов и обход пути в DoclingProducer
- Опубликовано
- 6 июл. 2026 г.
- Обновлено
- 6 июл. 2026 г.
- Назначение CNA
- apache
- Наблюдены доказательства
- 6 авг. 2026 г.
Первичный CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NНизкий · следующие 30 дней
- Процентиль
- 83,4 %
- Дата модели
- 21 сент. 2026 г.
EPSS – это статистическая оценка, а не достоверность или мера воздействия. Объедините это с CVSS, статусом KEV, воздействием и вашей средой.
Резюме
Уязвимость, связанная с некорректной нейтрализацией разделителей аргументов в команде («внедрение аргументов»), в компоненте Apache Camel Docling. Компонент camel-docling вызывает внешний инструмент командной строки `docling`, собирая список аргументов в DoclingProducer и выполняя его через java.lang.ProcessBuilder. Пользовательские аргументы CLI, передаваемые через заголовок обмена `CamelDoclingCustomArguments` (List<String>), добавлялись к этому списку аргументов с недостаточной проверкой: исходная реализация полагалась на денylist запрещённых флагов и отклоняла только значения путей, содержащие буквальную последовательность `../`. В результате маршрут Camel, который передаёт данные, подверженные внешнему влиянию, в заголовок `CamelDoclingCustomArguments` (или в заголовки, содержащие пути, используемые для построения вызова), мог привести к тому, что производитель передавал нераспознанные или непредусмотренные флаги CLI `docling` дочернему процессу, а также мог передавать значения, похожие на пути, которые разрешались за пределами предполагаемого каталога через последовательности обхода, не перехватываемые буквальной проверкой `../`. Поскольку сам Camel строит вызов `docling` из этих значений, компонент несёт ответственность за их ограничение, а слабая проверка допускала внедрение аргументов CLI и обход каталога в аргументах, передаваемых внешнему инструменту. Вызов использует форму ProcessBuilder на основе списка, поэтому оболочка не интерпретирует значения аргументов; внедрение команд ОС через метасимволы оболочки было невозможно, а отклонение метасимволов, добавленное в исправлении, является защитой от ошибок. Эта проблема затрагивает Apache Camel: с 4.15.0 до 4.18.3. Пользователям рекомендуется обновиться до версии, содержащей исправление CAMEL-23212. В основной ветке исправление включено, начиная с Apache Camel 4.19.0 (и более поздних версий, таких как 4.20.0). Для пользователей ветки выпусков LTS 4.18.x необходимо обновиться до 4.18.3. Исправление заменяет денylist строгим allowlist распознаваемых флагов CLI `docling` (отклоняя любые нераспознанные флаги, а также флаги, управляемые производителем, такие как флаги выходного каталога), защитно отклоняет метасимволы оболочки в значениях аргументов и нормализует значения, похожие на пути, с помощью Path.normalize() перед их проверкой, чтобы последовательности обхода, обходящие буквальную проверку `../`, были обнаружены. В качестве защиты от ошибок авторам маршрутов следует избегать сопоставления недоверенного содержимого сообщений с заголовком `CamelDoclingCustomArguments` и заголовками, содержащими пути, а также удалять внутренние заголовки Camel из сообщений, поступающих от недоверенных производителей.
Ответственное использование
Используйте информацию об уязвимостях только в тех системах, которыми вы владеете или имеете право тестировать. Kitploit ссылается на метаданные общедоступных исследований и не хранит код эксплойта или вредоносные полезные данные.