Citrix ADC

Protección contra ataques de entidades externas XML (XXE)

La protección contra ataques de entidades externas XML (XXE) examina si una carga útil entrante tiene cualquier entrada XML no autorizada con respecto a entidades fuera del dominio de confianza donde reside la aplicación web. El ataque XXE se produce si tiene un analizador XML débil que analiza una carga XML con entrada que contiene referencias a entidades externas.

En un dispositivo Citrix ADC, si el analizador XML está configurado incorrectamente, el impacto de explotar la vulnerabilidad puede ser peligroso. Permite a un atacante leer datos confidenciales en el servidor web, realizar ataques de denegación de servicio, etc. Por lo tanto, es importante proteger el dispositivo de ataques XXE. Web Application Firewall puede proteger el dispositivo de ataques XXE siempre que el tipo de contenido se identifique como XML. Para evitar que un usuario malintencionado pase por alto este mecanismo de protección, WAF bloquea una solicitud entrante si el tipo de contenido “inferido” en los encabezados HTTP no coincide con el tipo de contenido del cuerpo. Este mecanismo evita la omisión de protección de ataques XXE cuando se utiliza un tipo de contenido predeterminado o no predeterminado en la lista blanca.

Algunas de las posibles amenazas XXE que afectan a un dispositivo Citrix ADC son:

  • Fugas de datos confidenciales
  • Ataques de denegación de servicio (DOS)
  • solicitudes de falsificación del lado del servidor
  • Exploración de puertos

Cómo funciona la protección de entidades externas XML (XXE)

  1. Cuando hay una solicitud entrante, WAF examina los primeros 512 bytes de la carga XML para detectar cualquier discrepancia en el encabezado de tipo de contenido y el tipo de contenido de la carga útil.
  2. Si los tipos de contenido coinciden, la protección XML XXE se habilita y se aplica en la solicitud HTTP.
  3. Sin embargo, si el encabezado de tipo de contenido no coincide con el tipo de contenido del cuerpo, la solicitud se bloquea, se elimina o registra en función de la acción configurada.
  4. Puede habilitar el registro para generar mensajes de registro. Puede supervisar los registros para determinar si las respuestas a las solicitudes legítimas se están bloqueando. Un gran aumento en el número de mensajes de registro puede indicar intentos de lanzar un ataque.
  5. También puede habilitar la función de estadísticas para recopilar datos estadísticos sobre infracciones y registros. Un aumento inesperado en el contador de estadísticas podría indicar que su aplicación está siendo atacada.

Configurar la protección de inyección de entidades externas XML (XXE)

Para configurar la comprobación de entidades externas XML (XXE) mediante la interfaz de comandos: en la interfaz de línea de comandos, puede agregar o modificar el comando de perfil de firewall de la aplicación para configurar los ajustes XXE. Puede activar las acciones de bloqueo, registro y estadísticas.

En el símbolo del sistema, escriba:

set appfw profile <name> [-inferContentTypeXmlPayloadAction <inferContentTypeXmlPayloadAction <block | log | stats | none>]

Nota:

De forma predeterminada, la acción XXE se establece como “ninguno”.

Ejemplo:

set appfw profile profile1 -inferContentTypeXmlPayloadAction Block

Donde, los tipos de acción son:

Bloqueo: La solicitud se bloquea sin ninguna excepción a las URL de la solicitud.

Registro: Si se produce una discrepancia entre el tipo de contenido en un encabezado de solicitud HTTP y la carga útil, la información sobre la solicitud infractora debe estar contenida en el mensaje de registro.

Estadísticas: Si se detecta una discrepancia en los tipos de contenido, se incrementan las estadísticas correspondientes para este tipo de infracción.

Ninguno: No se realiza ninguna acción si se detecta una discrepancia en los tipos de contenido. Ninguno no se puede combinar con ningún otro tipo de acción. La acción predeterminada se establece en Ninguno.

Configurar la comprobación de inyección XXE mediante la GUI de Citrix ADC

Complete los siguientes pasos para configurar la comprobación de inyección XXE.

  1. Vaya a Seguridad > Citrix Web App Firewall > Perfiles.
  2. En la página Perfiles, seleccione un perfil y haga clic en Modificar.
  3. En la página Perfil de Citrix Web App Firewall, vaya a la sección Configuración avanzada y haga clic en Comprobaciones de seguridad.

    Sección de comprobación de entidad externa XML

  4. En la sección Comprobaciones de seguridad, seleccione Deducir tipo de contenido XML Carga útil y haga clic en Configuración de acciones.
  5. En la página Deducir configuración de carga útil XML del tipo de contenido, establezca los siguientes parámetros:

    1. Acciones. Seleccione una o más acciones para la comprobación de seguridad de inyección XXE.
  6. Haga clic en Aceptar.

    Configuración de la comprobación de entidades externas XML

Visualización de estadísticas de infracciones y tráfico de inyección XXE

La página Estadísticas de Citrix Web App Firewall muestra los detalles del tráfico de seguridad y las infracciones de seguridad en formato tabular o gráfico.

Para ver las estadísticas de seguridad mediante la interfaz de comandos.

En el símbolo del sistema, escriba:

stat appfw profile profile1

Visualización de estadísticas de inyección XXE mediante la GUI de Citrix ADC

Complete los siguientes pasos para ver las estadísticas de inyección XXE:

  1. Vaya a Seguridad > Citrix Web App Firewall > Perfiles.
  2. En el panel de detalles, seleccione un perfil de Web App Firewall y haga clic en Estadísticas.
  3. La página Estadísticas de Citrix Web App Firewall muestra los detalles del tráfico de inyección de comandos XXE y la infracción.
  4. Puede seleccionar Vista tabular o cambiar a Vista gráfica para mostrar los datos en formato tabular o gráfico.

Estadísticas de infracciones de comprobación de entidades externas XML