Thomas Skora

Personal Website

  • Schrift vergrößern
  • Standard-Schriftgröße
  • Schriftgröße verkleinern

Angriffe auf VoIP

E-Mail Drucken PDF
Benutzerbewertung: / 2
SchwachPerfekt 

Diese Seite beschäftigt sich mit einer Auswahl von Angriffen, die in meiner Diplomarbeit behandelt wurden. Zu den Angriffen wird auch jeweils eine Implementierung in Perl zum Download angeboten. Getestet wurden die Programme auf einem Linux-System mit einem Kernel der 2.6er-Reihe. Da teilweise auf sehr betriebssystemspezifische Funktionen zurückgegriffen wird, ist davon auszugehen, dass sie nicht unter Windows lauffähig sind.

Ich möchte an dieser Stelle darauf hinweisen, dass die hier angebotenen Programme nur für Demonstrationszwecke gedacht sind. Also liebe Skriptkiddies: kein Terror machen und lieber woanders spielen gehen ;-)

Suchen von VoIP-Geräten

Mit sip-scan können IP-Bereiche schnell nach VoIP-Geräten gescannt werden. Dazu wird der OPTIONS-Request des SIP-Protokolls verwendet. Zum aufzählen von IPs wird die Klasse IP_iterator verwendet.

sip-scan

IP_iterator.pm

Abbrechen eines Gesprächs

Das Programm sip-kill ermöglicht es, einen Anruf durch Injektion von gültigen SIP-Paketen in einen bestehenden oder im Aufbau befindlichen Dialog zu beenden. Folgende Methoden können dazu verwendet werden:

  • CANCEL: Abbruch nach einer provisorischen Antwort, die nicht zwingend zu einem SIP-Dialog gehört.
  • Response: eine negative Antwort wird gesendet. Kann evtl. durch Race-Conditions fehlschlagen.
  • BYE: ein bereits aufgebautes Gespräch wird beendet. Sicherste Methode, jedoch leicht erkennbar.

sip-kill

Umleiten der Sprachdaten

Dieser Angriff besteht aus zwei Teilen: dem Programm sip-redirectrtp, welches den SDP-Body des SIP-Pakets so manipuliert, dass die RTP-Daten an einen beliebigen Host gesendet werden und rtpproxy, der die ankommenden Pakete auf diesem Host zu ihren richtigen Empfängern weiterleitet. Zwischen beiden Teilen findet auch eine rudimentäre Signalisierung statt.

Da hierbei Pakete manipuliert werden müssen, wird bei sip-redirectrtp das Userspace Queuing von Iptables verwendet. Das kleine Skript ipq_rules führt die dafür benötigten Befehle aus.

sip-redirectrtp
rtpproxy
ipq_rules

Teilweises beenden von Gesprächen

Jeder Host auf der Signalisierungskette verwaltet seine eigenen Zustandsdaten. Mit sip-proxykill kann ein Gespräch auf Teilen der Signalisierungkette beendet werden. Dazu wird ein BYE-Paket der Gegenseite simuliert und gesendet, welches den Signalisierungspfad durchläuft. Erreicht das Paket wieder den Absender, dann wird es verworfen. Dadurch scheint das Gespräch für die Proxys beendet zu sein, während der Gesprächspartner bis auf eine unerwartete Antowrt nichts mitbekommt und es fortführt.

sip-proxykill

Kommentare (0)
Kommentar schreiben
Ihre Kontaktdetails:
Kommentare:
[b] [i] [u] [url] [quote] [code] [img]   
:D:angry::angry-red::evil::idea::love::x:no-comments::ooo::pirate::?::(
:sleep::););)):0
Security
Bitte geben Sie den Anti-Spam-Code aus diesem Bild ein.
Zuletzt aktualisiert am Sonntag, den 19. Juli 2009 um 15:00 Uhr