stringtranslate.com

Olfateo de contenido

El rastreo de contenido , también conocido como rastreo de tipos de medios o rastreo MIME , es la práctica de inspeccionar el contenido de un flujo de bytes para intentar deducir el formato de archivo de los datos que contiene. La detección de contenido se utiliza generalmente para compensar la falta de metadatos precisos que, de otro modo, serían necesarios para permitir que el archivo se interprete correctamente. Las técnicas de rastreo de contenido tienden a utilizar una combinación de técnicas que se basan en la redundancia que se encuentra en la mayoría de los formatos de archivos: búsqueda de firmas de archivos y números mágicos , y heurísticas que incluyen la búsqueda de subcadenas representativas conocidas, el uso de frecuencia de bytes y tablas de n -gramas. y la inferencia bayesiana .

El rastreo de extensiones multipropósito de correo de Internet (MIME) era, y todavía es, utilizado por algunos navegadores web , incluido en particular Internet Explorer de Microsoft , en un intento de ayudar a los sitios web que no señalan correctamente el tipo MIME de visualización de contenido web. [1] Sin embargo, hacer esto abre una grave vulnerabilidad de seguridad , [2] en la que, al confundir el algoritmo de rastreo MIME, el navegador puede ser manipulado para que interprete los datos de una manera que permita a un atacante realizar operaciones que no se esperan. por el operador del sitio o por el usuario, como secuencias de comandos entre sitios . [3] Además, al hacer que los sitios que no asignan correctamente 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 sea necesario rastrear el contenido para que estos sitios funcionen, creando una círculo vicioso de incompatibilidad con los estándares web y las mejores prácticas de seguridad.

Existe una especificación para el rastreo de tipos de medios en HTML5 , que intenta equilibrar los requisitos de seguridad con la necesidad de compatibilidad inversa con el contenido web con datos de tipo MIME faltantes o incorrectos. Intenta proporcionar una especificación precisa que se puede utilizar en todas las implementaciones para implementar un único conjunto de comportamientos determinista y bien definido. [4]

El comando de archivo UNIX puede verse como una aplicación de rastreo de contenido.

olfateando charset

Numerosos navegadores web utilizan una forma más limitada de rastreo 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 rastreo de conjuntos de caracteres o rastreo de páginas de códigos y, para ciertas codificaciones, también puede usarse para eludir las restricciones de seguridad. Por ejemplo, se puede engañar a Internet Explorer 7 para que ejecute JScript eludiendo su política al permitir que el navegador adivine que un archivo HTML estaba codificado en UTF-7 . [5] Este error se ve agravado 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 el rastreo de caracteres es menos peligroso en general porque, debido al accidente histórico de la naturaleza centrada en ASCII de los lenguajes de programación y marcado, los caracteres fuera del repertorio ASCII son más difíciles de eludir. Los límites de seguridad y las malas interpretaciones de los conjuntos de caracteres tienden a producir resultados no peores que la visualización de mojibake .

Ver también

Referencias

  1. ^ "Detección de tipo MIME en Windows Internet Explorer". Microsoft . Consultado el 14 de julio de 2012 .
  2. ^ Barth, Adán. "Detección segura de contenido para navegadores web o cómo evitar que los artículos se revisen solos" (PDF) .
  3. ^ Henry Sudhof (11 de febrero de 2009). "Rastreo arriesgado: el rastreo MIME en Internet Explorer permite ataques de secuencias de comandos entre sitios". El h . Consultado el 14 de julio de 2012 .
  4. ^ Adam Barth, Ian Hickson. "Mimo olfateando". QUÉ WG . Consultado el 14 de julio de 2012 .
  5. ^ "Evento 1058: rastreo de páginas de códigos". Explorador de Internet . MSDN . Consultado el 14 de julio de 2012 .

enlaces externos