ADC

Administración de tipos de contenido

Los servidores web añaden un encabezado de tipo de contenido con una definición de tipo o MIME para cada tipo de contenido. Los servidores web ofrecen muchos tipos de contenido diferentes. Por ejemplo, al HTML estándar se le asigna el tipo MIME “text/html”. A las imágenes JPG se les asigna el tipo de contenido “image/jpeg” o “image/jpg”. Un servidor web normal puede ofrecer diferentes tipos de contenido, todos ellos definidos en el encabezado del tipo de contenido por el MIME/tipo asignado.

Muchas reglas de filtrado de Web App Firewall están diseñadas para filtrar un tipo de contenido específico. Las reglas de filtrado se aplican a un tipo de contenido, como el HTML, y suelen ser inadecuadas cuando se filtra un tipo diferente de contenido (por ejemplo, imágenes). Como resultado, el Web App Firewall intenta determinar el tipo de contenido de las solicitudes y respuestas antes de filtrarlas. Si un servidor web o un navegador no agregan un encabezado de tipo de contenido a una solicitud o respuesta, el Web App Firewall aplica un tipo de contenido predeterminado y filtra el contenido en consecuencia.

El tipo de contenido predeterminado suele ser “application/octet-stream” con la definición más genérica de MIME/type. El tipo MIME es adecuado para cualquier tipo de contenido que pueda ofrecer un servidor web. Sin embargo, no proporciona mucha información al Web App Firewall para que pueda elegir el filtrado adecuado. Si un servidor web protegido está configurado para agregar encabezados de tipos de contenido precisos, puede crear un perfil para el servidor web y asignarle un tipo de contenido predeterminado. Esto se hace para mejorar tanto la velocidad como la precisión del filtrado.

También puede configurar una lista de los tipos de contenido de solicitud permitidos para un perfil específico. Cuando se configura esta función, si el Web App Firewall filtra una solicitud que no coincide con uno de los tipos de contenido permitidos, la bloquea.

Las solicitudes siempre deben ser del tipo “application/x-www-form-urlencoded”, “multipart/form-data” o “text/x-gwt-rpc”. El Web App Firewall bloquea cualquier solicitud que tenga designado otro tipo de contenido.

Nota

No puedes incluir los tipos de contenido “application/x-www-form-urlencoded” ni “multipart/form-data” en la lista de tipos de contenido de respuestas permitidos.

Para establecer el tipo de contenido de la solicitud predeterminado mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • set appfw profile <name> -requestContentType <type>
  • save ns config

Ejemplo

El siguiente ejemplo establece el tipo de contenido “text/html” como predeterminado para el perfil especificado:

set appfw profile profile1 -requestContentType "text/html"
save ns config
<!--NeedCopy-->

Para eliminar el tipo de contenido de solicitud predeterminado definido por el usuario mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • unset appfw profile <name> -requestContentType <type>
  • save ns config

Ejemplo

El siguiente ejemplo desestablece el tipo de contenido predeterminado de “text/html” para el perfil especificado, lo que permite que el tipo vuelva a ser “application/octet-stream”:

unset appfw profile profile1 -requestContentType "text/html"
save ns config
<!--NeedCopy-->

Nota

Utilice siempre el último encabezado de tipo de contenido para el procesamiento y elimine los encabezados de tipo de contenido restantes, si los hubiera, para garantizar que el servidor de fondo reciba una solicitud con un solo tipo de contenido.

Para bloquear las solicitudes que se puedan omitir, añada una directiva de Web App Firewall con la regla HTTP.REQ.HEADER (“content-type”) .COUNT.GT (1) ‘y un perfil como appfw_block.

Si se recibe una solicitud sin un encabezado de tipo de contenido o si la solicitud tiene un encabezado de tipo de contenido sin ningún valor, Web App Firewall aplica el valor RequestContentType configurado y procesa la solicitud en consecuencia.

Para establecer el tipo de contenido de respuesta predeterminado mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • set appfw profile <name> -responseContentType <type>
  • save ns config

Ejemplo

El siguiente ejemplo establece el tipo de contenido “text/html” como predeterminado para el perfil especificado:

set appfw profile profile1 -responseContentType "text/html"
save ns config
<!--NeedCopy-->

Para eliminar el tipo de contenido de respuesta predeterminado definido por el usuario mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • unset appfw profile <name> -responseContentType <type>
  • save ns config

Ejemplo

El siguiente ejemplo desestablece el tipo de contenido predeterminado de “text/html” para el perfil especificado, lo que permite que el tipo vuelva a ser “application/octet-stream”:

unset appfw profile profile1 -responseContentType "text/html"
save ns config
<!--NeedCopy-->

Para añadir un tipo de contenido a la lista de tipos de contenido permitidos mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • bind appfw profile <name> -ContentType <contentTypeName>
  • save ns config

Ejemplo

El siguiente ejemplo agrega el tipo de contenido “text/shtml” a la lista de tipos de contenido permitidos para el perfil especificado:

bind appfw profile profile1 -contentType "text/shtml"
save ns config
<!--NeedCopy-->

