Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-85296 — CVE-2026-85296을 재현하는 실행 가능한 Spring Boot 및 Quarkus 개념 증명으로, camel-as2의 파트너 간 MDN 서명 키 혼동(CWE-488) 취약점을 다루며, 취약 빌드와 수정된 빌드를 포함합니다. | Kitploit
도구/GitHubGitHub/oscerd/cve-2026-85296
Vulnerability AnalysisExploitationWeb Application ExploitationCryptographyLearning & Education
GitHuboscerd/cve-2026-85296

CVE-2026-85296

CVE-2026-85296을 재현하는 실행 가능한 Spring Boot 및 Quarkus 개념 증명으로, camel-as2의 파트너 간 MDN 서명 키 혼동(CWE-488) 취약점을 다루며, 취약 빌드와 수정된 빌드를 포함합니다.

저장소 보기
41일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-85296 — camel-as2: 파트너 간 MDN 서명 키 혼동

Apache Camel 취약점에 대한 실행 가능한 개념 증명(PoC) 재현기입니다. 이 취약점은 요청별 서명 자료가 처리 중인 요청에 국한되지 않고 요청 간에 공유되는 상태에 보관되었던 문제입니다. 단일 ResponseMDN이 공유 HttpProcessor에 등록되어 모든 AS2 요청을 처리합니다. 동적 키 구성(경로당 하나의 거래 파트너, 각 파트너의 키를 HttpContext에서 요청별로 해석)에서 영향을 받은 빌드는 해석된 요청별 서명 키를 인스턴스 필드에 다시 기록했습니다. 따라서 하나 이상의 파트너를 처리하는 배포에서는 동시 또는 연속 요청이 서로의 자료를 관찰할 수 있었고, MDN(Message Disposition Notification)이 다른 거래 파트너의 키로 서명될 수 있었습니다. AS2 배포는 설계상 일반적으로 다중 파트너이므로, 이 조건은 평범한 동시 트래픽만으로도 도달됩니다.

런타임디렉터리스택
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-as2 4.22.0 (영향받음; 4.22.1에서 수정)
Camel Quarkuscamel-quarkus/Quarkus 3.39.0 + camel-quarkus-as2 (Camel 4.22.0, 영향받음; 수정된 대조군 CQ 3.40.0 / Camel 4.22.1)

두 모듈 모두 영향받는 동작 및 수정된 동작을 보여줍니다.

입증 내용

드라이버는 실제 ResponseMDN(AS2 응답 인터셉터)을 동적 키 형태로 사용합니다. 두 파트너의 서명 자료를 차례로 — 파트너 A, 그다음 파트너 B — ResponseMDN.process(...)를 통해 해석하고(각각 해당 파트너의 RSA 키를 HttpContext에 넣음), 각 호출 후 인스턴스의 signingPrivateKey 필드를 읽습니다.

  • 영향받음: 파트너 A의 요청을 처리한 후 공유 인스턴스는 파트너 A의 개인 키를 보유합니다. 파트너 B의 요청 후에는 파트너 B의 키를 보유합니다. 요청별 키가 공유 인스턴스에 저장되므로, 한 파트너에 대한 동시 요청이 다른 파트너의 키를 읽고 그 키로 MDN에 서명할 수 있습니다.
  • 수정됨: 필드는 final이며 절대 기록되지 않습니다. 요청별 키는 요청에 국한되므로 공유 인스턴스의 signingPrivateKey는 null로 유지됩니다.
# Camel Spring Boot
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: per-request key on the shared instance; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85296-as2-signing-key-confusion-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: field stays null; >>> Not exploited
# Camel Quarkus
cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected (Camel 4.22.0): per-request key on the shared instance
docker compose down
# Patched control: CQ 3.40.0 ships Camel 4.22.1
mvn clean package -Dcamel-quarkus.version=3.40.0 -Dquarkus.platform.version=3.40.0
java -jar target/quarkus-app/quarkus-run.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: field stays null

취약점 요약

속성값
구성 요소camel-as2 (ResponseMDN 동적 키 처리)
CWECWE-488 (잘못된 세션에 데이터 요소 노출)
심각도MEDIUM
공격 벡터하나의 ResponseMDN 인스턴스를 공유하는 다중 파트너 배포 환경에서 발생하는 일반적인 동시 AS2 트래픽
영향다른 거래 파트너의 개인 키로 서명된 메시지 처리 알림(Message Disposition Notification); 파트너 간 서명 자료 재사용
영향받는 버전4.0.0부터 4.18.5 이전, 4.19.0부터 4.22.1 이전
수정된 버전4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24429
크레딧Claude Security Scan Tool

권고문: https://camel.apache.org/security/CVE-2026-85296.html

Quarkus의 영향받는 모듈은 CQ 3.39.0 (Camel 4.22.0)을 기반으로 빌드됩니다. 이 PoC에서 다루는 요청별 동적 AS2 서명 키 메커니즘은 CQ 3.29.0 (Camel 4.15.0) 이후에 도입되었으므로, CQ 3.39.0은 Spring Boot 모듈과 동일한 Camel 4.22.0을 포함합니다.

수정 사항

ResponseMDN은 구성된 보안 필드를 final로 만들고, 요청별 동적 자료를 process() 내부의 로컬 변수로 해석하며, 이를 인스턴스 필드에 다시 기록하지 않습니다. 따라서 단일 공유 인스턴스가 더 이상 한 요청의 서명 키를 다른 요청으로 유출할 수 없습니다.

업그레이드할 수 없는 경우의 완화 조치

거래 파트너별로 별도의 Camel 컨텍스트를 실행하여 파트너 간에 서명 자료가 공유되지 않도록 하십시오.

면책 조항

이 저장소는 교육 및 방어 목적으로 게시되었습니다. Apache Camel 사용자가 취약점을 이해하고, 영향을 받는지 확인하며, 업그레이드로 문제가 해결되는지 검증할 수 있도록 돕기 위한 것입니다. RSA 키 쌍은 시연을 위해 프로세스 내에서 생성되며 아무런 효력이 없습니다. 소유하거나 운영하지 않는 시스템에 이 자료를 사용하지 마십시오.

도구 다운로드