Поддерживается ли строгая транспортная безопасность (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 не делает этого сам по себе.

Другие вопросы по тегам