Para eliminar un tipo de contenido de la lista de tipos de contenido permitidos mediante la interfaz de línea de comandos

En el símbolo del sistema, escriba los comandos siguientes:

  • unbind appfw profile <name> -ContentType <contentTypeName>
  • save ns config

Ejemplo

El ejemplo siguiente elimina el tipo de contenido “text/shtml” de la lista de tipos de contenido permitidos para el perfil especificado:

unbind appfw profile profile1 -contentType "text/shtml"
save ns config
<!--NeedCopy-->

Gestione tipos de contenido codificado en URL y en múltiples partes

El Citrix ADC Web App Firewall ahora le permite configurar los tipos de contenido codificado por URL y formularios multiparte para los formularios. La configuración del tipo de contenido es similar a la lista XML y JSON. Según la configuración, Web App Firewall clasifica las solicitudes e inspecciona el tipo de contenido codificado en URL o en formato múltiple.

Para configurar el perfil de Web App Firewall con tipos de contenido codificado en URL y en formato múltiple En la línea de comandos, escriba:

bind appfw profile p2 -contentType <string>

Ejemplo:

bind appfw profile p2 -contentType UrlencodedFormContentType

bind appfw profile p2 -ContentType appfwmultipartform

Para administrar los tipos de contenido predeterminados y permitidos mediante la interfaz gráfica de usuario

  1. Vaya a Seguridad > Web App Firewall > Perfiles.
  2. En el panel de detalles, seleccione el perfil que quiere configurar y, a continuación, haga clic en Modificar. Aparece el cuadro de diálogo Configurar perfil de firewall de aplicaciones web .
  3. En el cuadro de diálogo Configurar perfil de firewall de aplicaciones web, haga clic en la ficha Configuración .
  4. En la ficha Configuración, desplázate hacia abajo aproximadamente hasta la mitad hasta el área Tipo de contenido.
  5. En el área Tipo de contenido, configure el tipo de contenido de solicitud o respuesta predeterminado:
    • Para configurar el tipo de contenido de solicitud predeterminado, escriba la definición MIME/type del tipo de contenido que desea usar en el cuadro de texto Solicitud predeterminada.
    • Para configurar el tipo de contenido de respuesta predeterminado, escriba la definición MIME/type del tipo de contenido que desea usar en el cuadro de texto Respuesta predeterminada.
    • Para crear un nuevo tipo de contenido permitido, haga clic en Agregar. Aparece el cuadro de diálogo Agregar tipo de contenido permitido .
    • Para editar un tipo de contenido permitido existente, seleccione ese tipo de contenido y, a continuación, haga clic en Abrir. Aparece el cuadro de diálogo Modificar el tipo de contenido permitido .
  6. Para administrar los tipos de contenido permitidos, haga clic en Administrar tipos de contenido permitidos.
  7. Para añadir un nuevo tipo de contenido o modificar un tipo de contenido existente, haga clic en Agregar o Abrir y, en el cuadro de diálogo Agregar tipo de contenido permitidoo Modificar tipo de contenido permitido, siga los siguientes pasos.
    1. Active o desactive la casilla Habilitado para incluir el tipo de contenido en la lista de tipos de contenido permitidos o excluirlo de ella.

    2. En el cuadro de texto Tipo de contenido, escriba una expresión regular que describa el tipo de contenido que desea agregar o cambie la expresión regular del tipo de contenido existente.

      Los tipos de contenido tienen el mismo formato que las descripciones de los tipos MIME.

      Nota:

      Puede incluir cualquier tipo MIME válido en la lista de tipos de contenido permitidos. Dado que muchos tipos de documentos pueden contener contenido activo y, por lo tanto, pueden contener contenido malintencionado, debe tener cuidado al añadir tipos MIME a esta lista.

    3. Proporcione una breve descripción que explique el motivo por el que se ha añadido este tipo de MIME concreto a la lista de tipos de contenido permitidos.

    4. Haga clic en Crear o Aceptar para guardar los cambios.

  8. Haga clic en Cerrar para cerrar el cuadro de diálogo Administrar tipos de contenido permitidos y volver a la ficha Configuración .
  9. Haga clic en OK para guardar los cambios.

Para administrar los tipos de contenido codificado por URL y con formato multiparte mediante la GUI de Citrix ADC

  1. Vaya a Seguridad > Web App Firewall > Perfiles.
  2. En el panel de detalles, seleccione el perfil que quiere configurar y, a continuación, haga clic en Modificar.
  3. En la página Configurar el perfil de Web App Firewall, seleccione la configuración del perfil en la sección Configuración avanzada .
  4. En la sección Tipo de contenido inspeccionado, defina los siguientes parámetros:

    1. application/x-www-form-urlencoded. Seleccione la casilla de verificación para inspeccionar el tipo de contenido con código URL.
    2. datos de múltiples partes/formularios. Seleccione la casilla para inspeccionar el tipo de contenido del formulario multiparte.
  5. Haga clic en Aceptar.

Gestión de contenido