🔍 CVE-2026-91858

6.5
CVSS Score
MEDIUM
2026-10-19
2026-10-19 20:45
✅ 완료

🇰🇷 한글 설명

FopProducer가 XSL-FO 메시지를 변환할 때 외부 DTD나 엔티티에 대한 접근 제한이 불충분하여 발생하는 취약점입니다. Saxon-HE와 같은 제3자 JAXP TransformerFactory가 클래스패스에 존재할 경우, FEATURE_SECURE_PROCESSING 설정만으로는 외부 리소스 접근을 차단하지 못해 파일 읽기 및 SSRF 공격이 가능해집니다.

💡 쉬운 설명

특정 설정이 되어 있는 시스템에서 외부에서 보낸 악성 문서를 처리할 때, 서버 내부의 파일을 몰래 읽거나 다른 서버로 공격 요청을 보낼 수 있는 보안 허점이 발견되었습니다. 이는 시스템에 설치된 특정 라이브러리가 보안 설정을 제대로 따르지 않기 때문에 발생합니다.

🇺🇸 원문 (English)

FopProducer transforms the incoming XSL-FO message body by creating a javax.xml.transform.TransformerFactory through TransformerFactory.newInstance() and enabling only FEATURE_SECURE_PROCESSING before running an identity transform over the body. On the JDK's built-in transformer, that feature alone already empties the accessExternalDTD and accessExternalStylesheet limits, so an external DTD or entity is refused. When a third-party JAXP TransformerFactory such as Saxon-HE is on the classpath, for example because the application also uses camel-xslt-saxon or camel-saxon, TransformerFactory.newInstance() returns that implementation instead, and FEATURE_SECURE_PROCESSING on its own does not restrict external resource access on it. A DOCTYPE with an external subset, or an external general entity, declared in the XSL-FO document is then resolved and expanded while the body is transformed. An external sender whose XSL-FO reaches a fop producer could therefore read files readable by the Camel process and cause the process to issue requests to hosts the document names. camel-fop does not bring such a factory itself, and excludes Xalan, so a default deployment using the JDK transformer is not affected; the issue is reachable only where another component has placed an alternative JAXP TransformerFactory on the classpath. Releases on the 4.14.x line and earlier reached end of life before this issue was resolved and do not receive a fix.

📍 영향받는 시스템

camel-fop 4.14.x 및 이전 버전 (해당 버전은 EOL 상태로 수정 패치 미제공)

⚔️ 공격 벡터

외부에서 조작된 DOCTYPE 또는 외부 엔티티가 포함된 XSL-FO 메시지를 전송하여 파일 읽기 및 SSRF 유도

🛡️ 대응 방법

영향을 받는 라이브러리 버전을 최신 보안 패치가 적용된 버전으로 업데이트하거나, 보안 설정이 강화된 TransformerFactory를 사용하도록 구성 변경

🔧 검증 코드

명령어 결과에 camel-fop 4.14.x 이하 버전과 Saxon-HE 등의 제3자 JAXP 구현체가 함께 나타나면 취약할 가능성이 높습니다.

Shell / Script
mvn dependency:tree | grep -E 'camel-fop|saxon-he|camel-xslt-saxon'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N

💻 영향받는 소프트웨어

IBM Verify Identity Access