Icônes SCW
héros bg sans séparateur
Blog

Los codificadores conquistan la seguridad: serie Share & Learn - XXE Injection

Publié le 01 août 2019
Dernière mise à jour le 6 mars 2026

El ataque XML External Entity Injection, a veces abreviado simplemente como inyección XXE, es relativamente nuevo en comparación con algunas de las vulnerabilidades clásicas que siguen circulando años después de su inicio. Sin embargo, en la actualidad es extremadamente popular entre las comunidades de hackers, y lo es aún más a medida que acumula éxitos.

De hecho, OWASP ahora incluye la inyección XXE como una de las diez principales vulnerabilidades que los sitios deben vigilar y de las que deben defenderse activamente. Pero no te preocupes, la inyección XXE no es más potente que otros exploits que se utilizan en los ciberataques. Es solo que es un poco más nuevo y un poco menos entendido. Se puede prevenir y, de hecho, detener por completo.

En este episodio aprenderemos:

  • Cómo usan los atacantes las inyecciones XXE
  • Por qué la inyección XXE es peligrosa
  • Técnicas que pueden prevenir esta vulnerabilidad.

¿Cómo activan los atacantes una inyección XXE?

La vulnerabilidad de inyección XXE puede producirse cuando un usuario malintencionado tiene la posibilidad de enviar código XML. Utilizan esta capacidad para crear una referencia a una entidad externa. La referencia externa y el código están diseñados para eludir un analizador XML con la configuración predeterminada o uno con una configuración poco definida.

El atacante aprovecha el hecho de que el estándar XML define el concepto de entidad como una unidad de almacenamiento de algún tipo, pero ese almacenamiento puede ser externo o interno. Si se usa correctamente, puede permitir que los procesadores XML accedan a recursos remotos. La mayoría de las veces, los atacantes utilizan esta capacidad para investigar la estructura interna de un sitio web, lanzar un ataque de denegación de servicio mediante la activación de grandes procesos del sistema que intentan acceder a recursos remotos o incluso volcar datos de un servidor local a uno remoto que ellos controlan, lo que la convierte en una buena técnica para filtrar datos importantes, como contraseñas o información personal, contenidos en la base de datos XML.

El código real implicado en el ataque suele ser bastante simplista y se limita a explotar la funcionalidad de la entidad. Por ejemplo, esto podría permitir a un pirata informático acceder al archivo de contraseñas maestras:

<!

¿Por qué es peligrosa la inyección XXE?

Hay algunas razones por las que los ataques con inyección de XXE son tan peligrosos y también frecuentes. Por un lado, es una vulnerabilidad menos conocida en este momento. Y los beneficios que un atacante puede obtener al explotarla son considerables. Por un lado, puede permitir a los atacantes persistentes mapear lentamente todas las rutas de una red interna o incluso escanear los puertos. Aunque esto puede llevar bastante tiempo, es casi imposible que las defensas activas de la red objetivo descubran la actividad de un pirata informático, ya que lo único que hacen es enviar código XML a un servidor que está siendo borrado por un analizador XML de confianza.

Una vez mapeados, los atacantes pueden usar las mismas técnicas de inyección XXE para capturar los archivos que necesiten, ya sea robando información directamente o comprometiendo las credenciales de usuario válidas y usándolas para ataques secundarios. Por último, los atacantes que solo quieren hacer ruido y ser malintencionados pueden hacer cosas como lanzar ataques de denegación de servicio y ordenar a la aplicación que intente acceder a recursos distantes diseñados para atascar el sistema.

Eliminación de la vulnerabilidad de la inyección XXE

Debido al rápido aumento de los ataques de inyección XXE, muchos analizadores XML están empezando a deshabilitar las entidades externas, a veces denominadas DTD, por completo de forma predeterminada. Para ellos, la clave es simplemente no habilitar esa funcionalidad.

Pero incluso los analizadores que permiten DTD pueden tener esa funcionalidad deshabilitada. En general, se necesitará una sentencia como la siguiente para bloquearlo por completo, pero consulte la documentación de su marco local para obtener el código exacto que necesita.

