Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SSL.docx
Скачиваний:
7
Добавлен:
15.04.2015
Размер:
561.52 Кб
Скачать

5. Войны в песочнице — Часть 2. Обход https

Ранеебыла получена возможность перехватывать весь трафик исследуемого субъекта. Однако банальный анализ логов tcpdump не даёт значимого результата, так как большинство сервисов использует шифрование с помощью SSL для передачи важных данных, в том числе паролей.

Secure Sockets Layer

Протокол SSL используется уже более десяти лет, и информации о нём в Сети предостаточно. Так что я лишь выделю основные свойства SSL, а детали их реализации желающие могут изучить самостоятельно:

  • Аутентификация – сервер всегда аутентифицируется, в то время как клиент аутентифицируется в зависимости от алгоритма.

  • Целостность – обмен сообщениями включает в себя проверку целостности.

  • Частность канала – шифрование используется после установления соединения и используется для всех последующих сообщений.

Вариантов для перехвата данных, передаваемых через SSL немного:

Пассивное наблюдение

Не годится, так как передаваемые данные зашифрованы временным ключом. Ключ этот известен и клиенту и серверу, но егоневозможновычислить, лишьнаблюдаясо стороны за трафиком. Примером того, как можно реализовать защиту от пассивного наблюдения являетсяалгоритм Диффи-Хеллмана.

Man in the middle

Если мы не можем «влезть» в защищённое соединение, то почему бы не установить два разных соединения: одно между клиентом и атакующим (который в данном случае притворяется сервером), и второе между атакующим и сервером? От этого алгоритм Диффи-Хелмана не защищён. Но SSL, в отличии от ДХ, требует аутентификацию сервера, и поэтому такой подход также обречён на неудачу. Клиент при установлении соединения ждёт от сервера аутентификации (она при использовании SSL обязательна). Но вместо сервера он будет соединён с атакующим, который не владеет цифровым сертификатом, соответствующим имени сайта. Есть два способа решения проблемы отсутствия сертификата:

  • Создать необходимый сертификат самостоятельно, и самому подписать его. Такие сертификаты называются «самоподписанными». Однако система цифровых сертификатов требует возможности проверить состоятельность сертификата. Для этого используются «удостоверяющие центры» (Certification authority, CA), которые могут подписывать сертификаты сайтов (и не только), а также подписывать сертификаты других удостоверяющих центров. Сертификаты корневых CA – их немного – внесены в браузер разработчиками. И браузер считает сертификат подлинным только если он находится в конце цепочки сертификатов, начинающейся с одного из CA, где каждый следующий сертификат подписанпредыдущим в цепочке.

  • Получить у удостоверяющего центра сертификат для какого-то сайта, и использовать его для атаки. Не годится, так как в каждом сертификате сайта указан домен, для которого он выдан. В случае несовпадения домена в адресной строке с доменом, указанным в сертификате – браузер начнёт бить тревогу.

В обоих случаях браузер покажет жертве какую-нибудь пугающую картинку, например такую:

Пользовательские интерфейсы

Разработчики браузеров используют методику кнута и пряника, чтобы заставить пользователей заботиться о своей безопасности. Ярко-красная картинка, показанная выше, а также необходимость нажимать лишнюю кнопку «Продолжить всё равно» – это кнут, который побуждает пользователей избегать сайтов, где есть нарушения в работе SSL. Каков же пряник? Единственное «поощрение» за посещение сайтов, правильно использующих SSL – зеленый цвет или картинка «замочка» в адресной строке. Сайты, правильно использующие SSL, с разным классом сертификатов: Сайты, не использующие SSL:Сайты с правильным сертификатом, но имеющие нарушения разной степени тяжести в использовании SSL:К сожалению, последнее встречается даже на крупных сайтах, лишний раз снижая внимание пользователей к этому значку в адресной строке.По картинкам видим, что кнут используется чаще и сам по себе заметнее, чем пряник.

Выводы

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

  • Если пользователь не получит от браузера подтверждение безопасности, то по сравнению с страшными предупреждениями об ошибках в SSL, которые он часто встречает на своём пути, отсутствие какого-то зеленого замочка он заметит с куда меньшей вероятностью

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]