
Лекція 8. Протокол SSL
Навчальні питання
1. Загальний опис протоколу SSL 1
2. Обмін даними в SSL 5
Час – 2 год.
Література.
Деднев M. А., Дыльнов Д. В., Иванов М. А. Защита информации в банковском деле и электронном бизнесе. — М.: КУДИЦ-ОБРАЗ, 2004. - 512с. - (СКБ - специалисту по компьютерной безопасности).
Вступ
Существует множество платежных систем, предназначенных для удаленных платежей с использованием банковских карт. В этой лекции рассмотрим протокол Secure Socket Layer (SSL), который нашел широкое применение в системах Интернет-банкинга различных банков Украины.
Протокол SSL предназначен для безопасного обмена информацией. Он нашел широкое применение в приложениях электронной коммерции. В 1994 году SSL был встроен в браузер Netscape Navigator для обеспечения безопасной связи между клиентом и сервером через открытые сети, такие, как Интернет. Первой широко используемой версией был SSL 2.0; версия 1.0 была тестовой и использовалась только компанией Netscape. Применяемая в настоящее время версия 3.0 отличается от предыдущей лишь некоторыми исправлениями. Версия 3.0 использовалась в обсуждениях протокола TLS (Transport Layer Security) рабочей группы IETF1. В результате протокол TLS, отличающийся от SSL некоторыми деталями, был стандартизован IETF. Общество разработчиков систем мобильной связи адаптирует TLS для систем беспроводной связи (протокол WTLS (Wireless TLS)).
Загальний опис протоколу ssl
Главным назначением SSL-протокола является обеспечение надежного способа конфиденциального обмена информацией между двумя удаленно взаимодействующими удаленными друг от друга приложениями. Протокол реализуется в виде многослойной среды, специально предназначенной для безопасного переноса секретной информации, через открытые каналы связи. В качестве первого слоя в такой среде используется транспортный протокол. Вторым слоем, накладываемым на TCP, является SSL Record Protocol. Вместе эти два слоя, TCP и SSL Record Protocol, формируют своеобразное ядро SSL. В дальнейшем это ядро становится оболочкой для всех последующих протокольных инфраструктур. Одной из таких структур является SSL Handshake Protocol, позволяющий серверу и клиенту аутентифицировать друг друга, согласовывать криптографические алгоритмы и ключи, перед тем как приложения, работающие на серверной и клиентской стороне, смогут начать передачу или прием защищаемой информации.
SSL ‑ это протокол, который может использоваться для обеспечения безопасного обмена любыми данными между двумя точками. Этим он отличается, например, от протокола S-НТТР (Secure HTTP), который защищает только сообщения HTTP (Hypertext Transfer Protocol). Протокол SET (Secure Electronic Transaction), разработанный Visa и MasterCard, отличается тем, что предназначен исключительно для транзакций по банковским картам.
Архитектура
SSL функционирует прозрачно для пользователя между приложением и транспортным уровнем модели OSI (Open System Interconnection - модель взаимодействия открытых систем; OSI - семиуровневая иерархическая модель, разработанная Международным комитетом по стандартизации ISO для определения спецификации и связи сетевых протоколов), используя криптографические алгоритмы для обеспечения безопасности информационного обмена клиента и сервера. SSL широко используется в интранет-сетях и Интернете в форме SSL-серверов и клиентов от ведущих фирм-разработчиков ПО (Netscape, Microsoft, IBM, Open Market и др.). SSL дополняет стандарт Winsock, работает на уровне сокетов, обеспечивая безопасность ряда других протоколов, использующих сокеты.
В соответствии с протоколом SSL между двумя точками сети создаются защищенные туннели, как показано на рис. 1.
Рис. 1. Туннель на базе протокола SSL
На рис. 2 показано соответствие между SSL и другими протоколами Интернета.
Рис. 2. Соответствие между SSL и другими протоколами Интернет
SSL не может работать поверх протокола UDP, так как последний не гарантирует доставку пакетов IP адресату. Перерывы в потоке пакетов могут быть истолкованы как специальные паузы в целях обеспечения безопасности, и связь может быть прервана. Таким образом, SSL не может также защитить следующие протоколы: SNMP (Simple Network Management Protocol — протокол сетевого администрирования, широко используемый в настоящее время; входит в стек протоколов TCP/IP), NFS (Network File System - набор протоколов на основе транспортного протокола UDP, позволяющий Unix-машинам, IBM PC и ПК Macintosh совместно использовать файлы в локальной сети), DNS (Domain Name System - механизм, используемый в сети Интернет и устанавливающий соответствие между числовыми IP-адресами и текстовыми именами), протокол передачи голоса в соответствии с рекомендацией Н.323 ITU-T (International Telecommunications Union).
IANA (Internet Assigned Numbers Authority - уполномоченный орган ISOC и FNC, наблюдающий и координирующий назначение каждого уникального идентификатора протокола, применяемого в Интернете) выделило специальные IP-порты для некоторых приложений, использующих SSL (табл. 1).
Таблица 1. IP-порты приложений, защищенных SSL
Защищенный протокол |
Порт |
Незащищенный протокол |
Приложение |
HTTPS |
443 |
HTTP |
Безопасные транзакции типа запрос-ответ |
SSMTP |
465 |
SMTP |
|
SNNTP |
563 |
NNTP |
Сетевые новости |
SSL-LDAP |
636 |
LDAP |
Облегченная версия Х.500 |
SPOP3 |
995 |
POP3 |
Удаленный доступ к почтовому ящику для скачивания сообщений |