VoIP pod lupą

W rzeczywistości wysyłanie uszkodzonych wiadomości jest jednym z testów, za których pomocą sprawdza się podatność rozwiązań, szukając przy tym przepełnień bufora, nieobsługiwanych wyjątków oraz niespodziewanego zachowania. Grupa Oulu University Secure Programming Group (OUSPG) w projekcie PROTOS opracowała dwa narzędzia testowe przeznaczone do protokołów SIP i H.323. Ponadto powstało wiele innych narzędzi służących do tego celu, wliczając ohrwurm (przeznaczony do RTP), Asteroid (tester dla centrali Asterisk) oraz VoIPer (tester dla protokołów SIP i H.323 napisany w języku python). Dość popularne narzędzie SipBomber wysyła źle sformułowane wiadomości OPTION oraz losowo generowane pakiety wprost do badanego urządzenia SIP.

Badanie podatności urządzeń za pomocą narzędzi wysyłających masowy lub błędny ruch służy do identyfikacji zasobów, które wymagają ochrony przed atakami odmowy obsługi - na przykład przez instalację dobrej zapory sieciowej lub load balancera. W przypadku firm testy podatności na powódź pakietów służą do określenia rzeczywistego zagrożenia i możliwości utrzymania ciągłości działania telefonii internetowej.

Atak to nie tylko powódź

Narzędzia do generowania powodzi pakietów potrafią wysyłać wiele danych, by odkryć nieznane lub niezałatane podatności, ale wiele analiz wykonuje się za pomocą specjalizowanych narzędzi, które generują zaledwie kilka pakietów, specjalnie przygotowanych pod kątem wybranego ataku.

Przykładem narzędzia, które służy do tego celu jest vnak - narzędzie napisane w języku Python, które implementuje odrzucanie połączeń i rozłączanie IAX, H.323 oraz SIP. W ten sposób można odrzucić rejestrację SIP, odrzucanie połączeń. Narzędzie SIP-Kill nasłuchuje w poszukiwaniu żądań SIP INVITE i następnie niezwłocznie odrzuca te połączenia na ostatnim proxy. BYE Teardown z kolei odrzuca połączenie za pomocą sfałszowanych pakietów BYE. Wszystkie omawiane narzędzia umożliwiają ataki w sieciach, które nie wykorzystują zabezpieczeń, polegających na szyfrowaniu ruchu związanego z sygnalizacją.

Podobnie działa program RTPinject, którego zadaniem jest wykrycie aktywnych połączeń, rozpoznawanie użytego kodeka i wstrzyknięcie dowolnie wybranego dźwięku pochodzącego z pliku. W ten sposób działa także RTP InsertSound, który potrafi wstrzyknąć dźwięk z pliku .wav do strumienia G.711. Podobnie jak przy fałszowaniu pakietów sygnalizacyjnych, narzędzia te wykorzystują fakt nieszyfrowania strumienia audio.

Ingerencja w połączenie

Narzędzia takie jak ettercap i sip_rogue nie tylko zapisują pakiety, ale także potrafią aktywnie przekierować lub modyfikować ruch. W sieciach LAN przenoszących dane najczęstszym sposobem na przekierowanie ruchu jest zatruwanie ARP. W ten sposób działa większość aktywnych snifferów w sieciach wykorzystujących przełączniki.

W sieciach VoIP także można zastosować zatruwanie ARP, ale także można przekierować ruch na wyższych warstwach. Narzędzie sip_rogue może pracować jako agent SIP, wykorzystując reghijacker do przechwycenia połączenia od właściwego proxy SIP. Innym sposobem jest praca jako fałszywy proxy SIP, gdzie można wstrzyknąć dane audio do przechwyconego strumienia, przesyłanego między urządzeniem wywołującym a docelowym. Chociaż oba opisane przykłady wiążą się z przechwytywaniem pakietów, działania te wychodzą znacznie dalej poza analizę ruchu.


TOP 200