05 Апр, 2023

Протокол начала сеанса (SIP)

Penetration Testing as a service (PTaaS)

Tests security measures and simulates attacks to identify weaknesses.

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

Общие порты SIP

Порт TCP/UDP 5060: Это порт по умолчанию для SIP-трафика. Конечные точки SIP используют этот порт для установления сеансов связи и управления ими.

Порт TCP/UDP 5061: Этот порт обычно используется для защищенного SIP-трафика (SIPS), который шифруется с помощью системы безопасности транспортного уровня (TLS).

Порт TCP/UDP 5062: Этот порт используется для трафика протокола описания сеанса (SDP), который используется для описания характеристик мультимедийных сеансов.

Порт TCP/UDP 5063: Этот порт используется для трафика транспортного протокола реального времени (RTP), который используется для передачи аудио- и видеоданных между конечными точками SIP.

Порт TCP/UDP 5080: Некоторые реализации SIP используют этот порт в качестве альтернативы порту 5060.

Стандартные команды от неавторизованных пользователей

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

INVITE: Эта команда используется для инициирования сеанса между двумя конечными точками SIP. Неавторизованный пользователь может попытаться использовать эту команду для установления соединения с SIP-сервером или другой конечной точкой.

REGISTER: Эта команда используется для регистрации конечной точки SIP на SIP-сервере. Неавторизованный пользователь может попытаться использовать эту команду для регистрации поддельной конечной точки или выдать себя за существующую конечную точку.

BYE: Эта команда используется для завершения сеанса между двумя конечными точками SIP. Неавторизованный пользователь может попытаться использовать эту команду для нарушения связи или вызвать атаку типа "отказ в обслуживании" (DoS).

CANCEL: Эта команда используется для отмены ранее отправленного SIP-сообщения. Неавторизованный пользователь может попытаться использовать эту команду для нарушения связи или вызвать DoS-атаку.

OPTIONS: Эта команда используется для запроса конечной точки SIP или сервера о его возможностях. Неавторизованный пользователь может попытаться использовать эту команду для проверки инфраструктуры SIP на наличие уязвимостей.

INFO: Эта команда используется для отправки несущественной информации между конечными точками SIP. Неавторизованный пользователь может попытаться использовать эту команду для рассылки спама или других нежелательных сообщений.

Инструменты для использования протокола SIP

Ручные Инструменты:

  • SIPVicious: Набор инструментов, который позволяет злоумышленникам сканировать устройства и сети на базе SIP, снимать отпечатки пальцев и эксплуатировать их. Он включает в себя инструменты для взлома паролей, подделки SIP-сообщений и проведения атак с подслушиванием.

  • SIPp: Инструмент для стресс-тестирования устройств и сетей на базе SIP. Он может имитировать тысячи конечных точек SIP и генерировать трафик для тестирования производительности и масштабируемости инфраструктуры.

  • SIP-Torture: Инструмент для тестирования совместимости и соответствия устройств и сетей на базе SIP протоколу SIP. Он может тестировать различные сценарии SIP и генерировать отчеты о результатах.

  • SIPScan: Инструмент для сканирования сетей на наличие SIP-устройств и перечисления их возможностей и уязвимостей. Он может обнаруживать открытые SIP-порты, идентифицировать SIP-серверы и клиентов и извлекать информацию из SIP-сообщений.

  • SIPScan: Инструмент для взлома SIP-паролей с использованием словарных атак или методов грубой силы. Он использует различные методы для ускорения процесса взлома пароля, такие как параллельная обработка и ускорение графического процессора.

  • SIPScan: Инструмент для разделения устройств и сетей на основе SIP для поиска уязвимостей и эксплойтов. Он может генерировать и отправлять искаженные SIP-сообщения для проверки надежности и безопасности инфраструктуры.

  • SIPDump: Инструмент для сбора и анализа SIP-трафика в сети. Он может декодировать и отображать SIP-сообщения, извлекать из них информацию и генерировать статистику по трафику.

  • SIPAuthCrack: Инструмент для взлома учетных данных SIP-аутентификации с использованием методов грубой силы. Его можно использовать для проверки надежности SIP-паролей и выявления слабых паролей, которые можно легко взломать.

