Сколько данных просочилось из SSL-соединения? - PullRequest
5 голосов
/ 27 января 2010

Скажите, что я пытался получить доступ к https://www.secretplace.com/really/really/secret.php, что на самом деле отправляется в виде простого текста до установления сеанса SSL?

Браузер вмешивается, видит, что я хочу https, инициирую сеанс SSL с secretplace.com (т.е. без передачи пути в виде обычного текста) и только после того, как сеанс SSL настроен, передайте путь?

Просто любопытно.

Ответы [ 3 ]

5 голосов
/ 24 февраля 2010

Как правило, имя сервера, с которым вы разговариваете, просочилось («stackoverflow.com»). Это, вероятно, было утечка через DNS, прежде чем SSL / TLS мог начать подключение, хотя.

Сертификат сервера просочился. Любой отправленный вами сертификат клиента (не общая конфигурация) может быть отправлен, а может и нет, в открытом виде. Активный злоумышленник (человек посередине) может просто попросить ваш браузер об этом и в любом случае получить его.

Часть пути URL ("/ questions / 2146863 / how-much-data-is-leak-from-ssl-connection") НЕ должна быть пропущена. Он передается в зашифрованном и безопасном виде (при условии, что клиент и сервер настроены правильно, и вы не нажали ни на какие ошибки сертификата).

Другой постер верен: возможны атаки с анализом трафика, которые могут дать некоторые сведения о статическом контенте. Если сайт очень большой и динамичный (скажем, stackoverflow.com), я подозреваю, что может быть довольно сложно получить из него много полезной информации. Однако, если есть только несколько файлов с отличительными размерами, загрузка может быть очевидной.

Данные формы POST НЕ должны быть пропущены. Хотя обычные предостережения применяются, если вы передаете объекты известных размеров.

Время атаки может раскрыть некоторую информацию. Например, злоумышленник может сделать акцент на различных частях приложения (например, на определенной таблице базы данных) или предварительно загрузить статические файлы с диска и посмотреть, как ваше соединение замедляется или ускоряется в ответ.

Это утечка информации, но, вероятно, это не имеет большого значения для большинства сайтов.

5 голосов
/ 27 января 2010

HTTP Secure

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

Кроме того, HTTPS уязвим при применении к общедоступному статическому контенту. Весь сайт может быть проиндексирован с помощью веб-сканера, а URI зашифрованного ресурса может быть получен, зная только размер перехваченного запроса / ответа. Это позволяет злоумышленнику иметь доступ к незашифрованному тексту (общедоступный статический контент) и зашифрованному тексту (зашифрованная версия статического контента), что позволяет выполнять криптографическую атаку.

Поскольку SSL работает ниже HTTP и не знает протоколов более высокого уровня, серверы SSL могут строго представлять только один сертификат для конкретной комбинации IP / порт. Это означает, что в большинстве случаев невозможно использовать виртуальный хостинг на основе имен с HTTPS. Существует решение под названием Server Name Indication (SNI), которое отправляет имя хоста на сервер перед шифрованием соединения, хотя многие старые браузеры не поддерживают это расширение. Поддержка SNI доступна начиная с Firefox 2, Opera 8 и Internet Explorer 7 в Windows Vista.

0 голосов
/ 18 февраля 2010

Ваш браузер запросил к https://url:443,, и это ясно. Затем сервер и клиент будут согласовывать набор шифров для защиты данных. Обычно это будет включать в себя алгоритм симметричного шифрования (например, 3DES или RC4 или AES) и код аутентификации сообщения (например, HMAC-SHA1) для обнаружения взлома. Обратите внимание, что технически оба они являются необязательными, IS возможно иметь SSL без шифрования, но вряд ли сегодня.

Как только клиент (ваш браузер) и веб-сервер согласовали набор шифров и ключи определены, остальная часть диалога защищена.

Если честно, я бы подключил анализатор протоколов и посмотрел бы, как все это разворачивается у вас на глазах !!

Помните, что SSL находится на транспортном уровне стека TCP / IP, ниже данных браузера, поэтому все защищено.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...