Pull to refresh

Очерк безопасности SIP

Reading time 4 min
Views 29K
Интернет — прекрасная среда для общения. Общения при помощи писем, чата, голоса или видео. Если видеосвязь это достаточно ново, то телефоном люди пользуются уже сто лет. С прокладкой новых интернет-магистралей и развитием программ вроде интернета с воздушных шаров доступ в сеть будет в скором времени даже у пингвинов в Антарктиде. А раз есть такое покрытие, зачем использовать телефонные линии? Почему бы не пускать голос по интернет-каналам?

Одним из решений этой задачи является протокол SIP (Session Initiation Protocol). Это протокол с интересной историей, но сейчас мы коснемся только некоторых его особенностей. SIP — это протокол установления сеанса для последующей передачи данных; передает информацию в открытом виде. Среди данных могут присутствовать учетные данные абонента — логин, домен, пароль (в открытом или хешированном виде), а также многие другие интересные поля. Отметим, что в некоторых случаях аутентификация может отсутствовать вовсе (соединение настраивается на обоих сторонах как пара IP:port). Рассмотрим несколько угроз, возникающих при использовании протокола SIP, и способы эти угрозы реализовать.

image

Угрозы


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

Кража учетных данных


Поскольку протокол передает данные в открытом виде, любой, кто имеет возможность «слушать» идущий от нас трафик, может узнать много всего интересного. К примеру, возьмем процесс аутентификации. Пароль в SIP хэшируется с использованием MD5, который, во-первых, уже давно настоятельно не рекомендуется к использованию вообще нигде, а во-вторых, может быть подобран (например, с помощью SIPcrack). Выглядит это примерно вот так:

image

Полученные учетные данные могут использоваться в различных интересных схемах. Если жертва является клиентом услуг Triple Play, злоумышленник может получить доступ ко всем сервисам, на которые подписан абонент. Что намного опаснее — полученный SIP-аккаунт может использоваться в мошеннических схемах с PRS-номерами, а также для прогона большого количества звонков по дорогим направлениям (суммы, которые абоненту придется заплатить за чужие разговоры, могут быть весьма и весьма значительными).

Поподробнее о подборе SIP-пароля: www.sipsorcery.com/mainsite/Help/SIPPasswordSecurity

Прослушка


Сам по себе SIP звук не передает. Для передачи полезной нагрузки (например, аудиопотока) используется протокол RTP (Real-time Transport Protocol). Протокол дружелюбен и не шифрует передаваемые данные. Тут немедленно возникает вопрос: не может ли человек, который сидит посередине и «по-дружески» прослушивает наш трафик, — прослушать и наш разговор? Вполне. Например, используя популярный в народе Cain, который не только любезно поможет осуществить MITM, но и сразу даст послушать перехваченный разговор. Полученную таким образом информацию очевидно можно использовать с целью шантажа или шпионажа.

image

Отслеживание звонков


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

Атака за NAT’ом


В случае если у клиента-жертвы нет белого IP-адреса, злоумышленник, имеющий общий с ним публичный адрес, получает возможность осуществлять звонки за счет жертвы. Такая ситуация может возникнуть, если интернет-провайдер предоставляет доступ к сети через NAT, за которым помимо легитимного абонента может находиться еще куча непонятного народа.

Подобное часто встречается в бизнес-центрах: множество небольших фирм проходят через NAT местного провайдера.

image

image

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

Выдача себя за провайдера (с помощью DNS)


Путем атаки на DNS-сервер клиента с помощью MITM-атаки или отравления кэша DNS (например, с помощью Kaminsky attack) злоумышленник может выдать себя за провайдера, проводя все звонки через свою систему.

image

Перенаправление звонков


Осуществив атаку типа MITM, злоумышленник имеет возможность перенаправлять звонки клиента на произвольный номер, в том числе на несуществующий (приводя к DoS).

image

Перехватывая INVITE-пакеты, злоумышленник отвечает на запрос пакетом с кодом 301 Moved Permanently, перенаправляя звонок.

image

Разрыв соединений


Злоумышленник, зная или подбирая поля CallID, FromTag, ToTag, имеет возможность разрывать активные сессии, отправляя заранее сформированные зловредные пакеты, содержащие SIP BYE-request (запрос на завершение соединения), например с помощью scapy.

image

image


Ложные вызовы


Так как SIP чаще всего использует протокол UDP, возможны различные спуфинг-атаки. Например, можно сгенерировать кучу запросов с вызовом абонента-жертвы. Это приводит к отказу в обслуживании АТС жертвы, парализуя всю систему телефонии.

image

Заключение


К сожалению, несмотря на то, что давно существуют методы защиты от большинства перечисленных угроз, все участники рынка — как операторы (что самое печальное!), так и их клиенты, — активно игнорируют меры безопасности. Поэтому watch your back — провайдер за тебя не подумает!

Автор: Илья Сафронов.
Tags:
Hubs:
+28
Comments 28
Comments Comments 28

Articles

Information

Website
www.ptsecurity.com
Registered
Founded
2002
Employees
1,001–5,000 employees
Location
Россия