Skype Security WDCM Dresden Friedemann Wulff-Woesten Eine kritische Auseinandersetzung

Die Seite wird erstellt Amelie Fritsch
 
WEITER LESEN
Skype Security WDCM Dresden Friedemann Wulff-Woesten Eine kritische Auseinandersetzung
Skype Security
   WDCM Dresden
   Friedemann Wulff-Woesten
  Eine kritische Auseinandersetzung
mit der populären Voice-over-IP Lösung
     in Zeiten der „Staatstrojaner“
Skype Security WDCM Dresden Friedemann Wulff-Woesten Eine kritische Auseinandersetzung
Motivation
Skype Security WDCM Dresden Friedemann Wulff-Woesten Eine kritische Auseinandersetzung
WTF?

       Screenshot: Little Snitch & Skype für Mac OS X
Skype Security WDCM Dresden Friedemann Wulff-Woesten Eine kritische Auseinandersetzung
aus aktuellem Anlass
Screenshot: http://www.f-secure.com/v-descs/trojan-downloader_osx_flashback_i.shtml
Glück im Unglück

      Screenshot: http://www.f-secure.com/v-descs/trojan-downloader_osx_flashback_i.shtml
Remote Forensic Software
      (aka Staatstrojaner)

• Warum Skype per Trojaner
    überwachen?
    (Datei muss auf Rechner gelangen, Trojaner darf nicht von Virenscannern
    erkannt werden... Anschaffungskosten für Behörden vergleichsweise hoch)

•   Warum nicht gleich Pakete beim ISP abgreifen
    bzw. Skype zur Herausgabe der Daten bringen?
mögliche Antworten

•   Skype selbst hat keine Gesprächsdaten
    (virtuelle Punkt-zu-Punkt-Verbindung zwischen Teilnehmern)
    Skype hat z.Zt. „nur“ IP-Adressen zu Benutzernamen bei der
    Registrierung und beim Geld aufladen auf Skype-Konto (z.B. Paypal)
    Quelle: http://cryptome.org/isp-spy/skype-spy.pdf

•   P2P Netz (basierend auf KaZaA)
    teilweise Gespräche über Relays
    (wenn beide hinter NAT; Rechner nicht von Skype, sondern von anderen
    Nutzern - meist unwissentlich - bereitgestellt: „Relay Nodes“)
mögliche Antworten

•   Nachrichten und Gespräche geXORT mit AES-
    Session Key im ICM-Modus

•   Skype Protokoll bewusst sehr konfus,
    geschlossen
    alles öffentliche Wissen nur durch Reverse Engineering erhalten
    (welches Skype untersagt)
mögliche Antworten

•   Skype-Nutzer sind oft mobil
    (Apps für alle möglichen mobilen Geräte,
    Skype funktioniert auch über 3G-Netz sehr gut
    oder in der Kneipe mit kostenlosem WiFi um die Ecke
    → ständig wechselnde ISPs und Einwahlknoten, kaum feste IPs)

•   verschlüsselte UDP-Pakete nach nicht standardisiertem Protokoll, bei
    mehreren ISPs → müssen einem Nutzer erst einmal zugeordnet werden
    → nicht unmöglich, aber nicht für jede Landesbehörde machbar
„Skype was made by clever people“

•   Schutz der Skype-Software vor Reengineering
    (Anti-Debugging, Code Check, Verschlüsselung des
    Binaries, Code Obfuscation)

•   Verschlüsselung der reinen Signalisierung mit RC4

•   Einsatz von asymmetrischen (RSA) und
    symmetrischen Kryptoverfahren (AES) zur
    Verschlüsselung der Kommunikation und
    Authentifizierung der Nutzer
„Skype was made by clever people“

•   AES 256 Transport Layer Encryption (Ende-zu-Ende)

•   RSA 1024bit Schlüssel zur Aushandlung der
    symmetrischen AES Schlüssel

•   Berechnung nutzt
    Login und Passwort des Skype Nutzers

•   Public Key des Nutzers wird signiert mit
    2048 bit RSA Zertifikat

•   Super Nodes halten Public Key und Login der Nutzer,
    signiert von Skype
„Skype was made by clever people“

•   AES 256 bit, RSA 1024 bit, 2048 bit RSA Zertifikat
    → vergleichsweise „teuer“ zu brechen, wenn man
    allein die Kryptoalgorithmen angreift
Wie funktioniert Skype?

•   für Firma Skype wunderbar:
    Netzwerk braucht kaum Server
    (auf die Anzahl der Nutzer gesehen, man geht von > 663 Mio. registierten aus)

•   Load wird auf „Cloud“ verlagert

