SCW アイコン
ヒーロー背景(区切りなし)
ブログ

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

2019年08月01日 掲載
最終更新日: 2026年3月6日

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.

リソースを参照
リソースを参照

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.

もっと知りたいですか?

もっと詳しく

Secure Code Warrior ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先事項とする文化を構築するために、貴組織をSecure Code Warrior 。AppSec管理者、開発者、CISO、セキュリティ関連担当者など、あらゆる立場の方々に対し、不安全なコードに関連するリスクを軽減するお手伝いをいたします。

デモを予約する
共有する:
リンクトインのブランドソーシャルx ロゴ
著者
2019年8月01日発行

共有する:
リンクトインのブランドソーシャル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.

リソースを参照
リソースを参照

以下のフォームに記入してレポートをダウンロードしてください

当社製品や安全な暗号化に関する情報をお送りする許可を頂ければ幸いです。お客様の個人情報は常に最大限の注意を払って取り扱い、マーケティング目的で他社に販売することは決してありません。

送信
SCW成功アイコン
SCWエラーアイコン
フォームを送信するには、「分析」クッキーを有効にしてください。完了後は、お気軽に再度無効にしてください。

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.

ウェビナーを見る
始める
もっと詳しく

以下のリンクをクリックして、このリソースのPDFをダウンロードしてください。

Secure Code Warrior ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先事項とする文化を構築するために、貴組織をSecure Code Warrior 。AppSec管理者、開発者、CISO、セキュリティ関連担当者など、あらゆる立場の方々に対し、不安全なコードに関連するリスクを軽減するお手伝いをいたします。

報告書を見るデモを予約する
PDFをダウンロード
リソースを参照
共有する:
リンクトインのブランドソーシャルx ロゴ
もっと知りたいですか?

共有する:
リンクトインのブランドソーシャルx ロゴ
著者
2019年8月01日発行

共有する:
リンクトインのブランドソーシャル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.

目次

PDFをダウンロード
リソースを参照
もっと知りたいですか?

もっと詳しく

Secure Code Warrior ソフトウェア開発ライフサイクル全体を通じてコードを保護し、サイバーセキュリティを最優先事項とする文化を構築するために、貴組織をSecure Code Warrior 。AppSec管理者、開発者、CISO、セキュリティ関連担当者など、あらゆる立場の方々に対し、不安全なコードに関連するリスクを軽減するお手伝いをいたします。

デモを予約するダウンロード
共有する:
リンクトインのブランドソーシャルx ロゴ
リソースセンター

始めるためのリソース

その他の投稿
リソースセンター

始めるためのリソース

その他の投稿