SCW-Symbole
Held-Hintergrund ohne Trennlinie
Blog

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

Veröffentlicht Aug 01, 2019
Zuletzt aktualisiert am 06. März 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.

Siehe Ressource
Siehe 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.

Interessiert an mehr?

mehr erfahren

Secure Code Warrior hier, um Ihrem Unternehmen dabei zu helfen, den Code während des gesamten Lebenszyklus der Softwareentwicklung zu schützen und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie AppSec-Administrator, Entwickler, CISO oder in einem anderen Bereich der Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Eine Vorführung buchen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Veröffentlicht Aug 01, 2019

Teilen auf:
LinkedIn-MarkenSozialx Logo

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.

Siehe Ressource
Siehe Ressource

Füllen Sie das folgende Formular aus, um den Bericht herunterzuladen.

Wir möchten Ihre Erlaubnis einholen, Ihnen Informationen über unsere Produkte oder Themen im Zusammenhang mit sicherer Verschlüsselung zuzusenden. Wir werden Ihre personenbezogenen Daten stets mit größter Sorgfalt behandeln und niemals zu Marketingzwecken an andere Unternehmen verkaufen.

Senden
scw Erfolgssymbol
scw-Fehlersymbol
Um das Formular zu senden, aktivieren Sie bitte die „Analyse“-Cookies. Sie können diese nach Abschluss des Vorgangs wieder deaktivieren.

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.

Webinar ansehen
Beginnen
mehr erfahren

Klicken Sie auf den untenstehenden Link und laden Sie die PDF-Datei dieser Ressource herunter.

Secure Code Warrior hier, um Ihrem Unternehmen dabei zu helfen, den Code während des gesamten Lebenszyklus der Softwareentwicklung zu schützen und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie AppSec-Administrator, Entwickler, CISO oder in einem anderen Bereich der Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Bericht anzeigenEine Vorführung buchen
Siehe Ressource
Teilen auf:
LinkedIn-MarkenSozialx Logo
Interessiert an mehr?

Teilen auf:
LinkedIn-MarkenSozialx Logo
Autor
Veröffentlicht Aug 01, 2019

Teilen auf:
LinkedIn-MarkenSozialx Logo

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.

Inhaltsverzeichnis

PDF herunterladen
Siehe Ressource
Interessiert an mehr?

mehr erfahren

Secure Code Warrior hier, um Ihrem Unternehmen dabei zu helfen, den Code während des gesamten Lebenszyklus der Softwareentwicklung zu schützen und eine Kultur zu schaffen, in der Cybersicherheit oberste Priorität hat. Ganz gleich, ob Sie AppSec-Administrator, Entwickler, CISO oder in einem anderen Bereich der Sicherheit tätig sind – wir können Ihrem Unternehmen dabei helfen, die mit unsicherem Code verbundenen Risiken zu reduzieren.

Eine Vorführung buchenHerunterladen
Teilen auf:
LinkedIn-MarkenSozialx Logo
Ressourcenzentrum

Ressourcen für den Einstieg

Weitere Veröffentlichungen
Ressourcenzentrum

Ressourcen für den Einstieg

Weitere Veröffentlichungen