Автоматизированные инструменты:

  • Metasploit: Популярный фреймворк для разработки и выполнения эксплойтов против различных целей, включая устройства и сети на базе SIP. Он включает в себя набор модулей для использования уязвимостей SIP и проведения атак.

  • Nmap: Средство сетевого сканирования, которое может использоваться для обнаружения SIP-устройств и служб в сети. Он может идентифицировать открытые порты SIP, определять операционную систему и версию устройств и извлекать другую информацию из сообщений SIP.

  • SIPVader: Автоматизированный инструмент для обнаружения и использования уязвимостей SIP. Он включает в себя базу данных известных уязвимостей и эксплойтов SIP и может использоваться для запуска автоматических атак на устройства и сети на базе SIP.

  • SIPArmyKnife: Универсальный инструмент для тестирования и эксплуатации устройств и сетей на базе SIP. Он включает в себя различные модули для сканирования, снятия отпечатков пальцев, использования и тестирования инфраструктуры SIP.

  • SIPRider: Автоматизированный инструмент для выявления и использования уязвимостей SIP. Он может сканировать сети на наличие SIP-устройств, извлекать информацию из SIP-сообщений и запускать автоматические атаки на уязвимые устройства.

  • SIPProxy: Автоматизированный инструмент для перехвата и изменения SIP-трафика в сети. Он может быть использован для тестирования безопасности и надежности инфраструктуры SIP, а также для проведения атак с подслушиванием и модификацией.

  • SIPVampire: Автоматизированный инструмент для обнаружения и использования уязвимостей SIP. Он может сканировать сети на наличие SIP-устройств, идентифицировать открытые порты и службы и запускать автоматические атаки на уязвимые устройства.

  • SIPpScenario: Автоматизированный инструмент для генерации и выполнения сценариев SIP-трафика. Он может быть использован для стресс-тестирования инфраструктуры SIP, а также для тестирования функциональности и соответствия требованиям устройств и сетей на базе SIP.

Плагины для браузера:

  • SIP Inspector: Плагин для браузера для проверки и отладки SIP-трафика в режиме реального времени. Он может захватывать и отображать SIP-сообщения, декодировать и анализировать их содержимое, а также предоставлять информацию о поведении устройств и сетей на базе SIP.

  • SIP Workbench: Плагин для браузера для тестирования и отладки приложений на основе SIP. Он включает в себя различные инструменты для генерации и отправки SIP-сообщений, анализа их ответов и отладки проблем в приложениях на основе SIP.

  • SIP Tester: Плагин для браузера для тестирования и устранения неполадок устройств и сетей на базе SIP. Он может генерировать и отправлять SIP-сообщения, эмулировать различные сценарии SIP и предоставлять подробные отчеты о результатах.

  • SIP Debug: Плагин для браузера для отладки и устранения неполадок приложений на основе SIP. Он может захватывать и отображать SIP-сообщения, анализировать их содержимое и предоставлять информацию о поведении устройств и сетей на базе SIP.

Последние пять известных CVE для SIP

CVE-2023-28099 – OpenSIPS - это серверная реализация протокола инициирования сеанса (SIP). До версий 3.1.9 и 3.2.6, если `ds_is_in_list()` используется с недопустимой строкой IP-адреса (`NULL` - недопустимый ввод), OpenSIPS попытается напечатать строку со случайного адреса (мусор стека), что может привести к сбою. Все пользователи `ds_is_in_list()` без переменной `$si` в качестве 1-го параметра могут быть затронуты этой уязвимостью в большей, меньшей степени или вообще без нее, в зависимости от того, являются ли данные, передаваемые функции, допустимой строкой адреса IPv4 или IPv6 или нет. Исправления будут доступны, начиная с младших выпусков 3.1.9 и 3.2.6. Известных обходных путей не существует. 

