Ответ
HTTP (HyperText Transfer Protocol) — это базовый протокол для передачи данных в вебе. Он работает по схеме «запрос-ответ», но данные передаются в открытом, незашифрованном виде.
HTTPS (HTTP Secure) — это расширение HTTP, которое добавляет шифрование и аутентификацию с помощью протоколов SSL/TLS.
Ключевые различия с точки зрения тестирования и безопасности:
| Критерий | HTTP | HTTPS |
|---|---|---|
| Шифрование | Отсутствует. Данные (логины, пароли, cookies) передаются как plain text. | Присутствует. Данные шифруются между клиентом и сервером. |
| Порт | 80 | 443 |
| Сертификат | Не требуется. | Требуется SSL/TLS-сертификат, выданный доверенным центром сертификации (CA). |
| Целостность данных | Нет гарантий. Данные могут быть изменены при передаче (man-in-the-middle). | Обеспечивается механизмами TLS. |
| Влияние на тестирование | Можно использовать снифферы (Wireshark) для анализа трафика. | Для анализа зашифрованного трафика нужны дополнительные шаги (например, настройка прокси в Burp Suite с импортом его сертификата в систему). |
Практический пример для тестировщика: При тестировании веб-приложения обязательно проверяйте:
- Работает ли сайт только по HTTPS (HTTP-запросы должны редиректиться на HTTPS).
- Валиден ли SSL-сертификат (не просрочен, выдан для правильного домена, цепочка доверия не нарушена).
- Нет ли смешанного контента (Mixed Content) — когда HTTPS-страница загружает ресурсы (скрипты, стили) по HTTP, что ослабляет защиту.
Видео-ответы
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶
▶