HTTP на порту 443 против HTTPS на порту 80

Вопрос или проблема

В чем разница между

http://serverfault.com:443 и
https://serverfault.com:80

Какой из них теоретически более безопасен?

http и https относятся к используемому протоколу.

http используется для нешифрованной связи в открытом виде, что означает, что передаваемые данные могут быть перехвачены и прочитаны человеком. Поля имени пользователя и пароля, например, могут быть захвачены и прочитаны.

https относится к зашифрованной связи SSL/TLS. Его необходимо расшифровать, чтобы прочитать. Обычно/идеально только конечные точки способны шифровать/расшифровывать данные, хотя это утверждение имеет оговорки (см. исправление ниже).

Поэтому https можно считать более безопасным, чем http.

:80 и :443 относятся только к используемому серверному порту (т.е. это “просто число”) и не имеют никакого значения с точки зрения безопасности.

Тем не менее, существует сильная конвенция отправлять http через порт 80, а https через порт 443, что делает комбинации в вопросе более чем немного неортодоксальными. Однако их технически можно использовать, пока конечные точки согласны и нет промежуточных фильтров.

Отвечая на вопрос, http://example.com:443 менее безопасен, чем https://example.com:80, и разница является практической (хотя ее можно компенсировать различными способами) и не только теоретической.

Вы можете легко проверить правильность этих утверждений с помощью веб-сервера и клиента, где вы манипулируете серверным портом и статусом шифрования, при этом захватывая и сравнивая каждую сессию с помощью протокольного декодера, такого как Wireshark.

[ИСПРАВЛЕНИЕ – оговорки относительно безопасности пути клиент/сервер]

По сути, может быть осуществлена атака “человек посередине” в https с целью подслушивания или выдачи себя за другого. Это может быть сделано как акт злонамеренности, доброжелательности или, как оказалось, даже из-за неосведомленности, в зависимости от обстоятельств.

Атака может быть осуществлена либо путем эксплуатации уязвимости протокола, такой как Heartbleed ошибка или уязвимость Poodle, либо путем создания https-прокси между клиентом и сервером в сети или непосредственно на клиенте.

Злонамеренное использование не требует большого объяснения, я думаю. Доброжелательное использование, например, – это организация, проксирующая входящие https-соединения с целью логирования/IDS, или исходящие https-соединения для фильтрации разрешенных/запрещенных приложений. Пример неосведомленного использования можно найти в примере Lenovo Superfish, указанном выше, или в недавнем варианте Dell той же ошибки.

ИСПРАВЛЕНИЕ 2

Вы когда-нибудь замечали, как мир продолжает удивлять? В Швеции только что разразился скандал, когда три организации здравоохранения вендоров использовали одну и ту же цепочку поставок для регистрации медицинских событий через телефонные звонки пациентов.

Таким образом, вопрос получает ответ в глобальном масштабе. Если бы это была шутка и не реальное событие…

Я просто скопирую два фрагмента, переведенных из новостного текста в Computer Sweden:

”Computer Sweden может сегодня раскрыть одну из величайших катастроф в истории
относительно безопасности пациентов в здравоохранении и личной неприкосновенности. На
открытом веб-сервере без какой-либо формы защиты паролем или другого метода
безопасности мы нашли 2,7 миллиона записанных звонков от пациентов в
здравоохранение через медицинский консультационный номер 1177. Звонки идут
с 2013 года и содержат 170.000 часов записей чувствительных голосовых звонков,
которые любой мог скачать и прослушать.

[…]

Звонки были сохранены на сервере Voice Integrated Nordics
по IP-адресу http://188.92.248.19:443/medicall/. Tcp-порт 443
указывает на то, что трафик передавался по https, но сессия
не зашифрована.

Я не могу решить, является ли это очередным примером неосведомленности или мы наблюдаем совершенно новую категорию. Пожалуйста, дайте совет.

