Original-URL des Artikels: https://www.golem.de/news/telegram-der-wertlose-krypto-contest-1402-104871.html    Veröffentlicht: 28.02.2014 14:40    Kurz-URL: https://glm.io/104871

Telegram

Der wertlose Krypto-Contest

Die Entwickler des Messengers Telegram werben damit, dass derjenige, der ihre Verschlüsselung knackt, 200.000 US-Dollar erhält. Doch in der Praxis relevante Angriffe werden von dem Contest überhaupt nicht erfasst.

Telegram ist einer von vielen Messengern, die zurzeit große Zuwachszahlen verzeichnen können, da nach der Whatsapp-Übernahme durch Facebook viele Anwender nach Alternativen suchen. Anders als Threema kann Telegram damit werben, dass seine Software zumindest teilweise quelloffen ist. Der Code kann auf Github heruntergeladen werden und steht unter der GPL v2. Bislang sind nur Teile von Telegram offengelegt, doch die Entwickler kündigen in ihrer FAQ an, dass sie auch den Rest des Programms veröffentlichen wollen.

200.000 US-Dollar für erfolgreiche Hacker

Der Messenger-Dienst wirbt für die Sicherheit seines Protokolls mit einem besonderen Versprechen: Wer die Verschlüsselung knackt, erhält ein Preisgeld von 200.000 US-Dollar. Ein scheinbar verlockendes Angebot. Sollte Telegram Schwächen haben, müsste sich doch leicht ein Sicherheitsexperte finden, der das Preisgeld einstreicht. Grundsätzlich sind derartige Contests eine gute Idee, um die Sicherheit eines Produkts zu belegen. So zahlen viele Softwareentwickler sogenannte Bounties an Personen, die Sicherheitslücken in ihren Produkten entdecken. Doch das Versprechen von Telegram hat einige Tücken.

Der Contest funktioniert laut Telegram-Webseite so: Jeden Tag sendet einer der Telegram-Entwickler einem Kollegen eine verschlüsselte Nachricht. Diese enthält einen willkürlichen Text und eine Mailadresse. Die verschlüsselten, übertragenen Daten dieser Nachricht kann man auf der Telegram-Webseite herunterladen und analysieren.

Kaum praxisrelevant

Das Problem dabei: Ein Angreifer hat in diesem Szenario viele Möglichkeiten nicht, die in der Praxis äußerst relevant sind. Das Blog Crypto Fails hat auf einige der Probleme bereits im Dezember hingewiesen.

Ein realer Angreifer kann häufig Nachrichten nicht nur mitlesen, sondern auch manipulieren. Man spricht von sogenannten Man-in-the-Middle-Angriffen. Ein Angreifer, der beispielsweise die Kontrolle über den Router beim Netzprovider eines Telegram-Nutzers hat, könnte etwa Teile von verschlüsselten Nachrichten verändern, die Zustellung von Nachrichten verhindern oder komplett neue Nachrichten schicken. Ein gutes Verschlüsselungsprotokoll sollte sich davon nicht beeindrucken lassen und auch unter diesen Umständen keine Informationen über den Klartext oder geheime Schlüssel preisgeben.

Kaum Angriffszenarien

Viele Angriffe auf kryptographische Protokolle funktionieren außerdem nur, wenn ein Angreifer eine große Zahl von Nachrichten mitlesen kann. Man kann sich leicht denken, dass so etwas praxisrelevant ist: Ein längerer Chat, möglicherweise über mehrere Tage, kann schnell Hunderte von Nachrichten enthalten. Beim Telegram-Contest kann man nur täglich eine verschlüsselte Nachricht herunterladen.

Kryptographen haben aus diesen Gründen eine Vielzahl von theoretischen Angriffsszenarien entwickelt. Man unterscheidet beispielsweise zwischen Known-Plaintext-Angriffen (ein Angreifer kennt manche Nachrichten in unverschlüsselter Form), Chosen-Ciphertext-Attacks (Angreifer kann selbst gewählte, manipulierte "verschlüsselte" Nachrichten an das System schicken) oder Chosen-Plaintext-Attacks (Angreifer kann selbst unverschlüsselte Nachrichten einschleusen und die passende verschlüsselte Nachricht sehen). Ein gutes Krypto-System sollte gegen alle derartigen Angriffe sicher sein. Der Contest von Telegram erfasst sie alle nicht, es handelt sich lediglich um einen sogenannten "Known-Ciphertext-Attack".

Noch dazu sind insbesondere in jüngerer Zeit viele Angriffspunkte in kryptographischen Protokollen aufgetaucht, die auf Timing-Probleme zurückgehen. Dabei erfährt ein Angreifer Informationen über die Zeit, die ein System benötigt, um gewisse manipulierte Nachrichten zu verarbeiten. Eines der bekanntesten Beispiele dafür ist die Lucky-Thirteen-Attacke auf TLS. Doch Timing-Angriffe sind vom Telegram-Contest ebenfalls nicht erfasst.

Komplett unsicheres Protokoll könnte Contest ebenfalls bestehen

