A4: XML External Entities (XXE) · 2017
Procesadores XML inseguros pueden resolver entidades externas y permitir lectura de archivos, solicitudes internas o denegación de servicio.
Resumen
Procesadores XML inseguros pueden resolver entidades externas y permitir lectura de archivos, solicitudes internas o denegación de servicio.
Cómo funciona el ataque
El analizador XML acepta una entidad externa y lee un archivo local de ejemplo al resolver el documento recibido.
Ejemplo
Vulnerable · Pseudocódigo<!DOCTYPE doc [
<!ENTITY note SYSTEM "file:///tmp/demo.txt">
]>
<doc>¬e;</doc>Corrección: Deshabilitar DTD y resolución de entidades externas en el analizador XML.
Prevención
- Deshabilitar DTD y entidades externas en todos los analizadores XML.
- Preferir formatos simples como JSON cuando XML no sea necesario.
- Actualizar bibliotecas y validar el contenido XML recibido.
Linaje
- 2013 · A5: Security Misconfiguration Baja al puesto 6 en 2017
- 2017 · A4: XML External Entities (XXE) Se integra en Security Misconfiguration
- 2017 · A6: Security Misconfiguration Se amplía con XXE en 2021
- 2021 · A05: Security Misconfiguration Absorbe XXE
- 2025 · A02: Security Misconfiguration Sube desde el puesto 5
- 2013:A5 → 2017:A6: Security Misconfiguration baja un puesto.
- 2017:A6 → 2021:A05: Security Misconfiguration sube un puesto.
- 2017:A4 → 2021:A05: XXE se integra en Security Misconfiguration.
- 2021:A05 → 2025:A02: Security Misconfiguration sube del puesto 5 al 2.