• CVE-2023-28098 – OpenSIPS - это серверная реализация протокола инициирования сеанса (SIP). До версий 3.1.7 и 3.2.4 специально созданный заголовок авторизации приводил к сбою OpenSIPS или неожиданному поведению из - за ошибки в функции `parse_param_name()` . Эта проблема была обнаружена при выполнении управляемого размытия покрытия функции parse_msg. Анализатор адресов определил, что проблема возникла в функции `q_memchr()`, которая вызывается функцией `parse_param_name()`. Эта проблема может привести к неправильному поведению программы или сбою сервера. Это влияет на конфигурации, содержащие функции, которые используют затронутый код, такие как функция `www_authorize()` . Версии 3.1.7 и 3.2.4 содержат исправление.

• CVE-2023-28097 – OpenSIPS - это серверная реализация протокола инициирования сеанса (SIP). До версий 3.1.9 и 3.2.6 искаженное сообщение SIP, содержащее большое значение _Content-Length_ и специально созданный URI запроса, вызывало ошибку сегментации в OpenSIPS. Эта проблема возникает, когда OpenSIPS был выделен большой объем общей памяти с использованием флага `-m`, например 10 ГБ оперативной памяти. В тестовой системе эта проблема возникала, когда общая память была установлена на `2362` или выше. Эта проблема исправлена в версиях 3.1.9 и 3.2.6. Единственный обходной путь - гарантировать, что значение длины содержимого входных сообщений никогда не будет больше `2147483647`.

• CVE-2023-28096 – OpenSIPS, серверная реализация протокола инициализации сеанса (SIP), имеет утечку памяти, начиная с ветви 2.3 и priot до версий 3.1.8 и 3.2.5. Утечка памяти была обнаружена в функции `parse_mi_request` при выполнении фаззинга, управляемого покрытием. Эта проблема может быть воспроизведена путем отправки нескольких запросов вида `{“jsonrpc”: “2.0”,”метод”: “log_le`. Это искаженное сообщение было протестировано на экземпляре OpenSIPS через транспортный уровень FIFO и, как было обнаружено, увеличивало потребление памяти с течением времени. Чтобы воспользоваться этой утечкой памяти, злоумышленникам необходимо получить доступ к интерфейсу управления (MI), который обычно должен быть доступен только на доверенных интерфейсах. В случаях, когда MI подключен к Интернету без аутентификации, злоупотребление этой проблемой приведет к исчерпанию памяти, что может повлиять на доступность базовой системы. Для воспроизведения этой проблемы обычно не требуется проверка подлинности. С другой стороны, утечки памяти могут происходить в других областях OpenSIPS, где библиотека cJSON используется для синтаксического анализа объектов JSON. Проблема была исправлена в версиях 3.1.8 и 3.2.5.

• CVE-2023-28095 – OpenSIPS - это серверная реализация протокола инициирования сеанса (SIP). Версии до 3.1.7 и 3.2.4 имеют потенциальную проблему в `msg_translator.c: 2628`, которая может привести к сбою сервера. Эта проблема была обнаружена при размытии функции `build_res_buf_from_sip_req`, но ее не удалось воспроизвести в запущенном экземпляре OpenSIPS. Эту проблему не удалось использовать против запущенного экземпляра OpenSIPS, поскольку не было обнаружено ни одной общедоступной функции, использующей этот уязвимый код. Даже в случае эксплуатации с помощью неизвестных векторов крайне маловероятно, что эта проблема приведет к чему-либо, кроме отказа в обслуживании. Эта проблема была исправлена в версиях 3.1.7 и 3.2.4.

Полезная информация

– SIP - это сигнальный протокол, используемый для инициирования, поддержания и завершения мультимедийных сеансов по IP-сетям.

– Это открытый стандартный протокол, разработанный Инженерной рабочей группой по Интернету (IETF).

– SIP используется для организации голосовых и видеозвонков, обмена мгновенными сообщениями, присутствия и других мультимедийных сервисов.

– SIP работает на прикладном уровне модели OSI и использует TCP или UDP в качестве транспортного протокола.

– SIP-сообщения состоят из начальной строки, набора заголовков и необязательного тела сообщения.