В теории ни http://serverfault.com:443, ни https://serverfault.com:80 не являются безопасными, и обе конфигурации являются проблемными.

  1. http://serverfault.com:443: Это использует HTTP на порту 443, который обычно зарезервирован для HTTPS. Несмотря на то, что этот порт обычно ассоциируется с HTTPS, HTTP-трафик через порт 443 по-прежнему
    нешифрован и, таким образом, небезопасен.

  2. https://serverfault.com:80: Это пытается использовать HTTPS на порту 80,
    который обычно назначается для HTTP. Хотя протокол HTTPS
    подразумевает шифрование, большинство браузеров и серверов ожидают HTTPS-трафик
    на порту 443, поэтому использование порта 80 может вызвать проблемы с подключением. Даже если
    это работает, использование необычного порта не добавляет безопасности и может привести к
    проблемам совместимости.

В кратце, ни одна из конфигураций не предлагает надежный подход. Лучшая практика – использовать HTTPS на порту 443 (например, https://serverfault.com:443) и HTTP на порту 80 (например, http://serverfault.com:80), чтобы обеспечить шифрование и совместимость с отраслевыми стандартами.

Ответ или решение

Разница между HTTP на порту 443 и HTTPS на порту 80

Общее описание

При обсуждении HTTP и HTTPS важно понимать, что протоколы передачи данных, используемые в интернете, играют ключевую роль в обеспечении безопасности обмена информацией. В частности, HTTP (Hypertext Transfer Protocol) и HTTPS (HTTP Secure) имеют различные уровни защиты данных.

Порты и их значения

Порты 80 и 443 имеют традиционные назначения:

  • Порт 80 обычно используется для HTTP-трафика.
  • Порт 443 предназначен для HTTPS, который обеспечивает шифрование данных.

Однако, использование этих протоколов на неверных портах, как в случае с http://serverfault.com:443 и https://serverfault.com:80, создает ряд проблем и недостатков.

Анализ: HTTP на порту 443

Общая характеристика

  • Протокол: HTTP
  • Порт: 443

Использование HTTP на порту 443 подразумевает передачу данных в незашифрованном виде. Хотя порт 443 традиционно ассоциируется с защищенной передачей данных, само наличие HTTP-трафика на этом порту не обеспечивает никакой безопасности. Все данные передаются в открытом виде и могут быть легко перехвачены злоумышленниками. Это делает такое соединение гораздо менее безопасным по сравнению с использованием HTTPS.

Анализ: HTTPS на порту 80

Общая характеристика

  • Протокол: HTTPS
  • Порт: 80

Наоборот, использование HTTPS на порту 80 предполагает, что данные будут передаваться с шифрованием. Тем не менее, это вызывает сложности совместимости. Большинство браузеров и серверов ожидают, что HTTPS будет использоваться на порту 443, и попытка осуществить соединение с HTTPS на порту 80 может привести к ошибкам подключения. Несмотря на теоретическую защиту, дополнительный риск связан с тем, что использование нестандартного порта может открыть уязвимости и затруднить обработку трафика.

Проблема безопасности

Теоретическая и практическая безопасность

Как в случае http://serverfault.com:443, так и в случае https://serverfault.com:80, оба соединения имеют серьезные недостатки.

  1. Http на порту 443: Несмотря на использование порта, связанного с защищенным трафиком, данные передаются без шифрования. Это более уязвимо к перехвату.

  2. Https на порту 80: Хотя шифрование присутствует, система не ожидает HTTPS на этом порту, что делает подключение нестабильным и потенциально уязвимым.

Рекомендации

Лучшей практикой является использование стандартных портов:

  • HTTPS на порту 443
  • HTTP на порту 80

Это не только обеспечивает безопасность данных, но и минимизирует проблемы совместимости, улучшая удобство использования.

Заключение

Таким образом, http://serverfault.com:443 менее безопасен, чем https://serverfault.com:80, но оба варианта представляют собой практические проблемы и являются не лучшими решениями. Использование стандартных портов с правильными протоколами является ключом к обеспечению безопасной и эффективной передачи данных в интернете.

Оцените материал
Добавить комментарий

Капча загружается...