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