– SIP использует протокол описания сеанса (SDP) для согласования параметров мультимедийного сеанса, таких как типы кодеков, форматы мультимедиа и сетевые адреса.

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

– SIP - это расширяемый протокол, что означает, что он может быть расширен для поддержки новых сервисов и функций.

– SIP может использоваться с различными протоколами VoIP, такими как H.323, MGCP и RTP.

– SIP используется несколькими популярными приложениями и службами VoIP, такими как Skype, Google Voice и Microsoft Teams.

– SIP может быть уязвим для различных типов атак, таких как подмена, наводнение, подслушивание и атаки типа "отказ в обслуживании" (DoS).

– SIP может быть защищен с помощью нескольких механизмов, таких как безопасность транспортного уровня (TLS), защищенный транспортный протокол реального времени (SRTP), а также механизмы аутентификации и авторизации.

– SIP используется в нескольких отраслях, таких как телекоммуникации, здравоохранение, образование и финансы.

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

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

Известные баннеры

“SIP/2.0” – Это наиболее распространенный баннер, используемый SIP-серверами и клиентами для идентификации версии и протокола SIP.

“АТС Asterisk” – Этот баннер используется программным обеспечением Asterisk PBX с открытым исходным кодом, которое широко используется для приложений VoIP.

“Свободный переключатель” – Этот баннер используется программным обеспечением FreeSWITCH с открытым исходным кодом, которое представляет собой масштабируемую и модульную платформу VoIP.

“OpenSIPS” (Открытые файлы) – Этот баннер используется программным обеспечением OpenSIPS с открытым исходным кодом, которое представляет собой высокопроизводительный SIP-сервер, используемый для голосовой и видеосвязи.

“Камайлио” – Этот баннер используется программным обеспечением Kamailio с открытым исходным кодом, которое представляет собой высокопроизводительный SIP-сервер, используемый для приложений связи в реальном времени.

“SIP Экспресс-маршрутизатор” – Этот баннер используется программным обеспечением SER с открытым исходным кодом, которое представляет собой быстрый и масштабируемый SIP-сервер, используемый для приложений VoIP.

“Cisco-CP7960G” – Этот баннер используется IP-телефонами Cisco, которые поддерживают SIP, а также другие протоколы VoIP.

“Polycom SOUNDPOINTIP-SPIP” (Поликомсоундпоинт) – Этот баннер используется IP-телефонами Polycom, которые поддерживают SIP, а также другие протоколы VoIP.

“Офис интеллектуальной собственности Avaya” – Этот баннер используется IP-телефонами Avaya, которые поддерживают SIP, а также другие протоколы VoIP.

“Телефонная система 3CX” – Этот баннер используется телефонной системой 3CX, которая представляет собой программную УАТС, используемую для приложений VoIP.

Книги для учебы SIP

Протокол начала сеанса: Полное руководство по самооценке автор: Джерардус Блокдик: Эта книга предназначена для того, чтобы помочь отдельным лицам и организациям оценить свое понимание протокола инициализации сеанса (SIP) и связанных с ним технологий. Она включает в себя более 700 вопросов и ответов, которые охватывают такие темы, как архитектура SIP, сигнализация SIP, прокси и серверы SIP, а также безопасность SIP.

SIP: Понимание протокола начала сеанса автор: Алан Б. Джонстон: Эта книга содержит исчерпывающий обзор SIP и его приложений. В нем рассматриваются основы SIP, включая его архитектуру и компоненты, а затем рассматриваются более сложные темы, такие как безопасность SIP и SIP-транкинг.

SIP Demystified автор: Гонсало Камарильо: Эта книга представляет собой руководство для начинающих по SIP, которое охватывает основы SIP и его применения. Он включает подробные объяснения обмена сообщениями по протоколу SIP, потоков вызовов и настройки вызовов по протоколу SIP, а также информацию о безопасности и функциональной совместимости SIP.

