
Polnische Forscher haben einen neuen Ansatz für Netzsteganografie vorgeschlagen, der auf den Besonderheiten des weit verbreiteten TCP-Protokolls basiert. Die Autoren der Studie sind der Ansicht, dass ihr Schema beispielsweise für die Übermittlung versteckter Nachrichten in totalitären Staaten eingesetzt werden kann, die strenge Internetzensur einführen. Lassen Sie uns untersuchen, worin genau die Neuerung besteht und wie nützlich sie tatsächlich ist.
Zunächst muss definiert werden, was Steganografie ist. Steganografie ist die Wissenschaft der versteckten Übertragung von Nachrichten. Das bedeutet, dass die Parteien versuchen, den Fakt der Übertragungzu verbergen. Darin besteht der Unterschied zwischen dieser Wissenschaft und der Kryptografie, die versucht, den Inhalt der Nachricht unlesbar zu machen.. Es ist erwähnenswert, dass die professionelle Gemeinschaft der Kryptographen Steganographie eher mit Verachtung betrachtet, aufgrund der Nähe ihrer Ideologie zum Prinzip „Sicherheit durch Undurchsichtigkeit“. Dieses Prinzip wird beispielsweise von der Firma Skype Inc. angewendet – der Quellcode der beliebten VoIP-App ist geschlossen, und niemand weiß genau, wie die Datenverschlüsselung erfolgt. Kürzlich beklagte sich übrigens das NSA darüber, was der bekannte Experte Bruce Schneier in seinem Blog.
Kommen wir zur Steganographie und der Frage, warum sie überhaupt benötigt wird, wenn es Kryptographie gibt. Tatsächlich können Nachrichten mit einem modernen Algorithmus verschlüsselt werden, und bei Verwendung eines ausreichend langen Schlüssels kann niemand diese Botschaft lesen, es sei denn, Sie wünschen es ausdrücklich. Dennoch kann es manchmal sinnvoller sein, den Fakt der geheimen Übertragung selbst zu verbergen. Zum Beispiel, wenn die entsprechenden Behörden Ihre verschlüsselte Nachricht abfangen, sie jedoch nicht entschlüsseln können, aber dennoch daran interessiert sind, könnte es letztendlich alternative, nicht-digitale Methoden zur Informationsbeschaffung geben. Es klingt dystopisch, aber seien wir ehrlich, so etwas ist im Grunde möglich. Daher wäre es besser, dafür zu sorgen, dass diejenigen, die es nicht wissen sollen, überhaupt nicht erfahren, dass eine Übertragung stattgefunden hat. Polnische Forscher haben genau solch eine Methode vorgeschlagen. Sie schlagen vor, dies mittels eines Protokolls zu realisieren, das jeder Internetnutzer tausendmal am Tag verwendet.
Hier kommen wir nun zum Transmission Control Protocol (TCP). Es macht wenig Sinn, alle Details zu erklären – das wäre langatmig und langweilig; die, die es benötigen, wissen bereits Bescheid. Kurz gesagt ist TCP ein Transportprotokoll (es operiert "über" IP und "unter" Anwendungsprotokollen wie z.B. HTTP, FTP oder SMTP), das eine zuverlässige Datenübertragung vom Sender zum Empfänger gewährleistet. Zuverlässige Zustellung bedeutet, dass TCP sicherstellt, dass wenn ein Paket verloren geht oder verändert ankommt, dieses Paket erneut gesendet wird. Anzumerken ist, dass mit Veränderungen nicht absichtliche Datenverfälschungen gemeint sind, sondern Übertragungsfehler, die auf physikalischer Ebene auftreten. Beispielsweise können beim Durchlaufen von Kupferkabeln ein paar Bits ihre Werte umkehren oder ganz im Rausch verloren gehen (übrigens wird für Ethernet die Bitfehlerrate normalerweise mit etwa 10^-8 angenommen). Paketverluste auf dem Weg sind ebenfalls ein relativ häufiges Phänomen im Internet. Sie können zum Beispiel aufgrund von überlasteten Routern auftreten, die zu einem Überlaufen der Puffer führen und somit zur Verwerfung aller neu eintreffenden Pakete. In der Regel beträgt der Anteil verlorener Pakete etwa 0,1 %, und bei Werten von einigen Prozent funktioniert TCP überhaupt nicht mehr richtig – die Benutzer erleben dann starke Verzögerungen.
So sehen wir, dass die Übertragung (Retransmission) von Paketen ein häufiges und grundsätzlich notwendiges Phänomen für TCP ist. Warum also nicht dieses Verfahren für die Bedürfnisse der Steganographie nutzen, zumal TCP, wie bereits erwähnt, weit verbreitet ist (verschiedene Schätzungen zufolge macht TCP heute 80–95 % des Internets aus)? Der Kern des vorgeschlagenen Verfahrens besteht darin, im übermittelten Nachrichteninhalt nicht das zu senden, was im ursprünglichen Paket war, sondern die Daten, die wir zu verbergen versuchen. Dabei ist es nicht so einfach, eine solche Manipulation zu entdecken. Man muss nämlich wissen, wo man suchen soll – die Anzahl der gleichzeitigen TCP-Verbindungen, die über den Anbieter laufen, ist einfach riesig. Kennt man das ungefähre Niveau der Retransmission im Netzwerk, kann man den Mechanismus der steganographischen Übertragung so anpassen, dass Ihre Verbindung sich nicht von anderen unterscheidet.
Natürlich ist diese Methode nicht frei von Nachteilen. Zum Beispiel ist ihre praktische Implementierung nicht ganz einfach – sie erfordert Änderungen am Netzwerk-Stack in Betriebssystemen, auch wenn dies nicht zwingend kompliziert ist. Darüber hinaus können bei ausreichenden Ressourcen dennoch "versteckte" Pakete aufgespürt werden, da es nötig ist, jedes Paket im Netzwerk zu überwachen und zu analysieren. In der Regel ist das jedoch praktisch unmöglich, weshalb man normalerweise nach auffälligen Paketen und Verbindungen sucht, was die vorgeschlagene Methode bewirken kann – sie macht Ihre Verbindung unauffällig. Außerdem steht es Ihnen frei, sensible Daten zur Sicherheit zu verschlüsseln. Das Verbindung selbst kann dabei unverschlüsselt bleiben, um weniger Verdacht zu erregen.
Die Autoren der Arbeit (übrigens für Interessierte, zeigen auf Simulationsebene, dass die vorgeschlagene Methode wie gedacht funktioniert. Möglicherweise wird in Zukunft jemand die Umsetzung ihrer Idee in der Praxis in Angriff nehmen. Und dann, hoffen wir, wird es im Internet ein wenig weniger Zensur geben.
Quelle: habr.com
