Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-66908 — Apache Camel JWT 인증 우회(CVE-2026-66908)를 재현하는 개념 증명(PoC) 리프로듀서로, camel-platform-http-main에서 누락된 iss/aud 검증을 시연하며 Docker 기반 설정 및 검증 단계를 포함합니다. | Kitploit
도구/GitHubGitHub/oscerd/cve-2026-66908
Vulnerability AnalysisExploitationWeb SecurityAuthenticationLearning & Education
GitHuboscerd/cve-2026-66908

CVE-2026-66908

Apache Camel JWT 인증 우회(CVE-2026-66908)를 재현하는 개념 증명(PoC) 리프로듀서로, camel-platform-http-main에서 누락된 iss/aud 검증을 시연하며 Docker 기반 설정 및 검증 단계를 포함합니다.

저장소 보기
10시간 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-66908 — camel-platform-http-main JWT iss/aud 검증 누락

Apache Camel 취약점에 대한 실행 가능한 개념 증명(PoC) 재현기입니다. camel-main 임베디드 HTTP 서버는 jwtIssuer도 jwtAudience도 구성되지 않은 경우 키스토어만으로 JWT 인증기를 구축하므로, 수신 토큰은 서명과 만료 여부만 검사됩니다 — iss 및 aud 클레임은 전혀 검증되지 않습니다.

런타임디렉터리스택
Camel Main(독립 실행형)camel-main/camel-main 4.21.0 + camel-platform-http-main

왜 camel-main이지 Camel Spring Boot / Camel Quarkus가 아닌가? 취약한 클래스인 JWTAuthenticationConfigurer는 camel-platform-http-main, 즉 camel-main 임베디드 HTTP 서버(MainHttpServer)에 있으며, 이는 독립 실행형 camel-main 애플리케이션과 camel-jbang에서 사용됩니다. 이 서버는 Camel Spring Boot platform-http 통합(서블릿 기반)도 아니고 Camel Quarkus 통합(자체 보안을 가진 Quarkus/Vert.x HTTP)도 아니므로, 이 특정 결함에 대한 신뢰할 수 있는 Spring Boot 또는 Quarkus 재현기는 없습니다. 따라서 이 저장소는 이 버그의 정확한 호스트인 독립 실행형 camel-main 재현기를 제공합니다.

root@kitploit:~
cd camel-main
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit
docker compose down

영향을 받는 빌드에서의 예상 출력:

root@kitploit:~
[1] GET /protected with NO token                       -> HTTP 401  (auth is enforced)
[2] GET /protected with token iss=https://attacker.example aud=some-unrelated-service  -> HTTP 200  (ACCEPTED — iss/aud NOT validated)
[3] GET /protected with the same token but EXPIRED     -> HTTP 401  (expiry IS checked)
>>> PROVEN: ... the iss and aud claims were never checked ... : true

취약점 요약

보안 권고: https://camel.apache.org/security/CVE-2026-66908.html

수정 사항

4.22.0부터 JWT 키스토어가 구성되어 있는데 jwtIssuer도 jwtAudience도 설정되지 않은 경우, 서버는 누락된 속성을 명시하며 시작을 거부합니다. 실제로 서명 및 만료 확인만 수행하는 검증을 원하는 운영자는 camel.server.jwtAllowMissingIssuerAndAudience=true로 명시적으로 옵트인해야 합니다(기본값은 fail-closed).

root@kitploit:~
// fixed (JWTAuthenticationConfigurer.assertIssuerOrAudienceConfigured)
if (ObjectHelper.isEmpty(audience) && ObjectHelper.isEmpty(issuer)) {
    throw new IllegalArgumentException(
        "JWT authentication requires camel.server.jwtIssuer or camel.server.jwtAudience to be configured, ...");
}

면책 조항

이 저장소는 교육 및 방어 목적으로 공개되었습니다: Apache Camel 사용자가 취약점을 이해하고, 자신이 영향을 받는지 확인하며, 업그레이드를 통해 해결되는지 확인하도록 돕기 위한 것입니다. 토큰은 프로젝트에 번들로 포함된 일회용 데모 키스토어로 로컬에서 생성됩니다. 이 자료를 소유하거나 운영하지 않는 시스템에 사용하지 마십시오.

도구 다운로드
속성값
구성 요소camel-platform-http-main(camel-main 임베디드 HTTP 서버)
CWECWE-287(부적절한 인증) / CWE-1259(보안 클레임 검증 누락)
공격 경로신뢰된 키(예: 공유 JWKS)로 서명되었지만 다른 발급자/대상(audience)으로 발급된 JWT
영향서명 키를 공유하는 모든 당사자가 발급한 만료되지 않은 토큰이 수락됩니다 — 운영자가 생각하는 것보다 배포 환경이 덜 엄격한 보안을 적용합니다
영향을 받는 버전4.8.0부터 4.22.0 이전까지
수정된 버전4.22.0
JIRACAMEL-24281
공로n0mi1k