Обнюхивание контента - Content sniffing
Эта статья требует внимания эксперта в области вычислений.Декабрь 2013) ( |
Обнюхивание контента, также известный как анализ типов мультимедиа или же MIME нюхать, это практика проверки содержимого байтовый поток попытаться вывести формат файла данных в нем. Сниффинг контента обычно используется для компенсации отсутствия точных метаданные что в противном случае потребовалось бы для правильной интерпретации файла. Методы сниффинга контента, как правило, используют смесь методов, которые полагаются на избыточность встречается в большинстве форматов файлов: ищем подписи файлов и магические числа, и эвристика включая поиск хорошо известных репрезентативных подстрок, использование частота байтов и п-грамма столы и Байесовский вывод.
Обнюхивание MIME (многоцелевых расширений электронной почты) использовалось и до сих пор используется некоторыми веб-браузеры, в том числе особенно Microsoft с Internet Explorer, пытаясь помочь веб-сайтам, которые неправильно сигнализируют о Тип MIME отображения веб-контента.[1] Однако это открывает серьезные уязвимость безопасности,[2] в котором, запутывая алгоритм сниффинга MIME, можно манипулировать браузером для интерпретации данных таким образом, чтобы злоумышленник мог выполнять операции, которые не ожидаются ни оператором сайта, ни пользователем, например межсайтовый скриптинг.[3] Более того, создавая впечатление, что сайты, которые неправильно назначают типы MIME для контента, корректно работают в этих браузерах, это не способствует правильной маркировке материала, что, в свою очередь, делает необходимым для работы этих сайтов анализ контента, создавая порочный круг несовместимость с веб-стандартами и лучшими практиками безопасности.
Существует спецификация для сниффинга типа носителя в HTML5, который пытается уравновесить требования безопасности с необходимостью обратной совместимости с веб-контентом с отсутствующими или неверными данными типа MIME. Он пытается предоставить точную спецификацию, которую можно использовать в разных реализациях для реализации единого четко определенного и детерминированного набора поведений.[4]
UNIX файл команда можно рассматривать как приложение для анализа содержимого.
Обнюхивание кодировки
Многие веб-браузеры используют более ограниченную форму анализа контента, чтобы попытаться определить кодировка символов текстовых файлов, для которых уже известен тип MIME. Этот метод известен как анализ кодировки или кодовая страница сниффинг, а также для некоторых кодировок может использоваться для обхода ограничений безопасности. Например, Internet Explorer 7 может быть обманут, чтобы бежать JScript в обход своей политики, позволяя браузеру угадывать, что HTML -файл был закодирован в UTF-7.[5]Эта ошибка усугубляется особенностью кодировки UTF-7, которая разрешает несколько кодировок одного и того же текста и, в частности, альтернативные представления ASCII символы.
Большинство кодировок не допускают уклончивого представления символов ASCII, поэтому анализ кодировки в целом менее опасен, потому что из-за исторической случайности ASCII-ориентированного характера языков сценариев и разметки, символы вне репертуара ASCII труднее использовать для обхода границы безопасности и неправильная интерпретация наборов символов, как правило, дает результаты не хуже, чем отображение моджибаке.
Смотрите также
Рекомендации
- ^ «Определение типа MIME в Windows Internet Explorer». Microsoft. Получено 2012-07-14.
- ^ Барт, Адам. «Безопасное отслеживание контента для веб-браузеров, или как запретить самим проверять документы» (PDF).
- ^ Генри Судхоф (11 февраля 2009 г.). «Рискованное сниффинг: анализ MIME в Internet Explorer позволяет атаковать межсайтовыми сценариями». H. Получено 2012-07-14.
- ^ Адам Барт, Ян Хиксон. «Мим нюхает». WHATWG. Получено 2012-07-14.
- ^ «Событие 1058 - анализ кодовой страницы». Internet Explorer. MSDN. Получено 2012-07-14.
внешняя ссылка
- Стандарт MIME Sniffing
- Л. Масинтер (27 марта 2011 г.). "Типы Интернет-СМИ и Сеть". Интернет-проект IETF. Получено 2012-07-14.
- А. Барт, И. Хиксон (24 января 2011 г.). "Анализ типа носителя". Интернет-проект IETF. Получено 2012-07-14.
- Дэвид Рисни. "Нюхает мим". Получено 2012-07-14.