Bundesamt für Sicherheit in der Informationstechnik

M 5.133 Auswahl eines VoIP-Signalisierungsprotokolls

Verantwortlich für Initiierung: IT-Sicherheitsbeauftragter, Leiter IT

Verantwortlich für Umsetzung: Administrator, Leiter IT

Beim Einsatz von VoIP werden die Steuerinformationen und die eigentlichen Sprachdaten in der Regel getrennt voneinander, mittels unterschiedlicher Übertragungsprotokolle transportiert. Steuerinformationen, wie beispielsweise der Zustand "besetzt", werden über Signalisierungsprotokolle, zum Beispiel H.323 oder SIP (Session Initiation Protocol), übermittelt. Für die Übertragung der Sprachdaten ist hingegen ein Medientransportprotokoll, in der Regel RTP (Real-Time Transport Protocol), zuständig. Nur bei sehr wenigen Protokollen, wie IAX (InterAsterisk eXchange), erfolgt keine Trennung von Steuer- und Medieninformationen.

Es gibt verschiedene Signalisierungsprotokolle. Da diese Protokolle untereinander nicht kompatibel sind, spielt die Auswahl für den Aufbau eines VoIP-Netzes eine wichtige Rolle. VoIP-Komponenten, die kein gemeinsames Protokoll unterstützen, können ohne ein Gateway nicht miteinander kommunizieren. Der Einsatz eines Gateways, das die Anweisungen von einem Protokoll in ein anderes übersetzt, ist sehr aufwendig und umständlich. Daher ist darauf zu achten, dass möglichst nur ein Signalisierungsprotokoll eingesetzt wird.

Die Auswahl der eingesetzten VoIP-Komponenten beeinflusst stark die Auswahl des Signalisierungsprotokolls, da viele VoIP-Komponenten nur ein bestimmtes Signalisierungsprotokoll unterstützen. Bezüglich der Sicherheit spielen die Unterschiede zwischen den Protokollen nur eine geringe Rolle. Es sollte dokumentiert werden, welches Signalisierungsprotokoll ausgewählt wurde.

Im Folgenden werden die verbreiteten Signalisierungsprotokolle H.323 und SIP betrachtet. Neben diesen Protokollen werden auch jeweils alle Arten von VoIP-Komponenten, die für einen Gesprächsaufbau mindestens benötigt werden, vorgestellt.

H.323

Die Protokollgruppe um H.323 beschreibt die Übertragung von Echtzeitinformationen (Video, Audio, Daten) in paketorientierten Transportnetzen. H.323 wurde ursprünglich als Umsetzung des ISDN D-Kanal Protokolls Q.931 auf ein IP-basiertes Netz entwickelt. Innerhalb von dieser Protokollgruppe sind die Protokolle H.225.0, H.245 und H.450 und H.235 definiert. H.323 beschreibt den Rahmen der Signalisierungsprotokolle, H.225.0 die eigentliche Signalisierung, H.245 die Kontrolle der Übertragung der Sprachinformationen und H.450 die eigentliche Telefonie-Funktion. Die optionale Unterstützung von H.235 bietet Schutz der Integrität und Vertraulichkeit der Signalisierung. Vertiefende Informationen sind bei der International Telecommunications Union (ITU) zu finden, von der die Protokolle festgelegt wurden. Audio- und Videodaten werden per UDP, Faxdaten per UDP oder TCP übertragen. Vor der Übertragung dieser Echtzeitdaten werden so genannte logische RTP- und RTCP-Kanäle zwischen den Endpunkten (Terminals) aufgebaut.

An einer H.323-Kommunikation können folgende Komponenten beteiligt sein:

  • Terminals stellen die Endpunkte einer H.323-Kommunikation beim Benutzer dar. Diese Endgeräte verfügen in der Regel über einen Lautsprecher und ein Mikrofon und bieten dem Benutzer die Möglichkeit, mit einem anderen Gesprächsteilnehmer eine Verbindung aufzubauen. Eine direkte Verbindung zwischen den Endgeräten ist nur bei bekannter IP-Adresse möglich.
  • Gatekeeper werden zur Verwaltung eingesetzt. Da die direkte Verbindungsaufnahme zwischen Terminals nur bei bekannten IP-Adressen möglich ist, agiert ein Gatekeeper als zentrale Steuerkomponente in H.323-Netzen.
  • Die Multipoint Control Unit (MCU) ermöglicht Konferenzen, also Gespräche zwischen mehr als zwei Anwendern. In der optionalen MCU laufen sämtliche Medienströme von den Teilnehmern zusammen.
  • Gateways realisieren die Übergänge in andere Netze und nehmen dabei die Anpassung der Nutzdaten und der Signalisierungsinformation vor. Beispielsweise vermitteln Gateways zwischen IP- und leitungsvermittelnden Telefonnetzen.

