В данной работе были рассмотрены возможные виды атак при использовании протокола установления связи в системе IP-телефонии. Также рассмотрены методы для повышения безопасности в системе IP-телефонии и предотвращения рассмотренных видов атак.
Ключевые слова: безопасность, SIP, RTP, IP-телефония, TLS.
В IP-телефонии для установления связи между клиентами используется протокол SIP. Структура и синтаксис сообщений похож на те что используется в HTTP, что представляет собой набор текстовых строк, заголовки и тело сообщения разделены пустой строкой [1, с. 75].
Протоколы SIP и RTP, используемы для передачи медиа данных, были разработаны без учета необходимости защищать передаваемую информацию, в следствии чего возможны следующие виды атак:
- Фрод звонков — атакующий проникает в систему IP-телефонии и имеет возможность совершать звонки, украсть пароли и имена пользователей [2].
- Вирусы — вирус, попавший в сеть IP-телефонии может начать рассылать спам ее абонентам. Т. к. клиенты для IP-телефонии могут быть реализованы в виде программ, то данному виду атаки подвержен не только клиент, но и операционная система, в следствии чего могут быть украдены данные.
- Нарушение звонков — атакующий рассылает пакеты клиентам звонка, что приводит к ухудшению качества, задержкам и даже прекращению звонка.
- DoS — данная атака нарушает доступность сервиса, также не позволяет авторизованным пользователям использовать сервис. Данная атака может осуществляться за счет отправки большого количества сообщений “Invite” и “Registrer”, что нарушает работу компонентов SIP.
- Подслушивание — атакующий прослушивает весь трафик в IP-телефонии.
- Подбор паролей
- Man-In-The-Middle — атакующий проникает в звонок между пользователями, и может не только прослушивать, но и изменять сообщения между клиентами.
Для защиты передаваемы данных, может быть использован протокол TLS — протокол защиты транспортного уровня. Данный протокол использует асимметричное шифрования для аутентификации, симметричное шифрование для конфиденциальности и коды аутентичности сообщений для сохранения целостности сообщений.
Также для защиты данных может быть использован IPsec — набор протоколов для обеспечения защиты данных, передаваемых по протоколу IP, обеспечивающих аутентификацию, проверку целостности и/или шифрование IP-пакетов [3].
При сравнении протоколов TLS и IPsec можно отметить, что TLS имеет следующие преимущества:
- Отсутствие постоянного соединения между сервером и клиентом.
- Реализуется на уровне представления
Недостатки:
- Не может быть использован с протоколом UDP
- Требуется отслеживать состояние соединения
Однако протокол IPsec реализуется на сетевом уровне и позволяет шифровать данные, но при этом сложен в реализации, предъявляет дополнительные требования к оборудованию сети.
Для улучшения защиты может быть использован VPN. В случае невозможности использования VPN, необходимо использовать VLAN. Данные решения создают виртуальную сеть, что позволяет передавать данные в ненадежных сетях [4].
Шифрование это один из ключевых механизмов, не позволяющего атакующему получить ценную информацию из перехваченных сообщений.
На данный момент аутентификация происходит в два этапа, что не является надежным методом. CHAP — протокол аутентификации с косвенным согласованием. Является алгоритмом проверки подлинности и предусматривает передачу не самого пароля пользователя, а косвенных сведений о нём. Аутентификация узла выполняется путём трехэтапной процедуры согласования.
Преимущества CHAP:
- Значение идентификатора и переменного значения открытого ключа возрастают, что предотвращает атаки повторного воспроизведения.
- Метод проверки подлинности основан на том, что аутентификатору и узлу известен секрет, который никогда не посылается по каналу
Анализ трафика может быть осуществлен при помощи DIP, что позволяет анализировать содержимое передаваемых пакетов и блокировать вирусы.
Для передачи медиа данных необходимо использовать SRTP, который предназначен для шифрования, установления подлинности сообщения, целостности данных.
Для шифрования данных, SRTP использует алгоритм AES, который может использоваться в двух режимах:
- Сегментированный целочисленный счётчик — режим, который осуществляет произвольный доступ к любым блокам, что является существенным для трафика RTP, передающегося в публичных сетях с непредсказуемым уровнем надежности и возможной потерей пакетов. AES, работающий в этом режиме, является алгоритмом шифрования по умолчанию, с длиной шифровального ключа по умолчанию в 128 бит и ключом сессии длиной в 112 бит.
- f8-режим — вариант режима способа обратной связи, расширенного, чтобы быть доступным с изменённой функцией инициализации. Значения по умолчанию для шифровального ключа и ключа сессии — то же, что и в AES в режиме
Рассмотрев приведенные методы защиты, нужно отметить, что для обеспечения безопасного соединения, необходимо использовать TLS, т. к. данный протокол реализуется на транспортном уровне и не требует поддержки данного протокола на промежуточных устройствах, в отличаи IPSec.
Так как TLS не обеспечивает защиту сообщений в случае их перехвата, то необходимо воспользоваться шифрованием данных. В данном случае лучшим выбором будет использование VPN который позволяет шифровать данные, так как в этом случае нет необходимости реализовывать шифрование на клиентах и повышает совместимость, отсутствует риск ошибок в реализации шифрования, VPN может быть обновлен для использования более современных методов шифрования без необходимости обновления кода клиента.
Так же необходимо использовать аутентификацию CHAP. Для передачи медиа информации должен использоваться протокол SRTP.
Литература:
- Internet Multimedia Communications Using SIP/ Rogelio Martínez Perea — Burlington: Morgan Kaufmann Publishers, 2008. — 75p.
- http://www.centurylinkbrightideas.com/how-to-address-voip-security-challenges
- https://www.researchgate.net/publication/235601569_SIP_Server_Security_with_TLS_Relative_Performance_Evaluation
- https://searchunifiedcommunications.techtarget.com/feature/SIP-network-security-measures