CVE-2026-95628
Apache Camel: Camel-Docling 사용자 지정 CLI 인수 경로 검증이 절대 경로를 거부하지 않음 (CVE-2026-40047의 불완전한 수정)
- 게시됨
- 2026. 10. 26.
- 업데이트됨
- 2026. 10. 26.
- CNA 할당 중
- apache
- 증거 관찰됨
- 2026. 10. 30.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L낮음 · 다음 30일
- 백분위수
- 26.9%
- 모델 날짜
- 2026. 10. 29.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Apache Camel Docling 구성 요소의 경로명 제한 디렉터리 부적절 제한('경로 순회') 취약점입니다. 이 문제는 Apache Camel 4.15.0부터 4.18.5 이전, 4.19.0부터 4.22.2 이전 버전에 영향을 미칩니다. DoclingProducer는 외부 docling 도구의 명령줄을 구성하고, 여기에 CamelDoclingCustomArguments 헤더로 제공된 사용자 지정 인수를 추가합니다. 이 헤더는 문자열 목록이며, CVE-2026-40047에 대한 수정에서 해당 플래그가 허용 목록으로 제한되었습니다. 해당 수정은 또한 경로 형태의 인수 값을 의도된 디렉터리 내에 유지하기 위해 validatePathSafety를 도입했지만, 이 메서드는 상대 경로 순회만 검사했습니다. 즉, ../와 같은 순회 시퀀스를 포함하는 값과 정규화된 형태에 여전히 .. 요소가 남아 있는 값을 거부했습니다. 절대 경로인지 여부는 전혀 확인하지 않았으며, 순회 세그먼트가 없는 절대 경로는 두 조건 모두에 해당하지 않으므로 그대로 통과했습니다. 모든 경로 형태의 값은 플래그 뒤에 오는 별도의 목록 요소이든, 등호 뒤에 플래그에 붙은 형태이든 이 검사를 거쳤으므로, 절대 경로는 어느 형태로든 허용되었습니다. 예를 들어 허용 목록에 포함된 --artifacts-path 플래그에 지정된 디렉터리로 사용될 수 있었으며, 이 플래그는 docling에 모델 아티팩트를 찾을 위치를 알려줍니다. 이러한 값은 주어진 그대로 docling 명령줄에 도달했으므로, 사용자 지정 인수를 선택할 수 있는 주체는 docling 프로세스를 Camel 프로세스가 접근할 수 있는 임의의 디렉터리로 지정할 수 있었고, 이는 경로 값을 유지하도록 의도된 작업 디렉터리 외부였습니다. 이는 바로 CVE-2026-40047 수정이 방지하려던 결과입니다. 사용자 지정 인수를 docling에 전달하는 것은 기본값인 CLI 모드뿐입니다. 이 헤더는 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 릴리스 라인은 이 문제가 해결되기 전에 지원이 종료되었으며 수정 사항을 받지 못하므로, 해당 배포 환경은 지원되는 릴리스로 이동해야 합니다. 즉시 업그레이드할 수 없는 배포 환경의 경우, 배포 외부에서 발생한 값으로 CamelDoclingCustomArguments 헤더를 구성하지 말고, 외부에서 도착한 메시지가 docling 엔드포인트에 도달하기 전에 해당 헤더를 제거하며, 수신 메시지 헤더를 매핑하는 컨슈머가 Camel 헤더 네임스페이스를 제거하도록 하여 라우트 자체만 사용자 지정 인수를 선택하도록 해야 합니다.
소스
CVE-2026-95628에 대한 실행 가능한 개념 증명 재현기로, Apache Camel camel-docling의 절대 경로 검증 공백을 다루며 Spring Boot 및 Quarkus 하네스와 수정 검증을 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.