Der größte Nachteil von H.323 ist die Komplexität des Protokolls. Die Vielzahl der verschiedenen Protokolle lässt H.323 sehr unübersichtlich und aufwendig wirken. Diese Komplexität erschwert die Fehlersuche und kann zu Mehrkosten führen. Erschwerend kommt hinzu, dass das im Folgenden vorstellte SIP von vielen Herstellern bei neueren Produkten priorisiert wird.

Session Initiation Protocol (SIP)

SIP ist ein textbasierendes Client-Server-Sitzungssignalisierungsprotokoll der IETF (Internet Engineering Task Force), das zur Steuerung des Verbindungsauf- und -abbaus von Multimediadiensten verwendet und in RFC 3261 beschrieben wird. Weitere Funktionalitäten, wie Videokonferenzen, Instant Messaging, verteilte Computerspiele und anderen Applikationen benötigen eine Erweiterung der SIP-Spezifikation. Diese sind in separaten RFCs zu finden. Der Multimedia-Nachrichtenstrom, wie die Sprachinformationen bei einem Telefonat, wird mit RTP gebildet. Die Signalisierung wird in der Praxis oft mit SSL bzw. TLS (Transport Layer Security) oder IPSec geschützt.

Das Adressierungsschema von SIP ähnelt stark dem einer E-Mail-Adresse (sip:benutzername@provider-name.org). Die Lokalisierung erfolg über DNS (Domain Name System). SIP unterstützt Punkt-zu-Punkt- und Punkt-zu-Mehrpunkt-IP-Verbindungen. Durch das einfache Klartextdesign der SIP-Pakete und der geringen Komplexität erfährt SIP eine immer größere Verbreitung.

Folgende VoIP-Komponenten können bei einer Kommunikation über SIP beteiligt sein:

  • Die Endgeräte (Telefon, Softphone, Gateway) werden als User Agents (UA) bezeichnet. Ein User Agent kann die Rolle eines Clients bzw. eines Servers einnehmen. Der Initiator eines Gesprächs arbeitet als User Agent Server (UAS), der Gerufene als User Agent Client (UAC). Ein SIP-Endsystem beinhaltet immer beide Funktionen.
  • Der Location Server liefert bei einer entsprechende Nachfrage die IP-Adresse des gewünschten Gesprächspartners. Dieser kann über den Benutzernamen identifiziert werden.
  • Ein Registrar ermöglicht den Benutzern die Anmeldung und Registrierung. Hierfür meldet sich das Endgerät mit einer Kennung (Benutzername, Kennwort) und seiner SIP-Adresse an den Registrar an. Der Registrar gibt die Adresse (IP-Adresse) des Endgeräts dem Location Server bekannt, unter der er öffentlich erreichbar ist. Aufgrund dieser Registrierung kann das Endgerät lokalisiert werden.
  • Ein SIP-Proxy nimmt die Rolle eines Vermittlers ein, der die Signalisierungsnachrichten bearbeitet oder weiterleitet. Ein User Agent sendet eine Anfrage an den SIP-Proxy. Der SIP-Proxy interpretiert die Anfrage und adressiert sie, nach entsprechender Bearbeitung, an den User Agent. Wenn nötig, wird eine Nachricht durch den SIP-Proxy verändert.

Obwohl SIP standardisiert wurde, wird es oft von den Herstellern von VoIP-Komponenten unterschiedlich interpretiert. Diese fehlende Interoperabilität führt dazu, dass nicht alle VoIP-Funktionen bei VoIP-Netzen, an denen Komponenten von verschiedenen Herstellern beteiligt sind, vollständig zur Verfügung stehen. Hiervon ist meist die Authentisierung zwischen den Systemen, die Verschlüsselung und die Bereitstellung von Mehrwertdiensten betroffen. Bei der Beschaffung von VoIP-Komponenten sollte daher deren Interoperabilität mit vorhandenen Komponenten überprüft werden.

Beim Einsatz von SIP in Firewall- bzw. NAT-Umgebungen sind weiterhin einige Besonderheiten zu beachten. Endgeräte, die sich in NAT-Umgebungen befinden, können beispielsweise nur mit hohen Aufwand mit VoIP-Systemen außerhalb der NAT-Umgebung kommunizieren. Weitere Informationen hierzu sind in der Maßnahme M 5.137 Einsatz von NAT für VoIP zu finden.

Prüffragen:

  • Wird nur ein Signalisierungsprotokoll eingesetzt und die Auswahl dokumentiert?

  • Wird darauf geachtet, dass die VoIP -Komponenten das ausgewählte Signalisierungsprotokoll unterstützen?

Stand: 13. EL Stand 2013