Capítulo 12. Entidad externa XML

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

XML External Entity (XXE) es una clasificación de ataque que suele ser muy sencilla de ejecutar, pero con resultados devastadores. Esta clasificación de ataque se basa en un analizador XML mal configurado dentro del código de una aplicación.

En general, casi todas las vulnerabilidades de ataque XXE se encuentran como resultado de un punto final de API que acepta una carga útil XML (o similar a XML). Puede que pienses que los puntos finales HTTP que aceptan XML son poco comunes, pero los formatos similares a XML incluyen SVG, HTML/DOM, PDF (XFDF) y RTF. Estos formatos similares a XML comparten muchas similitudes con la especificación XML y, como resultado, muchos analizadores XML también los aceptan como entradas.

La magia detrás de un ataque XXE es que la especificación XML incluye una anotación especial para importar archivos externos. Esta directiva especial, denominada entidad externa, se interpreta en la máquina en la que se evalúa el archivo XML. Esto significa que una carga útil XML especialmente diseñada enviada al analizador XML de un servidor podría comprometer archivos de la estructura de archivos de ese servidor. XXE se utiliza a menudo para comprometer archivos de otros usuarios, o para acceder a archivos como /etc/shadow que almacenan credenciales importantes necesarias para que un servidor basado en Unix funcione correctamente. ...

Get Seguridad de las Aplicaciones Web, 2ª Edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.