CVE-2026-90885
Apache Camel: Camel-Saxon XML 외부 엔티티 처리 - XQueryBuilder가 이미 javax.xml.transform.Source인 메시지 본문을 Saxon의 기본 파서 설정으로 파싱하여, 해당 본문에 선언된 외부 엔티티가 확인됨
- 게시됨
- 2026. 10. 26.
- 업데이트됨
- 2026. 10. 26.
- CNA 할당 중
- apache
- 증거 관찰됨
- 2026. 10. 30.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N낮음 · 다음 30일
- 백분위수
- 48.5%
- 모델 날짜
- 2026. 10. 29.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Apache Camel Saxon 구성 요소의 XML 외부 엔터티 참조 부적절한 제한 취약점. 이 문제는 Apache Camel에 영향을 미칩니다: 4.0.0부터 4.18.5 이전, 4.19.0부터 4.22.2 이전. camel-saxon의 XQueryBuilder는 xquery 언어 및 xquery 구성 요소의 표현식을 평가하며, 기본 Saxon Configuration을 파싱 옵션과 함께 구성할 때 공백 제거 규칙만 설정하여 XML 파서를 기본값으로 두었고, 이 기본값에서는 DOCTYPE 선언이 허용되고 외부 엔터티가 확인됩니다. String 또는 byte[] 유형의 메시지 본문, 또는 InputStream으로 읽은 모든 본문은 먼저 Camel 자체의 XML 유형 변환기에 의해 javax.xml.transform.Source로 변환되며, 이 변환기는 외부 엔터티에 대해 파서를 구성하므로 해당 본문은 영향을 받지 않았습니다. 그러나 이미 Source인 본문은 변경 없이 Saxon에 전달되었고, 해당 Source를 여전히 파싱해야 하는 경우(스트림 기반 Source가 그러하듯이) Saxon은 해당 Configuration으로 파싱하여 다른 본문 유형에 적용된 보호를 우회했습니다. 이러한 본문은 예를 들어 라우트가 convertBodyTo(Source.class)로 메시지를 변환한 후, 또는 라우트의 앞선 구성 요소나 프로세서가 본문을 스트림 기반 Source로 설정할 때 발생합니다. 따라서 해당 본문에 선언된 외부 서브셋이 있는 DOCTYPE 또는 외부 엔터티가 확인되어 표현식이 평가되는 문서로 확장되었습니다. XML이 이러한 형태로 XQuery 표현식 또는 xquery 엔드포인트에 도달하는 외부 발신자는 Camel 프로세스가 읽을 수 있는 파일을 읽고, 프로세스가 문서에 명시된 호스트로 요청을 보내도록 할 수 있었습니다. 라우트가 자체 옵션을 제공하지 않을 때마다 기본 Configuration이 사용되므로 비기본 옵션은 필요하지 않습니다. 사용자는 이 문제를 수정한 버전 4.23.0으로 업그레이드할 것을 권장합니다. 4.22.x 릴리스 스트림을 사용 중인 경우 4.22.2로 업그레이드할 것을 권장합니다. 4.18.x 릴리스 스트림을 사용 중인 경우 4.18.5로 업그레이드할 것을 권장합니다. 4.14.x 릴리스 스트림 및 그 이전 버전, 그리고 4.15.x~4.17.x 및 4.19.x~4.21.x 릴리스 라인은 이 문제가 해결되기 전에 수명 종료에 도달하여 수정 사항을 받지 못하므로, 해당 배포는 지원되는 릴리스로 이동해야 합니다. 즉시 업그레이드할 수 없는 배포의 경우, 신뢰할 수 없는 발신자의 XML을 포함한 본문이 이미 javax.xml.transform.Source인 메시지 본문에 대해 XQuery를 평가하지 말거나, xquery 엔드포인트 또는 언어의 configuration 옵션을 DOCTYPE 선언을 거부하고 외부 엔터티 및 외부 DTD 로딩을 비활성화하는 파싱 옵션을 가진 Saxon Configuration으로 설정하십시오. 이는 수정된 릴리스에서 이제 기본적으로 적용되는 사항입니다.
소스
CVE-2026-90885에 대한 실행 가능한 개념 증명 재현기로, Apache Camel camel-saxon XQuery의 XXE(CWE-611) 취약점을 다루며, Spring Boot 및 Quarkus 빌드와 수정 검증을 포함합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.