Sip pod obstrzałem

Protokoły SIP, SDP i RTP nie zapewniają dostatecznego uwierzytelnienia stron połączenia, ochrony integralności i poufności sesji telefonicznej. Za pomocą snifferów w sieciach LAN i bezprzewodowych możliwe jest przejęcie m.in. identyfikacji i uwierzytelnienia użytkownika, identyfikatorów SIP URI (Uniform Resource Identifier), czyli numerów telefonicznych.

Protokoły SIP, SDP i RTP nie zapewniają dostatecznego uwierzytelnienia stron połączenia, ochrony integralności i poufności sesji telefonicznej. Za pomocą snifferów w sieciach LAN i bezprzewodowych możliwe jest przejęcie m.in. identyfikacji i uwierzytelnienia użytkownika, identyfikatorów SIP URI (Uniform Resource Identifier), czyli numerów telefonicznych.

Wraz z upowszechnianiem się systemów telefonii IP, rośnie liczba osób zajmujących się wynajdywaniem metod nieautoryzowanego dostępu do tego rodzaju sieci. Są to szpiedzy działający na zlecenie (ci są najgroźniejsi), zwykli złośliwcy, osoby chcące dzwonić na cudzy koszt, łamiący zabezpieczenia w celach edukacyjnych czy powodowani ciekawością.

Wykorzystując ataki na protokoły sieciowe, burze rozgłoszeniowe, czy zakłócenia sieci bezprzewodowych mogą skutecznie sparaliżować system telefoniczny.

Jak działa SIP?

Sip pod obstrzałem

Mechanizm nawiązywania połączenia SIP

Ze względu na ograniczone możliwości standardu SIP, szczególnie w ramach tzw. usług dodanych, twórcy systemów komunikacyjnych implementują dodatkowo własne rozwiązania, traktując SIP jedynie jako mechanizm zestawiania sesji multimedialnych. Warto zwrócić uwagę, że SIP to nie tylko przekaz głosu, ale także teksu i wideo.

Nawiązywanie połączeń realizowane jest w następujący sposób:

Agent użytkownika UA (User Agent) melduje się do serwera rejestracji (registrar), który jest odpowiedzialny za przechowywanie bazy danych użytkowników obsługiwanej domeny. Aby zainicjować połączenie, agent UA wysyła do najbliższego serwera proxy SIP komunikat "INVITE" z adresem odbiorcy połączenia. SIP przeprowadzają routing komunikatów SIP, aby ustalić adres serwera SIP obsługującego adresata połączenia. Serwer SIP może poszukiwać adresata z wykorzystaniem serwerów DNS i bazy ENUM (powiązania numerów telefonicznych z adresami sieciowymi). Proxy SIP po otrzymaniu wiadomości "INVITE" podejmuje próbę zlokalizowania uczestników połączenia, a informację o postępach wysyła do inicjującego agenta SIP, np. "TRYING", "RINGING". Docelowy proxy SIP po otrzymaniu zgłoszenia pobiera z serwera lokalizacji dane użytkownika, a następnie kieruje do niego żądanie zestawienia sesji. Po pomyślnej wymianie komunikatów zestawiana jest sesja RTP bezpośrednio pomiędzy dzwoniącym i adresatem.

SIP w pigułce

Protokół kontroli połączeń. IETF opisało go w RFC 3261. Został zaprojektowany jako protokół oparty na IP, niezależny od medium. Wykorzystuje inne protokoły, m.in.:

  • Session Description Protocol (SDP) - RFC 2327, definiuje parametry sesji medialnej,
  • SIP for Instant Messaging and Presence Leveraging Extensions (SIMPLE), który jest rozszerzeniem protokołu o obsługę komunikatorów IM oraz funkcjedostępności.
  • Real-time Transport Protocol (RTP), wykorzystywany do transportu mediów,
  • RTP Control Protocol (RTCP), przesyła informacje sterujące strumieniem RTP,
  • kodeki, kompresujące głos i/lub video.

Służy nie tylko do wymiany głosu, ale również wideo i komunikatów tekstowych.

Informacje sterujące wymieniane pomiędzy elementami sieci SIP mają formę komunikatów tekstowych (podobnie jak HTTP), dzięki temu łatwo je interpretować i tworzyć własne oprogramowanie.Pisząc aplikację wykorzystującą SIP nie trzeba się martwić, jaki klient będzie odbierał połączenie ważne żeby obsługiwał SIP.

