Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Herramientas/GitHubGitHub/oscerd/cve-2026-85313
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebAuditoría de ConfiguraciónSeguridad WebAprendizaje y Educación
GitHuboscerd/cve-2026-85313

CVE-2026-85313

Prueba de concepto ejecutable de Spring Boot que reproduce CVE-2026-85313, donde Apache Camel camel-jetty enableCORS refleja cualquier origen con credenciales, además de un control con la versión corregida.

Ver Repositorio
9hace 1 díaAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2026-85313 — camel-jetty: enableCORS otorga acceso con credenciales desde cualquier origen

Reproductor de prueba de concepto ejecutable para la vulnerabilidad de Apache Camel en la que establecer enableCORS=true en un endpoint de Jetty instalaba el CrossOriginFilter de Jetty con sus valores predeterminados de fábrica — que reflejan todos los orígenes y permiten credenciales. Un operador que simplemente solicitó CORS obtenía una política que permite a una página de cualquier origen realizar solicitudes cross-origin con credenciales al endpoint y leer las respuestas. Un origen reflejado junto con Access-Control-Allow-Credentials: true es exactamente la configuración con credenciales desde cualquier origen que el estándar Fetch no permite expresar con * — siendo el reflejo la forma habitual de eludir esa regla (CWE-942).

Solo Spring Boot. Este reproductor incluye un único módulo de Camel Spring Boot. El fallo está en camel-jetty, que incorpora un servidor HTTP Jetty. Camel Quarkus no tiene una extensión camel-quarkus-jetty — Quarkus sirve HTTP sobre Vert.x (platform-http) — por lo que no existe una contraparte en Quarkus que reproducir. (El aviso complementario CVE-2026-85316 cubre la misma clase de defecto en platform-http-vertx.) El módulo de Spring Boot demuestra el comportamiento afectado y el corregido.

RuntimeDirectorioStack
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-jetty 4.22.0 (afectado; corregido en 4.22.1), Jetty 12.1.11

Qué demuestra

Dos servidores Jetty se ejecutan en un mismo proceso: el endpoint vulnerable /protected (puerto 8081) se declara con enableCORS=true, y un endpoint verificador /exploit/attack (puerto 8080) hace el papel del navegador del atacante. En cada llamada, el verificador envía un GET cross-origin a /protected con Origin: https://evil.example — un origen que el despliegue nunca autorizó — e informa las cabeceras CORS que se devuelven.

  • Afectado: la respuesta refleja Access-Control-Allow-Origin: https://evil.example y devuelve Access-Control-Allow-Credentials: true — cualquier origen puede leer respuestas con credenciales.
  • Corregido: el origen sigue reflejándose (para que CORS siga funcionando en solicitudes no autenticadas), pero Access-Control-Allow-Credentials ya no se envía para un origen que el operador no haya nombrado.
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: ACAO reflected + ACAC: true; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85313-jetty-cors-credentials-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: ACAO reflected, ACAC absent; >>> Not exploited

Resumen de la vulnerabilidad

PropiedadValor
Componentecamel-jetty (JettyHttpComponent, enableCORS)
CWECWE-942 (Política entre dominios permisiva con dominios no confiables)
GravedadMEDIA
Vector de ataqueUna página en cualquier origen emite una solicitud entre orígenes con credenciales a un endpoint configurado solo con enableCORS=true
ImpactoEl endpoint refleja el origen del atacante y otorga credenciales, por lo que la página del atacante puede leer respuestas autenticadas
Versiones afectadasDesde 4.0.0 anterior a 4.18.5, desde 4.19.0 anterior a 4.22.1
Versiones corregidas4.18.5, 4.22.1, 4.23.0
JIRACAMEL-24450
CréditoClaude Security Scan Tool

Aviso: https://camel.apache.org/security/CVE-2026-85313.html

La corrección

JettyHttpComponent ahora aplica sus propios valores predeterminados de CORS cuando se establece enableCORS: allowCredentials toma el valor predeterminado false a menos que el operador lo configure explícitamente. La reflexión de origen se deja intacta, por lo que habilitar CORS sigue funcionando para solicitudes que no llevan credenciales; un operador que necesite solicitudes entre orígenes con credenciales establece filterInit.allowCredentials=true y se espera que nombre los orígenes en filterInit.allowedOrigins (y se le advierte si no lo hace).

Mitigación si no puede actualizar

Configure los parámetros de CrossOriginFilter explícitamente en lugar de depender de lo que instala enableCORS: nombre los orígenes permitidos en filterInit.allowedOrigins y deje filterInit.allowCredentials desactivado a menos que los haya nombrado.

Descargo de responsabilidad

Este repositorio se publica con fines educativos y defensivos: para ayudar a los usuarios de Apache Camel a comprender la vulnerabilidad, verificar si se ven afectados y confirmar que la actualización la resuelve. El origen del "atacante" es un marcador de posición benigno (https://evil.example) y tanto el endpoint como la sonda se ejecutan dentro del reproductor. No utilice este material contra sistemas que no sean de su propiedad o que no opere.

Descargar herramienta