Asterisk und TK-Anlagen: 13 Empfehlungen für mehr Sicherheit

Vor einigen Wochen schrieb ich den Blog-Artikel "Sicherheit durch Updates" und thematisierte dabei allerlei Sicherheits-Themen. Heute lass ich via Facebook dass der in der deutschen Asterisk-Community recht bekannte Klaus-Peter Junghanns auf einer seiner Asterisk-Server einen SIP-Bruteforce Angriff hatte.

Den Angriff selber entdeckte er eher per Zufall und nur mit etwas Glück sehr frühzeitig. Da hat er wirklich Glück gehabt dass die Angreifer nicht über weit mehr Stunden oder gar Tage teure Anrufe in das Ausland tätigen konnten.

Herr Junghanns weist in seinem Beitrag auf "Dinge, die ich durch einen SIP-Bruteforce-Angriff gelernt habe" hin. Da wir bei Portunity in den vergangenen Monaten und Jahren eine stetige Zunahme an Angriffen auf Asterisk- und VoIP-Systeme gesehen haben, möchte ich die von Herrn Junghanns genannten Punkte - auch nochmal etwas ergänzt - gerne als Empfehlung im VoIP-, TK-Anlagen- und vor allem Asterisk-Umfeld aufgreifen, kommentieren und mit weiteren Punkten komplementieren:

  1. Dialplan-Wildcards wie "_X." sollten in Asterisk-Contexten, in denen ausgehende Gespräche stattfinden, vermieden werden. Statt dessen sollten für jedes Land, in welche Gespräche stattfinden sollen, Extensions wie "_0049." verwendet werden. Bei konsequenter Anwendung dieser Whitelisting-Methode werden ausländische Calls in ungewollte Gassen wirksam vermieden. Eine wirklich ganz hervorragende Idee !
  2. Gute Usernamen und Passwörter verwenden und Benutzerkennungen aus Ziffern vermeiden. Diese Empfehlung können wir ebenfalls aus unserer Praxis nur unterschreiben. Sowohl auf eigenen Maschinen als auch auf Kunden-Anlagen haben wir bereits Versuche von Bots registriert, wo ganz dreist einfach SIP-Logins und Kennwörter im Sekundentakt durchprobiert wurden: 0000, 0001, 0002 usw. Von daher triviale Usernamen wie "info", "Firma", reine Ziffern usw. vermeiden und auch bei Kennwörter bereits bei der Vergabe auf kryptische Codes setzen !
  3. Bruteforce-Angriffe verhindern durch Scripte wie fail2ban: Diese Empfehlung ist die Konsequenz aus dem vorherigen Punkt. Mit dem freien Script fail2ban können relativ einfach Logfiles ausgewertet werden und bei z.B. dem dritten Fehlversuch Massnahmen angetriggert werden wie z.B. die Blockierung der jeweiligen IP-Adresse in der Firewall für einen bestimmten Zeitraum. Portunity verwendet das Script fail2ban schon seit Jahren nicht nur im VoIP-Bereich, sondern auch auf Web- und Mail-Servern sowie bei vielen anderen Diensten. Ein großartiges Script und ein guter Baustein im Sicherheitskonzept, quasi das Sicherheitsnetz falls doch mal einfache Codes verwendet werden sollten ! Weitere Informationen zu Fail2ban im Hosting-Wiki.
  4. Fehlermeldung bei Authentifizierungen gleichschalten: In der sip.conf sollte der Parameter alwaysauthreject=yes gesetzt werden. Hierdurch werden ungültige Zugriffsversuche (Passwort falsch) bei existierenden Usernamen genauso beantwortet wie wenn die User nicht existieren. Ist der Parameter nicht gesetzt, können Angreifer ansonsten differenzieren ob nur das Passwort falsch aber der Benutzer grundsätzlich existiert. Dies könnte dann als Ausgangsbasis genommen werden für vertiedende Bruteforce-Angriffe auf den jeweiligen Benutzer.
  5. SIP-Domains statt IP-Adressen verwenden und sicherstellen, dass von einer IP-Adresse nicht auf die Domain geschlossen werden kann (z.B. durch Reverse-DNS-Einträge). Diese Massnahme dient dazu Bots und Harvestern das Leben schwerer zu machen.
  6. Für eingehende SIP-Gespräche einen SIP-In-Proxy verwenden. Portunity bietet bereits seit Jahren die Verwendung eigener Domains bei SIP-Adressen an. Anstelle die Domain direkt auf die eigene TK-Anlage zu konfigurieren, können die Gespräche zunächst beispielsweise bei Portunity auflaufen und von da weitergeleitet werden. Dadurch sieht ein Angreifer im DNS der jeweiligen Domain zunächst die IP-Adressen von Portunity - und nicht die der eigenen TK-Anlage.
  7. SIP- und IAX-Ports ändern: Je nach Anwendungsszenario ist es aus unserer Sicht auch Empfehlenswert die Standard-Ports zu ändern (z.B. von SIP 5060 auf etwas anderes). Hierdurch werden IP-Scanner welche entsprechende Ports auf der Suche nach TK- und VoIP-Servern / -Diensten abtasten möglicherweise ausgebremst bzw. erschwert. Durch das bereits genannte Script fail2ban kann ein Zugriffsversuch auf den Standardport dann sogar zu einem Honig-Pot umgebaut werden: Kommt eine Anfrage auf dem gesperrten Port, kann direkt gesperrt werden. Port-Verlegung ist vor allem im internen Umfeld eine gute Idee - wird aber nicht immer möglich sein.
  8. Feste IP-Adressen whitelisten und zur Authorisierung mit nutzen: Neben Username und Passwort können bzw. sollten im Dialplan sowie in Firewalls auch IP-Adressen zur Authentifizierung heran genommen werden soweit dies vom Szenario sinnvoll machbar ist.

    • In der sip.conf können z.B. Parameter wie permit= und deny= verwendet werden, dito beim IAX-Protokoll 
    • Auch in der manager.conf der Manager-API sollte der Zugriff via permit= und deny= eingeschränkt werden.

  9. Anzahl ausgehender Gespräche begrenzen: Wir bekommen immer mal wieder Anfragen von Firmen, die ganz viele gleichzeitige Gespräche fordern - am liebsten unlimitiert. Das finden so Angreifer dann im Erfolgsfall auch immer ganz gut ;)

    • Outbound gesamt: Es sollte überlegt werden, wieviele Gespräche wirklich parallel ausgehend zu welchen Zeiten benötigt werden. Wenn dies beispielsweise fünf sind, braucht man keinen SIP-Outbound der 30 Kanälle zu läst (in dem Fall wäre das Missbrauchspotential durch parallele Calls auch der Angreifer 6 mal höher). Hier sollte bereits im Einkauf drauf geachtet werden - oder in der eigenen Anlage ensprechende Logik im Dialplan eingebaut oder aktiviert werden um die Anzahl gleichzeitiger Gespräche zu limitieren.
    • je Nebenstellen: Auch die einzelnen Nebenstellen sollten begrenzt werden. Hier sind selten mehr wie 1 oder 2 Gespräche gleichzeitig sinnvoll.

  10. Regelmässige Checks: Alte und nicht mehr benötigte Accounts abschalten. Das hatten wir selbst schon erlebt, dass Angreifer einen Account, der längere Zeit nicht mehr benutzt wurde, ins Visier genommen hatten.
  11. Monitoring aufbauen und beobachten: Viele TK-Anlagen bieten mitlerweile von Haus aus Statistiken z.B. für die Anzahl der Channels usw. Diese sollten regelmässig / täglich beobachtet werden bzw. in Monitoring-Massnahmen (soweit vorhanden) aufgenommen werden, so dass beim Überschreiten von Schwellwerten Alarm ausgelöst wird.
  12. Software auf den aktuellen Stand bringen: Wir bereits in meinem ersten Beitrag zum Thema Sicherheit ausführlich erläutert, sind regelmässige Updates extremst empfehlenswert. Gerade Asterisk und auf Asterisk basierende TK-Anlagen sind aufgrund ihrer hohen Verbreitung nicht nur beliebte Angriffsziele, sondern naturgemäss werden bei einer offenen und weit verbreiteten Software-Lösung auch öfter Fehler und Bugs gefunden.
  13. Konsequent Prepaid verwenden: Das ist einer der wirksamsten Schutzmechanismen um den maximalen Schaden auf eine bestimmte Summe zu deckeln. Wir bekommen immer wieder Anfragen mit Aussagen wie "Ich will aber kein Prepaid", "Prepaid ist umständlich" usw. Diesen Argumenten möchten wir ganz entschieden wiedersprechen: Prepaid läst sich durch Auto-Auflader u.a. genauso bequem handhaben wir "Telefonie auf nachträgliche Rechnung" - hat aber zusätzlich den Entscheidenden Vorteil dass es eben nach oben vom maximal erreichbaren Schaden naturgemäss limitiert ist. Wir bieten zwischenzeitlich schon seit Jahren bei Neubuchung u.a. aus Sicherheits-Erwägungen auch nur noch Prepaid-Accounts an. Übrigens wir selber verlangen auch bei uns im Einkauf ausschließlich Prepaid aus den gleichen Erwägungen: Deckelung maximal möglicher Schaden - da sehe ich lieber das unsere gesamte VoIP-Plattform leer läuft als dass die 1 Mio-Euro-Überraschung mal wann aufpoppen sollte ;)