Moxie Marlinspike, einer der Entwickler des Konkurrenzprodukts Textsecure, hat an einem Beispiel die Probleme des Telegram-Contests besonders deutlich gemacht: Marlinspike erläutert zunächst ein ganz offensichtlich völlig unsicheres Protokoll, welches aus zahlreichen bekanntermaßen schlechten Elementen besteht. Es enthält den mutmaßlich mit einer NSA-Backdoor ausgestatteten Zufallszahlenalgorithmus DUAL_EC_DRBG, einen extrem kurzen RSA-Key (896 Bit), es verwendet sogenanntes "Textbook-RSA", welches als absolut unsicher gilt und nutzt außerdem mit MD2 eine Hashfunktion, die vor einigen Jahren aus sämtlichen bekannten Krypto-Bibliotheken entfernt wurde, weil sie als nicht sehr sicher gilt. Marlinspike stellt eine verschlüsselte Nachricht seines Unsinnsprotokolls bereit und fordert die Telegram-Entwickler auf, diese zu entschlüsseln.

Kurz nach den Kritiken des Crypto-Fails-Blogs und von Marlinspike hat Telegram in einem Tumblr-Blogeintrag reagiert. Dort wird angedeutet, dass der Contest in Kürze auf Man-in-the-Middle-Angriffe erweitert werden könnte. Doch damit vergrößern die Telegram-Macher die Sicherheitsbedenken noch. Denn ein Kryptograph, der einen Angriff auf das Protokoll kennt, würde ihn jetzt vermutlich kaum veröffentlichen, wenn ihm dafür möglicherweise in einigen Monaten 200.000 US-Dollar zustehen könnten.

Das Protokoll von Telegram

Telegram nutzt für die Verschlüsselung ein selbst entwickeltes Protokoll namens MTProto. In einer Diskussion mit Marlinspike werben die Telegram-Macher damit, dass das Protokoll von mehreren Personen mit Doktortiteln in Mathematik entwickelt worden sei.

Das Protokoll von Telegram enthält einige sehr ungewöhnliche Konstruktionen. Die Verschlüsselung findet mit AES im sogenannten IGE-Modus statt (Infinite Garbe Extension). Dieser Modus ist heute praktisch nicht mehr im Einsatz, kein bekanntes Krypto-Protokoll nutzt ihn. Weiterhin verwendet Telegram SHA-1, welches zwar noch nicht faktisch gebrochen wurde, aber schon seit einigen Jahren als potenziell unsicher gilt.

Außerdem nutzt Telegram eine neue Variante, die Verschlüsselung und die Authentifizierung zu kombinieren, die als MAC-and-Encrypt bezeichnet wird. Die Frage, wie man diese Kombination korrekt einsetzt, hat die Kryptographen-Gemeinde in den vergangenen Jahren viel beschäftigt. Grob lassen sich drei Varianten ausmachen, die als MAC-then-Encrypt, Encrypt-then-MAC und MAC-and-Encrypt bezeichnet werden. Mit MAC-then-Encrypt und MAC-and-Encrypt gab es zahlreiche Probleme. Das bekannteste Problem mit MAC-then-Encrypt ist wiederum die Lucky-Thirteen-Attacke gegen TLS. MAC-and-Encrypt wurde lange Zeit von SSH verwendet und hat ebenfalls zu Problemen geführt. Inzwischen sind sich Kryptographen einig, dass Encrypt-then-MAC die sicherste Variante ist. Details dazu hat der Kryptograph Dan Boneh in einem Video ausführlich erklärt.

Dass Telegram ungewöhnliche Konstruktionen einsetzt, heißt zwar nicht, dass das Protokoll unsicher ist, es widerspricht aber der gängigen Praxis guter Kryptographie. Man versucht in aller Regel, auf bewährte und ausführlich untersuchte Technologien zu setzen, weil dort weniger unangenehme Überraschungen drohen.

Der VLC-Entwickler Geoffroy Couprie hat zahlreiche weitere Probleme des Telegram-Protokolls in einem Blogeintrag besprochen. Er verweist dabei auch auf ein Problem, mit dem sich wohl eine Man-in-the-Middle-Attacke auf die Ende-zu-Ende-Verschlüsselung durchführen lässt, allerdings ist die Quelle nur auf Russisch verfügbar. Die Telegram-Entwickler haben auf einige der Einwände in ihrer FAQ reagiert, doch sonderlich überzeugend wirken die Antworten nicht.

Wir hätten den Telegram-Entwicklern gerne Fragen zum Contest und ihrem Protokoll gestellt und ihnen eine Möglichkeit zur Stellungnahme geboten. Doch leider scheiterten sämtliche unserer Versuche, in Kontakt zu treten. Eine Mailadresse für Presseanfragen gibt es nicht, beim Support wurden unsere Mails nicht beantwortet und auch auf Twitter reagierten die Entwickler nicht.  (hab)


Verwandte Artikel:
Messenger: Telegram zwischenzeitlich aus dem App Store verschwunden   
(01.02.2018, https://glm.io/132521 )
Anton Zeilinger: Wissenschaftler kommunizieren quantenverschlüsselt   
(30.09.2017, https://glm.io/130370 )
iOS: Whatsapp darf auf CarPlay   
(30.01.2018, https://glm.io/132463 )
Facebook Messenger: Bug lässt iPhone-Nutzer nur wenige Wörter tippen   
(18.01.2018, https://glm.io/132240 )
Messenger Kids: Facebook stellt neues Chat-Programm für Kinder vor   
(04.12.2017, https://glm.io/131479 )

© 1997–2019 Golem.de, https://www.golem.de/