Вступ до HSTS
HSTS розшифровується як HTTP Strict-Transport-Security, що є механізмом політики веб-безпеки. HSTS вперше був включений до ThoughtWorks Technology Radar у 2015 році, а в останньому випуску Technology Radar 2016 року він перейшов безпосередньо з стадії «Випробування» до фази «Прийняття», що означає, що ThoughtWorks активно виступає за активне впровадження цього заходу безпеки в галузі, і ThoughtWorks застосовує його у власних проєктах. Ядром HSTS є HTTP-заголовок відповіді. Саме він дає браузеру знати, що поточне доменне ім'я доступне лише через HTTPS протягом наступного періоду часу, і якщо браузер виявить, що поточне з'єднання незахищене, він примусово відхилить наступні запити користувача на доступ.
Вебсайт із політикою HSTS гарантує, що браузер завжди підключений до HTTPS-зашифрованої версії сайту, усуваючи потребу користувачам вручну вводити зашифровану адресу в рядок URL, зменшуючи ризик захоплення сесії.
HTTPS (SSL та TLS) забезпечує безпечне спілкування користувачів і вебсайтів, що ускладнює зловмисникам перехоплення, модифікацію та видавання себе за них. Коли користувачВручну введіть доменне ім'я або посилання http://, на сайтіПерший запит не зашифрований, використовуючи простий http. Найзахищеніші сайти одразу надсилають перенаправлення користувача на https-з'єднання, однак,Зловмисник «людина посередині» може атакувати, щоб перехопити початковий HTTP-запит і таким чином контролювати подальшу відповідь користувача。
Принципи HSTS
HSTS головним чином контролює роботу браузера, надсилаючи заголовки відповідей із сервера: Коли клієнт робить запит через HTTPS, сервер додає поле Strict-Transport-Security у HTTP-заголовок відповіді, який він повертає. Після того, як браузер отримає таку інформацію,Будь-який запит на сайт протягом певного періоду часу ініційується через HTTPSбез перенаправлення на HTTPS сервером, ініційованим HTTP.
Формат відповіді HSTS
Опис параметра:
max-age (за секунди): використовується для повідомлення браузеру, що сайт має бути доступний через протокол HTTPS у визначений період часу. Тобто, для HTTP-адреси цього сайту браузер має замінити її локально на HTTPS перед відправкою запиту. includeSubDomains (необов'язково): Якщо цей параметр вказано, це означає, що всі піддомени сайту також мають бути доступні через протокол HTTPS. Попереднє завантаження: Вбудований у браузер список доменних імен із HTTPS.
Список передзавантаження HSTS
Хоча HSTS є хорошим рішенням для атак на деградацію HTTPS, для HSTSПерший HTTP-запит до того, як він набуде чинності, все щеЦього не уникнутиВикрали。 Щоб вирішити цю проблему, виробники браузерів запропонували рішення HSTS Preload List. (опущено)
Конфігурація IIS
Перед налаштуванням відвідайте вебсайт, як показано нижче:
Щоб реалізувати це в IIS7+, просто додайте вимогу CustomHeader для HSTS у web.config, яка налаштована наступним чином:
Після зміни відвідайте сайт, як показано нижче:
Конфігурація Nginx
Якщо сайт використовує зворотний проксі nginx, ви також можете налаштувати nginx безпосередньо для його реалізації, наступним чином:
Правила перегляду Chrome
Щоб побачити чинні правила HSTS, скористайтеся Google Chrome Chrome для набору текстуchrome://net-internals/#hstsВводьте автомобіль, як показано на рисунку нижче:
Посилання
Сувора транспортна безпека HTTP:Вхід за гіперпосиланням видно.
(Кінець)
|