Saltar a contenido

Insecure HTTP Header Setting: Content-Type

Configuración insegura de encabezado HTTP: Content-Type

Descripción

Falta el encabezado Content-Type, lo que significa que este sitio web podría correr el riesgo de sufrir un ataque de MIME-sniffing.

El MIME-sniffing es una función estándar en los navegadores para encontrar una forma adecuada de representar los datos cuando los encabezados HTTP enviados por el servidor no son concluyentes o faltan.

Esto permite que versiones anteriores de Internet Explorer y Chrome realicen un MIME-sniffing en el cuerpo de la respuesta, lo que puede provocar que el cuerpo de la respuesta se interprete y se muestre como un tipo de contenido distinto al previsto.

El problema surge cuando un sitio web permite a los usuarios subir contenido publicado en el servidor web. Si un atacante puede llevar a cabo un ataque XSS (Cross-site Scripting) manipulando el contenido de forma que la aplicación web lo acepte y el navegador lo interprete como HTML, es posible inyectar código en, por ejemplo, un archivo de imagen, y hacer que la víctima lo ejecute al ver la imagen.

Recomendación

  • Al servir recursos, asegúrese de enviar el encabezado content-type para que coincida adecuadamente con el tipo del recurso que se está sirviendo. Por ejemplo, si está sirviendo una página HTML, debe enviar el encabezado HTTP:
Content-Type: text/html
  • Agregue el encabezado X-Content-Type-Options con el valor "nosniff" para informar al navegador de que confíe en que el content-type enviado por el sitio es el adecuado y que no intente "rastrear" el tipo de contenido real.
X-Content-Type-Options: nosniff

Enlaces

Estándares

  • PCI_STANDARDS:
    • REQ_2_2
    • REQ_6_2
    • REQ_6_3
    • REQ_6_4
    • REQ_11_3
  • HIPAA_CONTROLS:
    • SECURITY212
    • SECURITY213