Что такое HSTS? Как он защищает вас в Интернете?

какие-это-HSTSКороткие байты: HSTS (HTTP Strict Transport Security) является недавней разработкой для повышения безопасности в Интернете, заставляя веб-браузеры получать доступ к веб-сайтам только через соединение HTTPS. Заголовок HTTP отправляется веб-сайтом в браузер для включения политики безопасности HSTS. Это предотвращает такие атаки, как перехват файлов cookie, MITM с использованием разборки SSL и т.д.

Интернет становится все больше и больше. В Интернете много полезных и удивительных сайтов, которыми пользуются миллиарды людей. Но есть много умов, которые хотят воспользоваться преимуществами пользователей Интернета для их же блага. Они занимаются деятельностью, направленной на то, чтобы поставить под угрозу безопасность пользователей и нарушить их конфиденциальность. Это можно сделать, имитируя популярные веб-сайты или внедряя код в веб-сайт HTTP, и соблазняя пользователей посещать их.

HTTPS был создан для решения этой проблемы. Протокол HTTPS обеспечивает передачу данных между конечным пользователем и веб-сайтом по соединению, зашифрованному с использованием безопасности транспортного уровня (TLS). Однако это не является надежным решением, поскольку HTTPS не был развернут на значительном количестве веб-сайтов в Интернете.

Что такое HSTS?

Google недавно объявил, что будет внедрять HSTS на Google.com и других своих сервисах. HSTS является HTTP Strict Transport Security. Это функция безопасности, которая заставляет ваш веб-браузер получать доступ к веб-сайту только через соединение HTTPS.

Опубликованная 19 ноября 2012 года спецификация HSTS (RFC 6797) была первоначально разработана сотрудником PayPal Джеффом Ходжесом вместе с Коллином Джексоном и Адамом Бартом 18 сентября 2009 года.

Спецификация берет свое начало в исследовательской работе «ForceHTTPS: защита веб-сайтов с высоким уровнем безопасности от сетевых атак», написанной Джексоном и Бартом. HSTS также находит мотивацию в опубликованном в 2010 году исследовательском документе Ходжеса и Энди Стайнгрубла «Необходимость в согласованных основах политики безопасности в сети», который послужил ориентиром для повышения безопасности в сети.

Какая потребность в HSTS?

Когда вы заходите на веб-сайт, на котором реализована политика HSTS, веб-сайт может попросить ваш веб-браузер использовать соединение HTTPS. Это может обойти различные атаки, которые могут быть выполнены через соединение HTTP. Например, атаки, связанные с прослушиванием и прослушиванием файлов cookie. Атаки «человек посередине» с использованием SSL-чередования могут быть остановлены внедрением HSTS.

Рекомендуемые: В чем разница между HTTP и HTTPS?

Как включен HSTS?

Активация политики HSTS проста. Когда поддерживаемый веб-браузер подключается к веб-сайту, он отправляет в веб-браузер следующий заголовок:

Строгая транспортная безопасность: max-age = expireTime; IncludeSubdomains; предварительная нагрузка

Заголовок обязывает веб-браузер получать доступ к этому конкретному веб-сайту через соединение HTTPS. Однако на картинке есть подвох. Веб-браузер будет следовать инструкциям заголовка, если первое посещение веб-сайта произошло через соединение HTTPS. Это означает, что веб-браузер будет игнорировать заголовок, если первое посещение веб-сайта осуществляется через соединение HTTP.

максимальный возраст Параметр указывает время (expireTime), до которого веб-браузер должен следовать инструкциям заголовка. ExpireTime записывается в секундах.

Например, если expireTime равен 3600, в течение следующих 1 часа веб-браузер будет подключаться к этому веб-сайту через соединение HTTPS, прерывая любую попытку HTTP-запроса. После этого к нему можно получить доступ через HTTP. Тем не менее, веб-сайты имеют простоту изменения срока действия в шапке.

Заголовок имеет дополнительный флаг «IncludeSubdomains”, Который должен гарантировать, что веб-браузер получает доступ к поддоменам через соединение HTTPS, в противном случае они могут быть доступны через соединение HTTP.

Необязательный флаг ‘предварительная нагрузка‘Добавлен в заголовок, чтобы сообщить веб-браузеру, что конкретный домен должен быть предварительно загружен. Различные веб-браузеры, такие как Chrome, Firefox и т. Д., Поддерживают список предварительной загрузки HSTS, который содержит имена доменов, для которых HSTS должен быть включен для всех пользователей с первого раза.

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

Недостатки ХТС

HTTP Strict Transport Security кажется эффективным решением для обеспечения безопасности соединения. И это так, но есть и недостатки. То, что заголовок HSTS принимается только через HTTPS, может открыть двери для атакующих. Самый первый запрос к сайту, если он сделан через HTTP, может сделать пользователя подверженным угрозам безопасности и несанкционированным перенаправлениям. Вот где список предварительной загрузки HSTS приходит как спаситель. Но дело в том, что доменные имена должны быть представлены для включения в список. Не поможет, если нового домена нет в списке. И, конечно же, предварительная загрузка не может включать каждое доменное имя в Интернете.

Кроме того, существуют некоторые проблемы конфиденциальности, связанные с внедрением HSTS. Он может быть использован для определения личности пользователей без использования файлов cookie. Ваш веб-браузер знает, использовать ли HTTPS или нет для определенного веб-сайта в своем файле cookie. Эта простая информация может быть использована для хранения и получения информации на вашем компьютере.

Злоумышленник может заставить вас посетить список веб-сайтов (или поддоменов) на веб-странице, находящейся под его контролем, и отправить для них HTTP-заголовки. Некоторые из этих заголовков попросят вас использовать HTTPS, а некоторые — нет. Информация, да или нет, хранится в базе данных HSTS вашего веб-браузера и ведет себя как супер-куки.

Когда в следующий раз вы зайдете на тот же веб-сайт, злоумышленник может перенаправить вас на те же веб-сайты и перепроверить шаблон «да» и «нет». Более того, это работает, даже если вы используете режим инкогнито в Chrome.

Этот метод также может быть использован для хранения шаблона, например, сообщение может быть скрыто в списке имен поддоменов. Список ссылок на веб-странице может быть расширен до тех пор, пока злоумышленник не захочет. Таким образом, он может быть использован для отслеживания бесчисленного количества людей. Вы можете прочитать больше об этом в простом объяснении Марка Стокли.

Такие проблемы ставят вопрос о конфиденциальности пользователей через HSTS. Возможное решение — регулярно очищать базу данных HSTS, но это приведет к удалению информации о HTTPS-соединениях веб-сайтов, а также к безопасности. Короче говоря, это вопрос безопасности против конфиденциальности. Какой из них важнее для вас?

Вы нашли это полезным? Расскажите нам в комментариях ниже.

Ссылка на основную публикацию