Bezpieczeństwo VoIP
Transkrypt
Bezpieczeństwo VoIP
Bezpieczeństwo VoIP SIP & Asterisk Autor: Leszek Tomaszewski Email: [email protected] Zakres tematyczny 1/2 Bezpieczeństwo VoIP Protokół sygnalizacyjny (SIP) Strumienie medialne (SRTP) Asterisk Co to jest? Bezpieczeństwo Architektura systemu Aspekty konfiguracyjne SIP – Session Initiation Protocol Czym jest SIP Protokół warstwy aplikacji przeznaczony do obsługi sesji multimedialnych Główne obszary związane z obsługą sesji • lokalizacja użytkowników • dostępność użytkowników • właściwości użytkowników • nawiązanie sesji (z uwierzytelnieniem i negocjacją parametrów) • zarządzanie sesją (modyfikacja charakterystyki medium, zarządzanie stronami sesji), kończenie sesji SIP Trapezoid SIP – wymagania bezpieczeństwa (RFC 3261) Uwierzytelnienie Tryb End to End • SIP DIGEST • S/MIME Tryb Hop by Hop • TLS • IPSec • SIPS URI SIP – wymagania bezpieczeństwa(RFC 3261) Poufność Tryb End to End • S/MIME Tryb Hop by Hop • TLS • IPSec SIP DIGEST SIP DIGEST jest mechanizmem uwierzytelnienia typu End to End zaczerpniętym z protokołu HTTP Bazuje na wykorzystaniu współdzielonego sekretu razem z uwierzytelnieniem metodą wyzwanie/odpowiedź oraz zastosowaniem funkcji skrótu. Jest obowiązkowym mechanizmem uwierzytelniającym w SIP 2.0 (RFC3261) Wykorzystuje funkcję skrótu MD5 Wykorzystuje parametr „nonce” będący skrótem adresu USC i znacznika czasowego SIP DIGEST INVITE sip:[email protected] SIP/2.0 Via: SIP/2.0/UDP denver.com:5060;branch=z9hG4bKdE3CitRXdiFOU2JP From: "alice" <sip:[email protected]>;tag=rSF3YeZzCHS0xeZk To: "alice" <sip:[email protected]> Call-ID: [email protected] Contact: <sip:[email protected]:5060> CSeq: 1 INVITE SIP/2.0 407 Proxy Authentication Required Via: SIP/2.0/UDP denver.com:5060;branch=z9hG4bKdE3CitRXdiFOU2JP; received=denver.com;rport=39184 From: "alice" <sip:[email protected]>;tag=rSF3YeZzCHS0xeZk To: "alice" <sip:[email protected]>;tag=as5c6f84b1 Call-ID: [email protected] CSeq: 1 INVITE User-Agent: Asterisk PBX Contact: <sip:[email protected]> Proxy-Authenticate: Digest realm="asterisk.com", nonce="56cdcac2" SIP DIGEST INVITE sip:[email protected] SIP/2.0 Via: SIP/2.0/UDP denver.com:5060;branch=z9hG4bKiI7tMrLiekG4GsCH From: "alice" <sip:[email protected]>;tag=rSF3YeZzCHS0xeZk To: "alice" <sip:[email protected]> Call-ID: [email protected] Contact: <sip:[email protected]:5060> Proxy-Authorization: Digest username="alice", realm="asterisk.com", nonce="56cdcac2", uri="sip:[email protected]", response="9f5ff2ca22eb585fb7d388df7d0f299f", algorithm=MD5 CSeq: 2 INVITE SIP DIGEST – zalety Obowiązkowość w SIP 2.0 Stanowi utrudnienie podszycia (spoofing-u) Zabezpiecza przed nieuprawnionym dostępem do usługi SIP DIGEST – wady Pozostawia odkryte niektóre nagłówki, które muszą być wykorzystywane przez pośrednie urządzenia. Nie daje gwarancji integralności – można jedynie dodać kilka nagłówków, które następnie zostaną użyte do obliczenia skrótu Podatność na ataki typu DoS Bezpieczeństwo strumieni medialnych SRTP Bezpieczeństwo strumieni medialnych SRTCP Bezpieczeństwo strumieni medialnych Zalety Autoryzacja Integralność Poufność (silne algorytmy szyfrujące np.AES) Wady Wydajność systemu Zwiększenie pasma Problem dystrybucji kluczy szyfrujących Wysoki koszt sprzętu Astersk Czym jest Asterisk ? Asterisk jest otwartym software-owym PBX integrującym usługi VoIP i PSTN (projekt zainicjowany i wspierany przez firmę Digium) Obsługuje protokoły SIP, H323, IAX2 Daje możliwość (z wykorzystaniem odpowiedniego sprzętu) podłączenia do tradycyjnej telefonii Oferuje szeroką gamę usług oraz otwartość i elastyczność w ich tworzeniu • Tworzenie Dial planów • Zapowiedzi słowne (IVR) • Telekonferencje • Voice mail • I wiele innych ... Asterisk -> SIP Pełni rolę serwera Proxy. Pełni rolę serwera Registrar. Może pełnić rolę UAS oraz UAC Podtrzymuje połączenia z urządzeniami w sieciach lokalnych stojącymi za NAT (pakiety Options) Może pośredniczyć w przesyłaniu strumieni medialnych pomiędzy urządzeniami końcowymi. Asterisk - popularność Niski koszt implementacji (open source), duże możliwości usługowe. Najpoważniejsza (jedyna?) konkurencja dla Skype-a Dostępność tanich urządzeń końcowych Hard phone -> 300-400 zł Soft phone -> free Wykorzystywana przez wiele firm świadczących usługi VoIP Asterisk -usługodawcy Portal Tlen.pl -> Tlenofon Dialog -> NewFon Internet Group S.A. -> HaloNet BaltMedia -> eFon Sieć T2 -> eFon Asterisk - bezpieczeństwo Główne aspekty Bezpieczeństwo przesyłanych informacji Bezpieczeństwo platformy (odporność na ataki) Asterisk – bezpieczeństro protokołów SIP, RTP, RTCP Autoryzacja SIP DIGEST (obowiązkowa w SIP 2.0) Brak jakichkolwiek innych mechanizmów zapewniających bezpieczeństwa przesyłanych danych, zarówno protokołów sygnalizacyjnych jak i strumieni medialnych Asterisk – brak zabezpieczeń Przyczyny Nie ma narzuconych standardów Niska świadomość społeczna wagi zabezpieczania informacji (brak zabezpieczeń kryptograficznych w tradycyjnych sieciach PSTN) Wartość przesyłanych informacji Wysokie koszty produkcji bezpiecznego sprzętu (cel VoIP – niskie koszty połączeń) Wydajność serwerów obsługujących protokoły kryptograficzne (Skalowalność VoIP) Problem Certyfikatów kluczy publicznych przy wykorzystywaniu technik szyfrowania (wzrost kosztów VoIP) Asterisk – bezpieczeństwo platformy Oparte na bezpieczeństwie systemu Linux Wszystkie pliki konfiguracyjne przechowywane są w formie plain text-u w znanym katalogu Mechanizmy zdalnej konfiguracji (Asterisk Manager) Konieczność ustawienia platformy na publicznym IP Znane porty świadczenia usług (niebezpieczeństwo ataków DoS) Bezpieczeństwo vs idea SIP (niebezpieczeństwo spoofing-u) Asterisk – zabezpieczenie platformy Instalację stystemu ograniczyć do niezbędnych składników (kernel+ asterisk + ... ) Hasła przechowywać zaszyfrowane funkcją MD5 (możliwe ale uciążliwe) Zdalną konfigurację z wykorzystaniem Asterisk Managera wykonywać wyłącznie w bezpiecznych połączeniach (SSL/TLS) Zastosować firewall Zmienić domyślne porty (problem współpracy z innymi serwerami) Asterisk - perspektywy Pomimo wielu pomysłów wzbogacenia Asteriska o mechanizmy bezpieczeństwa, system nie doczekał się ich implementacji. Brak jakichkolwiek informacji odnośnie ich wdrożenia w przyszłości Asterisk jest systemem open source co umożliwia dalszy jego rozwój i daje możliwości wykazania się pasjonatom bezpieczeństwa Podsumawanie Istnieją zdefiniowane mechanizmy zabezpieczenia danych w technologii VoIP SIP -> DIGEST, S/MIME, TLS, IPSec, SIPS Media -> SRTP/SRTCP Brak implementacji ww. technik w popularnym systemie VoIP – Asterisk Zbyt mała presja społeczna (niska świadomość) Zbyt duże koszty wdrożenia Zwycięstwo niskich kosztów nad bezpieczeństwem Literatura www.site.uottawa.ca/~bob/gradstudents/ DigestAuthenticationReport.pdf www.tele.pw.edu.pl/~krzysiek/pdf/afcea2 003.pdf security.zhwin.ch/DFN_SIP.pdf www.asteriskguru.com/downloads/ asterisk_stability_and_security.ppt www.voip-info.org