HTTPS и TLS
TLS
Что это такое
HTTPS — это HTTP внутри TLS: клиент проверяет подлинность сервера по сертификату, выданному доверенным удостоверяющим центром, и затем согласует зашифрованный канал с проверкой целостности, прежде чем отправить хоть какие-то данные приложения. TLS — протокол шифрования и аутентификации; HTTPS — его применение к веб-трафику.
Почему это важно
Без него всё, что находится на пути, может читать и менять трафик: учётные данные, сессионные cookie, отправленные формы и JavaScript, который браузер вот-вот выполнит. Этот путь включает кафе, отели, корпоративные посредники и сеть самого провайдера хостинга. Речь давно не только о секретности: страницу, отданную по открытой схеме, можно изменить в пути, так что пользователь не может доверять тому, что видит, и браузеры теперь прямо помечают её как небезопасную. Детали протокола — в «Основах сетей»; эта запись о том, за что отвечает разработчик.
Что в этом треке
- Сертификаты и рукопожатие (07-security/02-https-tls/01-certificates-and-the-handshake) — что доказывает сертификат, кто его выдаёт и как ломается продление.
- Почему открытый HTTP — жёсткая ошибка (07-security/02-https-tls/02-why-plain-http-is-a-hard-fail) — атаки, которые он открывает, и перенаправление с работой по миграции, которых он требует.
Предварительные требования
- Основы сетей (HTTP / DNS / TLS) (06-cloud-devops/10-networking-fundamentals-http-dns-tls)
Что читать дальше
- Основы сетей (HTTP / DNS / TLS) (06-cloud-devops/10-networking-fundamentals-http-dns-tls) — читайте первым; протокольный уровень, который эта запись предполагает.
- Веб-безопасность (OWASP Top 10) (07-security/01-web-security-owasp-top-10) — недостатки приложений, которые TLS не исправляет.
- Content Security Policy (CSP) (07-security/06-content-security-policy-csp) — браузерный контроль, дополняющий зашифрованный канал.
- Управление секретами (07-security/03-secrets-management) — что делать с ключом API, прошедшим по каналу, который теперь известен как сломанный.