•   Aufpassen bei Traffic-Limit der eigenen Leitung:
    Skype hat massiven Overhead
    (ich selbst war in Tests oft Relaynode,
    wenn ich lange online war, dann ca. 10kB/s pro vermitteltem Gespräch)
Skype nodes

• ordinary node („normaler Benutzer“)
• supernode
• relay node
Skype P2P Netzwerk
    Skype login server

 super node              super node

 super node              super node
Login
• Versuch, irgendeinen Supernode
  (aus Hostcache) zu erreichen -
  in letzter Zeit sieht man viele SN aus Microsoft IP-Adressbereichen

 •   IP und Port

 •   IP und Port 80

 •   IP und Port 443

• nachdem erfolgreich mit SN verbunden,
  Authentifizierung gegenüber
  Skype Login Server
Login

• Client sendet 0x1603010000
  Server sendet 0x1703010000
• in meinem Falle sehr oft 2.17.22.161
  (Datennetz der DTAG)
• Skype mundtod machen:
  einfach Pakete mit 0x170301 verwerfen
  (Achtung! Andere Handshakes per SSL funktionieren u.U. auch nicht mehr!)
Login: das sieht dein ISP

                       Screenshot: Wireshark
First Startup

• ui.skype.com - „hello world“
• Skype checkt dort ebenfalls für Updates
„magic“ supernode
•   Verteilung des Skype Nutzerverzeichnisses,
    sind untereinander verbunden

•   wird man, wenn man

    •   öffentliche IP hat und genügend Bandbreite

    •   genug RAM

    •   genug CPU-Power

    •   ordentliche Uptime
relay node
• Weiterleitung der Kommunikation von
  Clients, die nicht direkt miteinander
  kommunizieren können (Firewall, NAT)
• großer Vorteil: ICQ und Konsorten
  funktionieren fast nie, denn „Lieschen
  Müller“ ist zu hoher Wahrscheinlichkeit
  hinter NAT und hat kein UPnP aktiv
• Nachteil: Skype in Unternehmen...
Woher kommen nun
die abgehörten Daten?
BRD
• in Deutschland wurde Skype
    nachweislich erfolgreich mit Software der
    Firma Digitask abgehört (aka 0zapftis)
    http://ccc.de/de/updates/2011/analysiert-aktueller-staatstrojaner

•   es wird nichts weiter getan, als den Anruf den
    Skype-API als Extra-Datenstream an einen Server
    in den USA auszuleiten
    (kein Knacken von Verschlüsselung oder Befassen mit Skype Protokoll)

•   Daten wurden vor Gericht als Beweise verwendet
Regime unter Mubarak
•   in Ägypten wurde Skype
    mit der Software Finfisher
    abgehört (von GAMMA aus
    UK geliefert, in Deutschland
    entwickelt)

•   ebenfalls Trojaner, Protokoll
    wird nicht angegriffen

•   hatte gravierende Folgen für
    Regimegegner

                       Screenshot: http://www.scribd.com/doc/50105199/Gamma-s-Anti-Skype-Finfisher-Spy-Software
Belarussische Methode
• einfacher, aber effektiver Hack: Skype-Login
  und -Passwort per Trojaner abschnorcheln
• auf weiterem Rechner Skype Instanz öffnen
  und mit richtigen Login-Daten einloggen
• Skype synchronisiert automatisch die Clients
  und sendet Nachrichten an 2. Instanz
• Tool: UFR Stealer
Belarussische Methode
•   ebenfalls im Einsatz:
    „Remote Manipulator System“
•   Entwickler: TeknotIT
•   Dropper als „Skype.exe“ getarnt,
    mit Skype-Logo (MD5 z.B.
    43fe19eb0896979568b986b8e7fd0e42)
•   Binary auch auf Rechnern von Regimegegnern
    in Polen gefunden
Belarussische Methode
• allerdings:  sehr leicht zu erkennen
  (Kaspersky: RemoteAdmin.Win32.RMS)

• Binary trägt Decription „RMS Component“
• relevante  Dateien in
  C:\Program Files\Remote Manipulator System – Server

• ebenfalls Dynamische Bibliothek in
  C:\WINDOWS\system32\RWLN.dll

•   Prozesse: rutserv.exe (SYSTEM), rfusclient.exe (user)
Belarussische Methode

• Auswirkungen: fast alles umsetzbar,
  Funktionalität des Trojaners geht sehr weit
  über Überwachung von Skype hinaus
• in Deutschland würde diese Software
  nicht nur gegen ein Urteil des BVerfG zur
  Quellen-TKÜ verstoßen
Beobachtungen:

• keiner greift das Skype Protokoll direkt an
• Datenausleitung per Skype API (Digitask)
  oder direkt Mikrofon abgegriffen (RMS)
• Kryptoalgorithmen wie AES, RSA, RC4
  werden nicht angegriffen
Advanced: Skype in China

• in China kann man normalen Skype Client
  nicht downloaden
• stattdessen HTTP-Redirect auf Programm
  TOM-Skype, (http://www.skype.com auf http://skype.tom.com)
  entwickelt von TOM Group Limited (China)
Advanced: Skype in China

              Screenshot: http://www.nartv.org/mirror/breachingtrust.pdf, Seite 9
Advanced: Skype in China
•   Textchat wird gefiltert und auf Keywords
    gescannt, ggf. zensiert (Nachrichten werden
    nicht angezeigt)

•   wenn Match positiv, Upload des
    Chatprotokolls auf Server in China
•   es ist egal, ob auf der anderen Seite ein
    „normaler“ Skype-Client spricht
•   Logging-Server sind offen wie Scheunentor
weitere Sicherheitsbedenken ...
Skype Netzwerk missbrauchen

•   paralleles Netz aufbauen

•   http://www.blackhat.com/presentations/bh-europe-06/bh-
    eu-06-biondi/bh-eu-06-biondi-up.pdf

•   IP Adressen zu Nutzern mit Aufwand (leistungsfähige
    Rechner und Zeit) durch Sicherheitslücken im Protokoll
    herausfindbar, siehe Paper: „Exploiting P2P
    Communications to Invade Users’ Privacy“
    http://cis.poly.edu/~ross/papers/skypeIMC2011.pdf
Skype Client missbrauchen

• Skype für Mac < 5.1.0.922
    → weiterleiten auf Webseite mit Malware
    → bei Browser Sicherheitslücke
    → root shell
    http://www.purehacking.com/blogs/gordon-
    maddern/skype-bug-full-disclosure

•   heap-based buffer overflow

•   Skype traut allen, die sein Protokoll sprechen
zer0-day (Windows Client)
•   http://www.exploit-db.com/download_pdf/18010

•   Persistent Cross Site Scripting Vulnerability

•   Persistent Software Vulnerability

•   Standby Remote Buffer Overflow Vulnerability

•   Denial of Service Vulnerability

•   Memory Corruption Vulnerability
History-Datei angreifen

•   http://cryptome.org/isp-spy/skype-log-spy.pdf
•   wird gern verwendet, wenn bei Hausdurchsuchungen
    Rechner mitgenommen werden

•   häufigste Angriffsstelle!
(not) everything is lost
Tipps
•   SIP Clients als Alternative nur
    verschlüsselt! → unverschlüsseltes SIP
    können 12-Jährige mit Wireshark abhören
•   mit Netzwerkfilter / Personal-Firewall
    (Mac OS X: Little Snitch), Skype‘s
    Datenverkehr (Ziel-IPs und Menge)
    kontrollieren & einschränken (IP Block, etc.)
•   Chats könnten per OTR gecryptet werden
Idee

• cooles Tool, dass sich per Skype API in
  offiziellen Client einklinkt und OTR auf die
  Chats wirft
• kann Adium (http://adium.im/) das?
Tipps
•   Privatanwender in Deutschland brauchen
    nicht in Panik verfallen (Abhören von Skype ist
    in BRD nicht ganz billig, es muss Straftat vorliegen)

•   Skype in Firmen nicht nutzen
    (quasi nicht administrierbar und
    undurchsichtig, auch wegen Botnetz-Gefahr)
•   kommerzielle Alternativen in Betracht ziehen
Tipps: Skype (etwas) kontrollieren
•   nicht automatisch starten lassen

•   nicht automatisch einloggen lassen

•   Benutzername & sicheres Passwort
    verwenden, nirgendwo anders benutzt

•   Ports 80 und 443 deaktivieren, auf bestimmten
    Port festlegen (z.B. 41234)

•   Supernode-Funktion deaktivieren
    (geht nur auf Windows per Registry-Schlüssel)

•   Filesharing-Funktion deaktivieren (auch Registry)
Zukunft

• Paranoia Attack: Microsoft könnte
  Abhörschnittstelle implementieren
• sehr viel wahrscheinlicher: ausgefuchste
  Trojaner, nicht nur für Windows
• OpenSource Skype Client:
  http://skype-open-source.blogspot.com/
Quellen und Wiki

• http://wiki.eisenrah.com/wiki/Skype
Kontakt

• Mail: friedemann@wulff-woesten.de
• XMPP/Jabber: eisenrah@gmail.com
• Skype: eisenrah
                - beware :)
Sie können auch lesen