Wir können diese dreizehn Punkte wirklich JEDEM, der eine TK-Anlage mit VoIP-Funktionen betreibt, ans Herz legen. Vor allem wenn diese auch mit dem Internet verbunden ist. Auch wenn ich hier nun etwas Asterisk-lastig geschrieben haben sollte: Die meisten der genannten Punkte sind auch auf andere TK-Anlagen wie Swyx und andere adaptier- und anwendbar > also universell als Best-Practice im VoIP- und TK-Anlagen-Umfeld zu sehen.

Egal ob Selbstmanagement oder professioneller Vollblut-Admin: Auch bei TK-Anlagen gelten die Grundregeln der IT-Sicherheit, umsomehr als das hier wirklicher Schaden in Form von Geld entstehen kann - oder ?

Diesen Artikel...


... auf weiteren sozialen Netzwerken posten:

Tags

Ein Tag ist ein Schlagwort, welches zu einem Produkt oder einer Seite passt. >> MEHR , um selber Tags hinzuzügen und Ihr persönliches Schlagwort-Register aufzubauen.

Noch kein Konto bei portunity.de? Jetzt kostenlos registrieren!

Trackbacks

Bisher gab es noch keine Links von externen Seiten. Trackback-URL

Kommentare

2 Kommentare bisher
Kommentar schreiben Kommentar via Facebook
Alexander Reetz
#1 Alexander Reetz | 26.05.2011 um 16:47 Uhr
fail2ban ist wirklich eine feine Sache. Nach der Installation werden die Dialplan-Attacken schon nach wenigen Sekunden geblockt. Vorher liefen die laut Log teilweise mehrere Stunden, was ja auch jede Menge unnötigen Traffic verursacht
Josip Grgic
#2 Josip Grgic | 03.05.2012 um 23:26 Uhr
Der Artikel beschreibt die wichtigsten Sicherheitsaspekte einer VoIP Telefonanlage sehr gut. Leider gibt es noch genug Anlagen bzw. SIP Endgeräte die offen im Netz hängen und somit ein Kinderspiel zum Knacken für Angreifer sind.

Über den Autor

Björn Rücker
Portunity GmbH
Founder of Portunity & Entrepreneur

Hi. I'm one of the founders of Portunity - where I work with some of the coolest people on earth on projects with and for the internet.

Hallo. Ich bin einer der Gründer von Portunity - wo ich mit einigen der coolsten Menschen dieser Erde an Projekten im und für das Internet arbeite.

21.07.2016
24.02.2016
26.05.2015
12.04.2015
11.01.2015
  • ivanalexender

    ivanalexender hat sich angemeldet


    vor 3 Stunden
  • wolfer2122

    wolfer2122 hat sich angemeldet


    vor 3 Stunden
  • kruegervoip

    kruegervoip hat sich angemeldet


    vor 8 Stunden
  • BeSSeRwUeRzEl

    BeSSeRwUeRzEl hat sich angemeldet


    vor 2 Tagen
  • pdbsmqpzp

    pdbsmqpzp hat sich angemeldet


    vor 3 Tagen
  • VPN-Server

    VPN-Server hat sich angemeldet


    am 16.02.2017
  • CF-PRAXIS1

    CF-PRAXIS1 hat sich angemeldet


    am 16.02.2017
  • Human12

    Human12 hat sich angemeldet


    am 15.02.2017
  • HumanLeaasing

    HumanLeaasing hat sich angemeldet


    am 15.02.2017
  • bremen-sip

    bremen-sip hat sich angemeldet


    am 09.02.2017
Konferenzen.eu
Jetzt eine Telefonkonferenz starten? Schnell, keine Anmeldung erforderlich, kostenlos, normale Festnetznummer und sofort einsatzbereit: www.konferenzen.eu
Telefonkette für Ihr Business
Mit Telefonkette.de können Sie Telefonketten verwaltet und automatisch die aufgenommenen Sprachnachrichten an die Mitglieder via echten Telefonanruf übermitteln.
MusikAnsagen.de
Individuelle musikalische Ansagen für Anrufbeantworter, Warteschleifen, Sprachmenüs und sonstige Telefonie-Anwendungen.
faxnummer.de
Mit dem kostenlosen Faxnummern - Service von Portunity erhalten Sie eine echte Ortnetz-Rufnummer und können sich so Ihre Faxe bequem per eMail zustellen lassen.
Telefonvalidierung
Mit unserer Webservice-API Telefonvalidierung können Telefonnummern in eigenen Projekten überprüft werden (z.B. in Onlineshops, Communities, ...).
BankdatenCheck.de
Mit dem Webservice von BankdatenCheck.de können aus eigenen Applikationen aus dem Shop- und eCommerce-Umfeld Eingaben von Bankdaten auf Plausibilität überprüft werden.