¿Qué hacen las opciones de X-Content-Type? – Tu Web Tecno

Los encabezados de seguridad son un subconjunto del encabezado de respuesta HTTP que puede configurar un servidor web, cada uno de los cuales aplica controles de seguridad en los navegadores. Los encabezados HTTP son una forma de metadatos que se envían con solicitudes y respuestas web. El encabezado de seguridad «X-Content-Type-Options» evita que los navegadores realicen un rastreo MIME.

Nota: los encabezados HTTP no son exclusivos de HTTP y también se utilizan en HTTPS.

¿Qué está oliendo MIME?

Cuando los datos se envían a través de la web, uno de los metadatos que contiene es un tipo MIME. Las extensiones de correo de Internet de propósito general, o tipos MIME, son un estándar que se utiliza para definir el tipo de datos de un archivo, lo que indica cómo debe manejarse el archivo. Generalmente, el tipo MIME consta de un tipo y un subtipo con un parámetro y un valor opcionales. Por ejemplo, un archivo de texto UTF-8 tendría el tipo MIME «text / plain; charset = UTF-8». En este ejemplo, el tipo es «texto», el subtipo es «normal», el parámetro es «juego de caracteres» y el valor es «UTF-8».

Para evitar el etiquetado incorrecto y el maltrato de archivos, los servidores web suelen realizar un rastreo de MIME. Este es un proceso en el que se ignora el tipo MIME especificado explícitamente y en su lugar se analiza el inicio del archivo. La mayoría de los tipos de archivos contienen secuencias de encabezado que indican qué tipo de archivo es. La mayoría de las veces, los tipos MIME son correctos y escuchar el archivo no hace ninguna diferencia. Sin embargo, si hay una diferencia, los servidores web utilizan el tipo de archivo analizado para determinar cómo manejar el archivo en lugar del tipo MIME declarado.

El problema ocurre cuando un atacante logra subir un archivo como una imagen PNG, pero el archivo es realmente algo diferente al código JavaScript. Para tipos de archivos similares, p. Ej. Por ejemplo, si hay dos tipos de texto, es posible que esto no sea un gran problema. Sin embargo, se convierte en un problema grave cuando en su lugar se puede ejecutar un archivo perfectamente inofensivo.

¿Qué hace X-Content-Type-Options?

El encabezado X-Content-Type-Options solo tiene un valor posible «X-Content-Type-Options: nosniff». Cuando se activa, se informa al navegador del usuario que no se le permite realizar un rastreo de tipo MIME y, en su lugar, puede confiar en el valor declarado explícitamente. Sin esta configuración, el archivo JavaScript se ejecutaría si un archivo JavaScript malicioso se disfrazase como una imagen como PNG. Si X-Content-Type-Options está activado, el archivo se tratará como una imagen que no se puede cargar porque el archivo no tiene un formato de imagen válido.

X-Content-Type-Options no es particularmente necesario en un sitio web que usa solo recursos de origen porque no hay riesgo de que un archivo malicioso se entregue accidentalmente. Si un sitio web utiliza contenido de terceros, como: X-Content-Type-Options protege contra este tipo de ataque, por ejemplo, recursos externos o transmitidos por el usuario.

Deja un comentario