Тайм-Атака На Hsts Sniffly Показывает, Какие Сайты Посещал Пользователь



Тайм-атака на HSTS Sniffly показывает, какие сайты посещал пользователь

Современные браузеры поддерживают строгую транспортную безопасность HTTP (HSTS).

Флаг HSTS указывает, что с определенного домена следует запросить зашифрованную версию HTTPS — даже если переход осуществляется через HTTP, а не HTTPS. Механизм нужен для обеспечения дополнительного уровня безопасности: браузер может запросить HTTP-версию страницы, которую можно легко подслушать или подделать.

Таким образом вы сможете избежать некоторых атак с понижением уровня безопасности и перехватом файлов cookie. Данные о том, что для конкретного домена установлен флаг HSTS, хранятся в браузере пользователя.

Это логическая переменная (истина/ложь).

Это не файлы cookie, а информация безопасности, поэтому браузеры обрабатывают их по-разному.

Отслеживание файлов cookie хорошо известно.

Пользователь может зайти в настройки браузера и удалить те файлы cookie, которые ему не нравятся.

Существуют отдельные дополнения, которые запрещают прием файлов cookie с доменов маркетинговых компаний.

Очистка настроек HSTS не так прозрачна — браузеры могут удалить только все флаги для всех сайтов одновременно.

В январе Сэм Гринхал продемонстрировал что с помощью HSTS можно создавать суперкуки, которые не так-то просто удалить.

В прошлом месяце Ян Чжу выступил на конференции ToorCon в Сан-Диего.

Нюхательный .

Проект использует HSTS и Content Security Policy, чтобы определить, какие сайты из списка уже посещал пользователь.

Сниффли выглядит так обычная веб-страница .

После перехода на него Sniffly проверит ряд сайтов и покажет, на каких ресурсах пользователь наверняка бывал, а на каких — нет. В некоторых случаях Sniffly выдает данные с большими ошибками.

Перед посещением рекомендуется отключить HTTPS Everywhere, если установлено это дополнение.

Sniffly работает только в основных браузерах и не показывает правильные результаты в Chrome для iOS, Internet Explorer и Safari. Как это работает? Принцип работы Sniffly прост и кратко описан в презентации для Торкона.

Если владелец сайта snacky.com знает, что сайт example.com использует HSTS, он может встроить любой элемент example.com на свою страницу snacky.com. Затем при каждом посещении сайта snacky.com пользователь будет запрашивать этот элемент, что означает запрос к example.com. Если пользователь уже посещал сайт example.com, то его браузер уже хранит данные HSTS, поэтому произойдет внутреннее перенаправление на HTTPS-версию страницы example.com. Это перенаправление происходит практически мгновенно.

Если пользователь никогда не был на example.com, то будет сделан полноценный сетевой запрос и получен HTTP-код 301 или 302 — то есть перенаправление на версию HTTPS. Этот запрос займет гораздо больше времени.

Измерение времени позволит провести тайм-атаку и установить факт посещения того или иного ресурса с HSTS. Но нужно измерить время.

С этой целью злоупотребляется Политика безопасности контента.

Самое смешное, что, как и HSTS, это еще и инструмент безопасности.

Стандарт предназначен для предотвращения загрузки контента, что призвано исключить XSS-атаки.

Все, что нужно snacky.com для проведения атаки, — это запретить загрузку изображений по протоколу HTTPS. При попытке загрузить изображение по HTTPS возникает ошибка, регистрируемая кодом JavaScript. Если пользователь находился на сайте example.com и имел флаг HSTS, ошибка возникала примерно через миллисекунду.

Если делается полноценный запрос, то ошибка приходит через сотню миллисекунд и более.

Sniffly применяет изложенные выше принципы к нескольким сотням объектов HSTS, выбранным из миллиона лучших в рейтинге Alexa.com. Sniffly может работать не так хорошо в новых браузерах, надстройках HTTPS Everywhere или браузере Tor. Автор утверждает, что в принципе можно попытаться отследить с помощью тайминга не только факт посещения ресурса, но и наличие файла в кеше.

Найти применение этому инструменту несложно.

Это не только различные системы изучения вкусов пользователя с целью продать ему релевантную рекламу.

Это также утечка важной личной информации.

Вы можете установить интересы, взгляды и предпочтения пользователя.

Устоять перед атакой возможно.

Современные браузеры имеют встроенный список доменов, доступ к которым будет возможен только через HTTPS. Достаточно добиться того, чтобы доменное имя ресурса попало в список HSTS Preload популярных браузеров, и факт его посещения уже невозможно будет определить.

Нюхательный Страница на GitHub Теги: #Sniffly #hsts #Строгая транспортная политика #HTTPS #http #информационная безопасность #информационная безопасность

Вместе с данным постом часто просматривают: