Ich habe ja schon immer gesagt, dass man Skype nicht verwenden will, sondern lieber ein offenes Protokoll für Voice over IP, aber geglaubt haben mir leider nur die wenigsten.
Es gibt aber glücklicherweise immer wieder Leute, die es auf sich nehmen derartige proprietäte Software, über deren genaue Funktion man nicht wirklich Bescheid weiss, unter die Lupe zu nehmen. Erste Analysen gab es bereits 2004 von der Universität Columbia (PDF-Datei) jedoch konzentrierte man sich hier auf den Netzwerkverkehr, den Skype verursacht.
Philippe Biondi und Fabrice Desclaux von EADS haben kürzlich auf der Black-Hat-Konferenz nachgelegt und die genauere Arbeitsweise des Clients veröffentlicht.
Sie fanden heraus, dass der Hersteller immensen Aufwand betreibt, um das Reverse Engineering seiner Software zu verhindern. So erkennt der Client beispielsweise, ob er in einem Debugger (etwa SoftIce) läuft und ändert sein Laufzeitverhalten, indem er andere Register und Speicherbereiche nutzt. Teile des Codes sind sogar verschlüsselt und werden erst zur Laufzeit ausgepackt. Die Präsentation „Silver Needle in the Skype“ der beiden EADS-Wissenschaftler zeigt aber, wie man Skype austricksen kann, um es trotzdem zu analysieren.
Äusserst interessant, was für ein Aufwand hier getrieben wird … Ein Schelm wer Böses denkt.
Darüber hinaus ist es den beiden Forschern gelungen, die Art der Datenverschlüsselung, die Berechung des Schlüssels sowie die Authentifizierung von Skype herauszufinden. Ein Teil ihres Vortrags zeigt sogar die prinzipielle Möglichkeit auf, manipulierte Supernodes ins Netz zu bringen, um VoIP-Verkehr umzuleiten und zu belauschen.
Endlich habe ich einen brauchbaren Link, den ich den Predigern von „Skype ist doch so sicher, weil es verschlüsselt“ um die Ohren hauen kann.
Die komplette Analyse gibt es übrigens unter folgender URL: http://www.secdev.org/conf/skype_BHEU06.handout.pdf