Безопасность SIP автор Доргам Сисалем: Эта книга посвящена безопасности SIP и включает информацию о различных угрозах безопасности SIP и уязвимостях. В нем рассматриваются такие темы, как аутентификация и шифрование по протоколу SIP, атаки типа "отказ в обслуживании" по протоколу SIP и мошенничество на основе SIP.

Руководство по SIP: Сервисы, технологии и безопасность протокола инициирования сеанса автор : Сайед А. Ахсон и Мохаммад Ильяс: Эта книга представляет собой всеобъемлющее руководство по SIP и его приложениям. В нем рассматриваются основы SIP, включая его архитектуру и компоненты, а также расширенные темы, такие как безопасность SIP и сервисы на основе SIP.

SIP - Транкинг Кристина Хаттинг и Дэррил Сладден: Эта книга посвящена конкретно SIP-транкингу, который представляет собой способ подключения телефонной системы организации к коммутируемой телефонной сети общего пользования (ТСОП) с использованием SIP. В нем рассматриваются такие темы, как архитектура SIP-транкинга, поставщики SIP-транкинга и развертывание SIP-транкинга.

Построение систем телефонии с помощью OpenSIPS 1.6 автор : Флавио Э. Гонсалвес: Эта книга посвящена созданию систем телефонии с использованием OpenSIPS, который представляет собой SIP-сервер с открытым исходным кодом. В нем рассматриваются такие темы, как архитектура OpenSIPS, обработка сообщений SIP и построение полноценной телефонной системы с использованием OpenSIPS.

Список полезной нагрузки для Протокол начала сеанса

  • INVITE – Эта полезная нагрузка используется для инициирования сеанса между двумя сторонами.

  • АКК – Эта полезная нагрузка используется для подтверждения успешного получения SIP-сообщения.

  • BYE – Эта полезная нагрузка используется для завершения сеанса между двумя сторонами.

  • CANCEL – Эта полезная нагрузка используется для отмены ожидающего приглашения на сеанс.

  • REGISTER – Эта полезная нагрузка используется для регистрации контактной информации пользователя на SIP-сервере.

  • OPTIONS – Эта полезная нагрузка используется для запроса возможностей удаленного SIP-сервера или пользовательского агента.

  • UPDATE – Эта полезная нагрузка используется для изменения существующего сеанса.

  • MESSAGE – Эта полезная нагрузка используется для отправки текстовых сообщений между SIP-клиентами.

  • INFO – Эта полезная нагрузка используется для передачи информации, не связанной с сеансом, во время сеанса.

  • PRACK – Эта полезная нагрузка используется для подтверждения надежного приема предварительного ответа.

  • SUBSCRIBE – Эта полезная нагрузка используется для запроса уведомлений о событиях с SIP-сервера.

  • NOTIFY – Эта полезная нагрузка используется для доставки уведомлений о событиях подписчику.

  • REFER – Эта полезная нагрузка используется для передачи сеанса третьей стороне.

  • PUBLISH – Эта полезная нагрузка используется для публикации состояния пользователя на SIP-сервере.

Смягчение последствий

  1. Используйте надежные пароли и механизмы аутентификации для предотвращения несанкционированного доступа к устройствам и службам SIP.

  2. Используйте брандмауэры для блокирования несанкционированного доступа к SIP-серверам и конечным точкам.

  3. Выполняйте регулярные обновления программного обеспечения и исправления, чтобы убедиться, что устройства и службы SIP соответствуют последним исправлениям и обновлениям безопасности.

  4. Используйте шифрование для защиты SIP-коммуникаций и предотвращения подслушивания.

  5. Внедрите системы обнаружения и предотвращения вторжений для мониторинга сетевого трафика, а также обнаружения SIP-атак и реагирования на них.

  6. Используйте сегментацию сети, чтобы отделить трафик SIP и VoIP от другого сетевого трафика.

  7. Ограничьте количество открытых портов и служб, чтобы свести к минимуму поверхность атаки SIP-устройств и служб.

  8. Отключите ненужные функции и службы SIP, которые не требуются для работы организации.

Заключение

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

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

Другие Услуги

Готовы к безопасности?

Связаться с нами