Factory.setFeature (» http://apache.org/xml/features/disallow-doctype-decl «, verdadero);

Siguiendo los principios de seguridad, todas las entradas de los usuarios deben desinfectarse y validarse mediante filtros para toda la aplicación. No olvides incluir los parámetros GET y POST, los encabezados HTTP y las cookies. También puedes crear una lista blanca de comandos y DTD específicos que quieras que procese el analizador, y no permitir todo lo demás.

Si bien las listas blancas y el filtrado funcionan, debido al creciente número de ataques de inyección XXE, se sigue recomendando deshabilitar por completo la compatibilidad con DTD si la funcionalidad no es necesaria.

Más información sobre las inyecciones XXE

Para leer más, puede echar un vistazo a lo que dice OWASP sobre Ataques por inyección XXE. También puedes poner a prueba tus nuevos conocimientos defensivos con el demo gratuita de la plataforma Secure Code Warrior, que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para obtener más información sobre cómo derrotar esta vulnerabilidad y la galería de otras amenazas de los delincuentes, visita la Blog de Secure Code Warrior.

Veuillez consulter la ressource
Veuillez consulter la ressource

El ataque XML External Entity Injection, a veces abreviado simplemente como inyección XXE, es relativamente nuevo, pero es extremadamente popular entre las comunidades de hackers en la actualidad, y crece aún más a medida que acumula éxitos.

Souhaitez-vous en savoir davantage ?

En savoir plus

Secure Code Warrior là pour aider votre organisation à protéger le code tout au long du cycle de vie du développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez administrateur AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Veuillez réserver une démonstration.
Partager sur :
marques LinkedInSocialLogo x
auteur
Publié le 01 août 2019

Partager sur :
marques LinkedInSocialLogo x

El ataque XML External Entity Injection, a veces abreviado simplemente como inyección XXE, es relativamente nuevo en comparación con algunas de las vulnerabilidades clásicas que siguen circulando años después de su inicio. Sin embargo, en la actualidad es extremadamente popular entre las comunidades de hackers, y lo es aún más a medida que acumula éxitos.

De hecho, OWASP ahora incluye la inyección XXE como una de las diez principales vulnerabilidades que los sitios deben vigilar y de las que deben defenderse activamente. Pero no te preocupes, la inyección XXE no es más potente que otros exploits que se utilizan en los ciberataques. Es solo que es un poco más nuevo y un poco menos entendido. Se puede prevenir y, de hecho, detener por completo.

En este episodio aprenderemos:

  • Cómo usan los atacantes las inyecciones XXE
  • Por qué la inyección XXE es peligrosa
  • Técnicas que pueden prevenir esta vulnerabilidad.

¿Cómo activan los atacantes una inyección XXE?

La vulnerabilidad de inyección XXE puede producirse cuando un usuario malintencionado tiene la posibilidad de enviar código XML. Utilizan esta capacidad para crear una referencia a una entidad externa. La referencia externa y el código están diseñados para eludir un analizador XML con la configuración predeterminada o uno con una configuración poco definida.

El atacante aprovecha el hecho de que el estándar XML define el concepto de entidad como una unidad de almacenamiento de algún tipo, pero ese almacenamiento puede ser externo o interno. Si se usa correctamente, puede permitir que los procesadores XML accedan a recursos remotos. La mayoría de las veces, los atacantes utilizan esta capacidad para investigar la estructura interna de un sitio web, lanzar un ataque de denegación de servicio mediante la activación de grandes procesos del sistema que intentan acceder a recursos remotos o incluso volcar datos de un servidor local a uno remoto que ellos controlan, lo que la convierte en una buena técnica para filtrar datos importantes, como contraseñas o información personal, contenidos en la base de datos XML.

El código real implicado en el ataque suele ser bastante simplista y se limita a explotar la funcionalidad de la entidad. Por ejemplo, esto podría permitir a un pirata informático acceder al archivo de contraseñas maestras:

<!

¿Por qué es peligrosa la inyección XXE?

Hay algunas razones por las que los ataques con inyección de XXE son tan peligrosos y también frecuentes. Por un lado, es una vulnerabilidad menos conocida en este momento. Y los beneficios que un atacante puede obtener al explotarla son considerables. Por un lado, puede permitir a los atacantes persistentes mapear lentamente todas las rutas de una red interna o incluso escanear los puertos. Aunque esto puede llevar bastante tiempo, es casi imposible que las defensas activas de la red objetivo descubran la actividad de un pirata informático, ya que lo único que hacen es enviar código XML a un servidor que está siendo borrado por un analizador XML de confianza.

Una vez mapeados, los atacantes pueden usar las mismas técnicas de inyección XXE para capturar los archivos que necesiten, ya sea robando información directamente o comprometiendo las credenciales de usuario válidas y usándolas para ataques secundarios. Por último, los atacantes que solo quieren hacer ruido y ser malintencionados pueden hacer cosas como lanzar ataques de denegación de servicio y ordenar a la aplicación que intente acceder a recursos distantes diseñados para atascar el sistema.

Eliminación de la vulnerabilidad de la inyección XXE

Debido al rápido aumento de los ataques de inyección XXE, muchos analizadores XML están empezando a deshabilitar las entidades externas, a veces denominadas DTD, por completo de forma predeterminada. Para ellos, la clave es simplemente no habilitar esa funcionalidad.

Pero incluso los analizadores que permiten DTD pueden tener esa funcionalidad deshabilitada. En general, se necesitará una sentencia como la siguiente para bloquearlo por completo, pero consulte la documentación de su marco local para obtener el código exacto que necesita.

Factory.setFeature (» http://apache.org/xml/features/disallow-doctype-decl «, verdadero);

Siguiendo los principios de seguridad, todas las entradas de los usuarios deben desinfectarse y validarse mediante filtros para toda la aplicación. No olvides incluir los parámetros GET y POST, los encabezados HTTP y las cookies. También puedes crear una lista blanca de comandos y DTD específicos que quieras que procese el analizador, y no permitir todo lo demás.

Si bien las listas blancas y el filtrado funcionan, debido al creciente número de ataques de inyección XXE, se sigue recomendando deshabilitar por completo la compatibilidad con DTD si la funcionalidad no es necesaria.

Más información sobre las inyecciones XXE

Para leer más, puede echar un vistazo a lo que dice OWASP sobre Ataques por inyección XXE. También puedes poner a prueba tus nuevos conocimientos defensivos con el demo gratuita de la plataforma Secure Code Warrior, que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para obtener más información sobre cómo derrotar esta vulnerabilidad y la galería de otras amenazas de los delincuentes, visita la Blog de Secure Code Warrior.

Veuillez consulter la ressource
Veuillez consulter la ressource

Veuillez remplir le formulaire suivant pour télécharger le rapport.

Nous souhaiterions obtenir votre autorisation pour vous envoyer des informations sur nos produits ou sur des sujets liés au codage sécurisé. Nous traiterons toujours vos données personnelles avec le plus grand soin et ne les vendrons jamais à d'autres entreprises à des fins de marketing.

Envoyer
icône de réussite scw
icône d'erreur scw
Pour envoyer le formulaire, veuillez activer les cookies « d'analyse ». N'hésitez pas à les désactiver à nouveau une fois que vous avez terminé.

El ataque XML External Entity Injection, a veces abreviado simplemente como inyección XXE, es relativamente nuevo en comparación con algunas de las vulnerabilidades clásicas que siguen circulando años después de su inicio. Sin embargo, en la actualidad es extremadamente popular entre las comunidades de hackers, y lo es aún más a medida que acumula éxitos.

De hecho, OWASP ahora incluye la inyección XXE como una de las diez principales vulnerabilidades que los sitios deben vigilar y de las que deben defenderse activamente. Pero no te preocupes, la inyección XXE no es más potente que otros exploits que se utilizan en los ciberataques. Es solo que es un poco más nuevo y un poco menos entendido. Se puede prevenir y, de hecho, detener por completo.

En este episodio aprenderemos:

  • Cómo usan los atacantes las inyecciones XXE
  • Por qué la inyección XXE es peligrosa
  • Técnicas que pueden prevenir esta vulnerabilidad.

¿Cómo activan los atacantes una inyección XXE?

La vulnerabilidad de inyección XXE puede producirse cuando un usuario malintencionado tiene la posibilidad de enviar código XML. Utilizan esta capacidad para crear una referencia a una entidad externa. La referencia externa y el código están diseñados para eludir un analizador XML con la configuración predeterminada o uno con una configuración poco definida.

El atacante aprovecha el hecho de que el estándar XML define el concepto de entidad como una unidad de almacenamiento de algún tipo, pero ese almacenamiento puede ser externo o interno. Si se usa correctamente, puede permitir que los procesadores XML accedan a recursos remotos. La mayoría de las veces, los atacantes utilizan esta capacidad para investigar la estructura interna de un sitio web, lanzar un ataque de denegación de servicio mediante la activación de grandes procesos del sistema que intentan acceder a recursos remotos o incluso volcar datos de un servidor local a uno remoto que ellos controlan, lo que la convierte en una buena técnica para filtrar datos importantes, como contraseñas o información personal, contenidos en la base de datos XML.

El código real implicado en el ataque suele ser bastante simplista y se limita a explotar la funcionalidad de la entidad. Por ejemplo, esto podría permitir a un pirata informático acceder al archivo de contraseñas maestras:

<!

¿Por qué es peligrosa la inyección XXE?

Hay algunas razones por las que los ataques con inyección de XXE son tan peligrosos y también frecuentes. Por un lado, es una vulnerabilidad menos conocida en este momento. Y los beneficios que un atacante puede obtener al explotarla son considerables. Por un lado, puede permitir a los atacantes persistentes mapear lentamente todas las rutas de una red interna o incluso escanear los puertos. Aunque esto puede llevar bastante tiempo, es casi imposible que las defensas activas de la red objetivo descubran la actividad de un pirata informático, ya que lo único que hacen es enviar código XML a un servidor que está siendo borrado por un analizador XML de confianza.

Una vez mapeados, los atacantes pueden usar las mismas técnicas de inyección XXE para capturar los archivos que necesiten, ya sea robando información directamente o comprometiendo las credenciales de usuario válidas y usándolas para ataques secundarios. Por último, los atacantes que solo quieren hacer ruido y ser malintencionados pueden hacer cosas como lanzar ataques de denegación de servicio y ordenar a la aplicación que intente acceder a recursos distantes diseñados para atascar el sistema.

Eliminación de la vulnerabilidad de la inyección XXE

Debido al rápido aumento de los ataques de inyección XXE, muchos analizadores XML están empezando a deshabilitar las entidades externas, a veces denominadas DTD, por completo de forma predeterminada. Para ellos, la clave es simplemente no habilitar esa funcionalidad.

Pero incluso los analizadores que permiten DTD pueden tener esa funcionalidad deshabilitada. En general, se necesitará una sentencia como la siguiente para bloquearlo por completo, pero consulte la documentación de su marco local para obtener el código exacto que necesita.

Factory.setFeature (» http://apache.org/xml/features/disallow-doctype-decl «, verdadero);

Siguiendo los principios de seguridad, todas las entradas de los usuarios deben desinfectarse y validarse mediante filtros para toda la aplicación. No olvides incluir los parámetros GET y POST, los encabezados HTTP y las cookies. También puedes crear una lista blanca de comandos y DTD específicos que quieras que procese el analizador, y no permitir todo lo demás.

Si bien las listas blancas y el filtrado funcionan, debido al creciente número de ataques de inyección XXE, se sigue recomendando deshabilitar por completo la compatibilidad con DTD si la funcionalidad no es necesaria.

Más información sobre las inyecciones XXE

Para leer más, puede echar un vistazo a lo que dice OWASP sobre Ataques por inyección XXE. También puedes poner a prueba tus nuevos conocimientos defensivos con el demo gratuita de la plataforma Secure Code Warrior, que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para obtener más información sobre cómo derrotar esta vulnerabilidad y la galería de otras amenazas de los delincuentes, visita la Blog de Secure Code Warrior.

Veuillez consulter le webinaire
Commencer
En savoir plus

Veuillez cliquer sur le lien ci-dessous et télécharger le PDF de cette ressource.

Secure Code Warrior là pour aider votre organisation à protéger le code tout au long du cycle de vie du développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez administrateur AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Veuillez consulter le rapportVeuillez réserver une démonstration.
Télécharger le PDF
Veuillez consulter la ressource
Partager sur :
marques LinkedInSocialLogo x
Souhaitez-vous en savoir davantage ?

Partager sur :
marques LinkedInSocialLogo x
auteur
Publié le 01 août 2019

Partager sur :
marques LinkedInSocialLogo x

El ataque XML External Entity Injection, a veces abreviado simplemente como inyección XXE, es relativamente nuevo en comparación con algunas de las vulnerabilidades clásicas que siguen circulando años después de su inicio. Sin embargo, en la actualidad es extremadamente popular entre las comunidades de hackers, y lo es aún más a medida que acumula éxitos.

De hecho, OWASP ahora incluye la inyección XXE como una de las diez principales vulnerabilidades que los sitios deben vigilar y de las que deben defenderse activamente. Pero no te preocupes, la inyección XXE no es más potente que otros exploits que se utilizan en los ciberataques. Es solo que es un poco más nuevo y un poco menos entendido. Se puede prevenir y, de hecho, detener por completo.

En este episodio aprenderemos:

  • Cómo usan los atacantes las inyecciones XXE
  • Por qué la inyección XXE es peligrosa
  • Técnicas que pueden prevenir esta vulnerabilidad.

¿Cómo activan los atacantes una inyección XXE?

La vulnerabilidad de inyección XXE puede producirse cuando un usuario malintencionado tiene la posibilidad de enviar código XML. Utilizan esta capacidad para crear una referencia a una entidad externa. La referencia externa y el código están diseñados para eludir un analizador XML con la configuración predeterminada o uno con una configuración poco definida.

El atacante aprovecha el hecho de que el estándar XML define el concepto de entidad como una unidad de almacenamiento de algún tipo, pero ese almacenamiento puede ser externo o interno. Si se usa correctamente, puede permitir que los procesadores XML accedan a recursos remotos. La mayoría de las veces, los atacantes utilizan esta capacidad para investigar la estructura interna de un sitio web, lanzar un ataque de denegación de servicio mediante la activación de grandes procesos del sistema que intentan acceder a recursos remotos o incluso volcar datos de un servidor local a uno remoto que ellos controlan, lo que la convierte en una buena técnica para filtrar datos importantes, como contraseñas o información personal, contenidos en la base de datos XML.

El código real implicado en el ataque suele ser bastante simplista y se limita a explotar la funcionalidad de la entidad. Por ejemplo, esto podría permitir a un pirata informático acceder al archivo de contraseñas maestras:

<!

¿Por qué es peligrosa la inyección XXE?

Hay algunas razones por las que los ataques con inyección de XXE son tan peligrosos y también frecuentes. Por un lado, es una vulnerabilidad menos conocida en este momento. Y los beneficios que un atacante puede obtener al explotarla son considerables. Por un lado, puede permitir a los atacantes persistentes mapear lentamente todas las rutas de una red interna o incluso escanear los puertos. Aunque esto puede llevar bastante tiempo, es casi imposible que las defensas activas de la red objetivo descubran la actividad de un pirata informático, ya que lo único que hacen es enviar código XML a un servidor que está siendo borrado por un analizador XML de confianza.

Una vez mapeados, los atacantes pueden usar las mismas técnicas de inyección XXE para capturar los archivos que necesiten, ya sea robando información directamente o comprometiendo las credenciales de usuario válidas y usándolas para ataques secundarios. Por último, los atacantes que solo quieren hacer ruido y ser malintencionados pueden hacer cosas como lanzar ataques de denegación de servicio y ordenar a la aplicación que intente acceder a recursos distantes diseñados para atascar el sistema.

Eliminación de la vulnerabilidad de la inyección XXE

Debido al rápido aumento de los ataques de inyección XXE, muchos analizadores XML están empezando a deshabilitar las entidades externas, a veces denominadas DTD, por completo de forma predeterminada. Para ellos, la clave es simplemente no habilitar esa funcionalidad.

Pero incluso los analizadores que permiten DTD pueden tener esa funcionalidad deshabilitada. En general, se necesitará una sentencia como la siguiente para bloquearlo por completo, pero consulte la documentación de su marco local para obtener el código exacto que necesita.

Factory.setFeature (» http://apache.org/xml/features/disallow-doctype-decl «, verdadero);

Siguiendo los principios de seguridad, todas las entradas de los usuarios deben desinfectarse y validarse mediante filtros para toda la aplicación. No olvides incluir los parámetros GET y POST, los encabezados HTTP y las cookies. También puedes crear una lista blanca de comandos y DTD específicos que quieras que procese el analizador, y no permitir todo lo demás.

Si bien las listas blancas y el filtrado funcionan, debido al creciente número de ataques de inyección XXE, se sigue recomendando deshabilitar por completo la compatibilidad con DTD si la funcionalidad no es necesaria.

Más información sobre las inyecciones XXE

Para leer más, puede echar un vistazo a lo que dice OWASP sobre Ataques por inyección XXE. También puedes poner a prueba tus nuevos conocimientos defensivos con el demo gratuita de la plataforma Secure Code Warrior, que forma a los equipos de ciberseguridad para que se conviertan en los mejores ciberguerreros. Para obtener más información sobre cómo derrotar esta vulnerabilidad y la galería de otras amenazas de los delincuentes, visita la Blog de Secure Code Warrior.

Table des matières

Télécharger le PDF
Veuillez consulter la ressource
Souhaitez-vous en savoir davantage ?

En savoir plus

Secure Code Warrior là pour aider votre organisation à protéger le code tout au long du cycle de vie du développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez administrateur AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.

Veuillez réserver une démonstration.Télécharger
Partager sur :
marques LinkedInSocialLogo x
Centre de ressources

Ressources pour débuter

Plus de publications
Centre de ressources

Ressources pour débuter

Plus de publications