Articulo de referencia

Rastreo de contenido

El análisis de contenido , también conocido como análisis de tipo de medio o análisis MIME , consiste en inspeccionar el contenido de una secuencia de bytes para intentar deduci...

El análisis de contenido , también conocido como análisis de tipo de medio o análisis MIME , consiste en inspeccionar el contenido de una secuencia de bytes para intentar deducir el formato de archivo de los datos que contiene. Generalmente, se utiliza para compensar la falta de metadatos precisos que, de otro modo, serían necesarios para interpretar correctamente el archivo. Las técnicas de análisis de contenido suelen emplear una combinación de métodos que se basan en la redundancia presente en la mayoría de los formatos de archivo: búsqueda de firmas de archivo y números mágicos , y heurísticas que incluyen la búsqueda de subcadenas representativas conocidas, el uso de tablas de frecuencia de bytes y n -gramas , y la inferencia bayesiana .

La detección de extensiones MIME ( Multipurpose Internet Mail Extensions ) era, y sigue siendo, utilizada por algunos navegadores web , incluyendo notablemente Internet Explorer de Microsoft , en un intento de ayudar a los sitios web que no señalan correctamente el tipo MIME de visualización del contenido web. [ 1 ] Sin embargo, hacer esto abre una grave vulnerabilidad de seguridad , [ 2 ] en la que, al confundir el algoritmo de detección de MIME, el navegador puede ser manipulado para interpretar los datos de una manera que permite a un atacante realizar operaciones que no son esperadas ni por el operador del sitio ni por el usuario, como el cross-site scripting . [ 3 ] Además, al hacer que los sitios que no asignan correctamente los tipos MIME al contenido parezcan funcionar correctamente en esos navegadores, no se fomenta el etiquetado correcto del material, lo que a su vez hace que la detección de contenido sea necesaria para que estos sitios funcionen, creando un círculo vicioso de incompatibilidad con los estándares web y las mejores prácticas de seguridad.

Existe una especificación para la detección de tipos de medios en HTML5 , que intenta equilibrar los requisitos de seguridad con la necesidad de compatibilidad inversa con contenido web que presente datos de tipo MIME faltantes o incorrectos. Su objetivo es proporcionar una especificación precisa que pueda utilizarse en distintas implementaciones para implementar un conjunto único, bien definido y determinista de comportamientos. [ 4 ]

El comando `file` de UNIX puede considerarse una aplicación para analizar el contenido de los archivos.

Olfateo de charset

Numerosos navegadores web utilizan una forma más limitada de detección de contenido para intentar determinar la codificación de caracteres de archivos de texto cuyo tipo MIME ya se conoce. Esta técnica se conoce como detección de conjunto de caracteres o detección de página de códigos y, para ciertas codificaciones, también puede utilizarse para eludir las restricciones de seguridad. Por ejemplo, Internet Explorer 7 puede ser engañado para ejecutar JScript eludiendo su política al permitir que el navegador adivine que un archivo HTML fue codificado en UTF-7 . [ 5 ] Este fallo se agrava por la característica de la codificación UTF-7 que permite múltiples codificaciones del mismo texto y, específicamente, representaciones alternativas de caracteres ASCII .

La mayoría de las codificaciones no permiten presentaciones evasivas de caracteres ASCII, por lo que la detección de conjuntos de caracteres es menos peligrosa en general porque, debido al accidente histórico de la naturaleza centrada en ASCII de los lenguajes de scripting y marcado, los caracteres fuera del repertorio ASCII son más difíciles de usar para eludir las barreras de seguridad, y las malas interpretaciones de los conjuntos de caracteres tienden a producir resultados no peores que la visualización de mojigatos .

Véase también

Referencias

  1. "Detección de tipo MIME en Windows Internet Explorer" . Microsoft . Consultado el 14 de julio de 2012 .
  2. Barth, Adam. "Detección segura de contenido para navegadores web, o cómo evitar que los artículos se revisen a sí mismos" (PDF) .
  3. Henry Sudhof (11 de febrero de 2009). "Analizando riesgosamente: el análisis de MIME en Internet Explorer permite ataques de secuencias de comandos entre sitios" . The H. Recuperado el 14 de julio de 2012 .
  4. Adam Barth, Ian Hickson. "Mime Sniffing" . WHATWG . Consultado el 14 de julio de 2012 .
  5. "Evento 1058 - Análisis de página de códigos" . Internet Explorer . MSDN . Consultado el 14 de julio de 2012 .
  • Encabezado X-Content-Type-Options
  • Estándar de olfateo de MIME
  • L. Masinter (27 de marzo de 2011). "Tipos de medios de Internet y la web" . IETF . Recuperado el 14 de julio de 2012 .
  • A. Barth, I. Hickson (24 de enero de 2011). "Media Type Sniffing" . IETF . Recuperado el 14 de julio de 2012 .
  • David Risney. "Mime-sniffing" . Consultado el 14 de julio de 2012 .