Поддерживается ли строгая транспортная безопасность (HSTS) libcurl?
AFAIK HSTS - это свойство на стороне сервера, которое сообщает браузеру, что он должен работать только с https-запросом на этом сервере (поправьте меня, пожалуйста, если я не прав).
HSTS не поможет в случаях перенаправления с http на https, в этот период времени может произойти атака MIM, если только ваш сайт не указан в списке HSTS браузера.
Если у меня есть сервер, который получает запросы только от libcurl, нужно ли мне поддерживать HSTS? Будет ли это иметь какое-то значение? Поддерживает ли libcurl также HSTS и будет работать только с сайтами https после получения этого параметра с сервера?
1 ответ
AFAIK HSTS - это свойство на стороне сервера, которое сообщает браузеру, что он должен работать только с https-запросом на этом сервере (поправьте меня, пожалуйста, если я не прав).
Правильно.
HSTS не поможет в случаях перенаправления с http на https, в этот период времени может произойти атака MIM, если только ваш сайт не указан в списке HSTS браузера.
Если пользовательский агент не понимает HSTS, он вообще не поможет. Кроме того, HSTS - это функция "доверие при первом использовании". Это означает, что если пользовательский агент не имеет записи HSTS для домена и использует перенаправление на HTTPS, у пользовательского агента нет другого выбора, кроме как доверять этому. Предварительная загрузка HSTS предназначена для решения этой проблемы, когда домен всегда фиксируется как "да" для HSTS.
Если у меня есть сервер, который получает запросы только от libcurl, нужно ли мне поддерживать HSTS? Будет ли это иметь какое-то значение? Поддерживает ли libcurl также HSTS и будет работать только с сайтами https после получения этого параметра с сервера?
Использование libcurl само по себе с HSTS не имеет прямой выгоды. libcurl не ведет учет известных хостов HSTS. Разработчик, использующий libcurl, может разработать HSTS поверх libcurl, но сегодня libcurl не делает этого сам по себе.