Шифруются ли Cookie в HTTPS

«Шифруются ли Cookie в HTTPS» — вопрос из категории Безопасность, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, куки передаются в зашифрованном виде при использовании HTTPS, так как весь трафик, включая заголовки (где находятся куки), шифруется на транспортном уровне (TLS/SSL). Однако важно помнить:

  1. Куки могут быть доступны на клиенте через JavaScript, если не установлен флаг HttpOnly.
  2. Флаг Secure гарантирует, что куки передаются только по HTTPS.
  3. Шифрование не защищает от XSS или CSRF-атак.

Пример безопасных кук:

// Серверная установка (например, в Express.js)
res.cookie('session', 'token123', {
  secure: true,
  httpOnly: true,
  sameSite: 'strict'
});