Protokół zapewnia kompleksowe zestawianie połączeń pomiędzy użytkownikami końcowymi - od końca do końca. Korzysta ze standardowego adresowania IP, DNS, (mechanizm ENUM). Jest niezależny od protokołów transportowych i pozwala na zestawianie połączeń pomiędzy użytkownikami wykorzystującymi różne rodzaje dostępu do Internetu.

OD REDAKCJI: w wydaniu specjalnym "Przegląd Produktów Sieciowych 2006/1" w artykule K. Ryłki "Telefonia IP - hegemonia SIP" na str. 43 bez wiedzy autora została zamieszczona ramka "Podstawowe informacje o SIP", zawierająca pewne błędne informacje. Poprawne treści prezentuje powyższa ramka. Autora i czytelników przepraszamy.

Słabości protokołu

Komunikaty SIP w standardowej wersji protokołu przesyłane są tekstem jawnym, co umożliwia łatwe podejrzenie ich treści. Ze względu na podstawową funkcjonalność protokołu tworzone są do niego różne rozszerzenia, które mogą stanowić tylną furtkę w bezpieczeństwie. Protokół ten jest częstokroć słabo zabezpieczany przez administratorów ze względu na słabą znajomość jego funkcjonowania.

Mechanizmy bezpieczeństwa opisane w specyfikacji RFC 3261 mają tylko status "zalecane" i często są pomijane w implementacjach.

Wiele rozwiązań VoIP do transmisji komunikatów SIP wykorzystuje protokół UDP, którego pakiety nie zawierają numeru sekwencji, a on sam nie zapewnia retransmisji, przez co jest łatwiejszy do podrobienia. TCP to protokół połączeniowy, oferujący numery sekwencyjne, retransmisje zagubionych pakietów oraz negocjujący zestawienie i zakończenie połączenia.

Zarówno agent UA, jak i proxy SIP do komunikacji z innymi proxy zazwyczaj wykorzystują transmisję UDP i nie wymagają silnego uwierzytelniania.

Metody ataku na SIP

Fałszywa rejestracja

Sip pod obstrzałem

Po fałszywej rejestracji rozmowy przychodzące do użytkownika będą kierowane na adres intruza

Dochodzi do niej, gdy intruz zgłasza się do serwera rejestracji (SIP registrar), przedstawiając się jako uprawniony użytkownik UA i podaje w nim swój własny adres. Od tego momentu wszystkie połączenia przychodzące do prawomocnego użytkownika będą kierowane na adres intruza.

Komunikaty wymieniane w procesie rejestracji są zwykle przesyłane za pośrednictwem UDP, co ułatwia sfałszowanie wiadomości. Wiele serwerów rejestracji SIP nie weryfikuje wcale nadchodzących żądań lub sprawdza jedynie login i hasło. Login można podejrzeć, gdyż jest przesyłany otwartym tekstem, a hasło może być zdobyte przez skuteczny atak słownikowy lub intuicyjny.

Baza zarejestrowanych użytkowników może zostać zbudowana poprzez nasłuchiwanie komunikatów SIP, skanowanie adresów, bądź też dzięki zbudowaniu listy rozszerzeń i przy wysyłaniu komunikatów "OPTIONS".

Przy wyborze haseł dla kont telefonii zwykle nie przywiązuje się zbytniej uwagi do ich bezpieczeństwa. Często są one tworzone mechanicznie dla wszystkich użytkowników.

Wiele produktów nie loguje błędnych prób rejestracji, przez co utrudnia wykrycie fałszywych rejestracji i przypadków skanowania listy użytkowników.

Podszywanie się pod użytkownika skutkuje wstrzymaniem komunikacji do niego. Co gorsza, odciętym urządzeniem może się okazać brama medialna, serwer poczty głosowej lub IVR (Interactive Voice Response). W tym przypadku rozmowy przychodzące, np. do skrzynek pocztowych, będą kierowane do intruza.

Możliwa jest też sytuacja, gdy urządzenie intruza przezroczyście pośredniczy w komunikacji pomiędzy dzwoniącym a odbiorcą połączenia. Szpieg może nagrywać konwersację wraz z sygnalizacją i je modyfikować.


TOP 200