Signal, die PIN und die Cloud – weniger ist manchmal mehr

Hmpf. Da hatte ich mich doch vor kurzem erst so gefreut, dass meine Gemeinschaft von WhatsApp zu Signal gewechselt ist. Und jetzt kommt wenige Wochen später diese Geschichte mit der Zwangs-PIN und der Speicherung von Nutzerinnendaten in der Cloud.

Wenn du, wie ich, verstehen willst, was da technisch genau eigentlich los ist, ist der Artikel von Matthew Green die Quelle der Wahl. Für alle anderen erläutere ich es mal ganz einfach runtergebrochen:

Signal hatte (bisher zumindest) das Grundprinzip, dass die Firma, die das System betreibt, möglichst gar keinen Zugriff auf irgendwelche Nutzerinnendaten hat, die darüber ausgetauscht werden. Das ist an sich eine sehr lobenswerte Philosophie.
In der Zwischenzeit hat sich der Messenger allerdings bei vielen Nutzerinnen verbreitet, was dazu führt, dass diese Features wollen, die sie von anderen Messengern kennen. Wobei die Features oft Rückschritte bei der Sicherheit bedeuten; es gibt immer einen Zielkonflikt zwischen Sicherheit und Bequemlichkeit.
Wer beim Lesen meines Blogs aufgepasst hat, weiss, dass ich bei neuen Features seeehr skeptisch bin, denn Komplexität ist der Feind. Und genau mit diesem Feind hat sich Signal jetzt angelegt. Ich hoffe inständig, dass es sich deshalb nicht zu einem weiteren Clusterfuck entwickelt.

Eben wegen des Zielkonflikts zwischen Sicherheit (der Philosophie von Signal) und Bequemlichkeit (den gewünschten neuen Features) mussten die Signal-Entwicklerinnen sich ein hochkomplexes System ausdenken, wie auch weiterhin die Signal-Betreiberinnen keinen Zugriff auf die inzwischen auf ihren Systemen doch gespeicherten Daten bekommen. Und dieses System basiert ausgerechnet auf Software Guard Extensions (Intel SGX). Das sind Befehlssatzerweiterungen (=mehr Komplexität), und zwar ausgerechnet von Intel – dem Prozessorhersteller, dem Apple gerade den Rücken kehrt. Und zwar, wie frau hört, weil Intel die Qualitätskontrolle zu nachhaltig verkackt hat. Und zwar insbesondere bei der Skylake-Architektur, derjenigen, mit der SGX eingeführt wurde. Was soll da schon schiefgehen?!

Im Signal-Forum gibt es zur neuen PIN einen Thread mit aktuell (13.07.) 661 Beiträgen; dort wird also auch heiss diskutiert, ob das so eine kluge Idee war.

Mir erscheint diese Entwicklung als ein weiteres Argument für dezentrale Strukturen wie in diesem Fall XMPP (Jabber) + OMEMO. Darüber hatte ich mich im Beitrag Der Messenger-Salat ja schon ausgelassen, und ich fange gerade wieder an, ernsthafter über Conversations als Messenger für Android nachzudenken. Dazu stellt sich mir aufs Neue die Frage, welchen Client ich dafür unter Linux nehme; es gibt ja insgesamt eine ganze Menge OMEMO-fähiger Messenger. Nur mein bisheriger Lieblings-Messenger Pidgin gibt in dieser Hinsicht eine sehr traurige Figur ab. Auch meine praktischen Erfahrungen waren bisher überaus durchwachsen; ich habe es faktisch nicht zum Laufen gekriegt.

Jedenfalls haben sich Moxie Marlinspike (Seitenhieb: in der deutschsprachigen Wikipedia gibt es keinen Artikel über ihn; er ist offensichtlich nicht relevant…) & Co. möglicherweise einfach zu viel vorgenommen, eine sichere Messenger-Infrastruktur für zig Millionen Nutzerinnen zentral zu verwalten. Die Planwirtschaft im real existierenden Sozialismus war ja auch nicht gerade eine Erfolgsstory…

Nachtrag vom 08.08.: Es war echt eine super Idee, die Sicherheit privater Schlüssel SGX-Enklaven anzuvertrauen!!1! Foreshadow returns to the foreground: Secrets-spilling speculative-execution Intel flaw lives on, say boffins:

Foreshadow – an L1 Terminal Fault (L1TF) bug in Intel parlance – involves abusing the processor’s speculative execution to discern private data in an Intel SGX enclave’s L1 data cache via a side channel. It relies on manipulating how information is prefetched – collected before it’s needed – from the cache. This anticipatory data gathering doesn’t take place in the way computer scientists had thought.

Wie gesagt, was soll da schon schiefgehen…

Nachtrag vom 11.11.: Ja, war echt ne Super Idee mit den SGX-Enklaven!!1!

Nachtrag vom 16.12.2020: Endlich hat Mike Kuketz in seiner Messenger-Artikelserie auch über Signal geschrieben. Insgesamt ist er recht zufrieden mit Signal. Zur (Un-) Sicherheit von SGX-Enklaven siehe oben.

Nachtrag vom 19.01.2021: Mike Kuketz hat Hintergründe, die den Userinnen nicht vorenthalten werden sollten: Jegliche Kommunikation erfolgt über Tech-Giganten wie Amazon, Microsoft, Google und Cloudflare.

Das bedeutet: Jegliche Kommunikation wird über zentrale Server der Tech-Giganten abgewickelt. Gerade datenschutzsensible Nutzer mag das abschrecken, was ich nachvollziehen kann. Zumindest aus der IT-Sicherheitspersektive halte ich die Verwendung der angemieteten Server allerdings für vernachlässigbar, da Signal mit dem Zero-Knowledge-Prinzip arbeitet. Sicherlich wäre es wünschenswert, wenn die Signal Foundation die Server selbst hosten würde. Einen Sicherheitsgewinn würde dies allerdings nicht zwangsläufig bedeuten. Dennoch ist das ein Kritikpunkt, da dies natürlich auch Geld in die Kassen der Tech-Datenkraken spült.

Nachtrag vom 08.04.2021: Es wird immer schlimmer mit Signal. Jetzt machen sie (bisher nur in UK, aber bestimmt kommt das demnächst auch global) in Blockchain.

Nachtrag vom 10.01.2022: Inzwischen ist die Blockchain-Bezahlfunktion in Signal weltweit ausgerollt worden, was nicht nur völlig unnötig die Codebasis und damit die technische Angriffsfläche deutlich vergrößert, sondern auch eine juristische Angriffsfläche bei der Verschlüsselung bedeutet:

Der renommierte IT-Sicherheitsexperte Alex Stamos fürchtet, dass bei Signal unterschätzt wird, welch juristische Angriffsfläche der Messenger mit dem Schritt öffnet. Auf Twitter weist er darauf hin, wie Angriffe auf Ende-zu-Ende-Verschlüsselung bereits jetzt immer entschiedener würden – etwa in der Europäischen Union. In den USA sei verschlüsselte Kommunikation bislang aber durch die starken Regelungen zum Schutz der freien Rede sicher gewesen. Dieser Schutz gelte aber nicht für Bezahlvorgänge, hier gelten Gesetze, die lediglich durchgesetzt werden müssten.
Vor allem bundesstaatliche und lokale Strafverfolgungsbehörden in den USA würden bereits jetzt versuchen, gegen Verschlüsselung vorzugehen, erklärt Stamos auf Twitter. Meist fehle ihnen dabei aber der Hebel. Gegen Signal könnten sie jetzt auf Gesetze gegen Geldwäsche setzen und eine Schwächung von Verschlüsselung erwirken, sollte die App nicht Vorgaben etwa zur Nachverfolgbarkeit von Zahlvorgängen einführen.

Nachtrag vom 16.01.2022: Es sieht so aus, als ob Intel SGX nach & nach abschafft. Da müssen sich die Signal-Leute jetzt von Grund auf was Neues überlegen…

Nachtrag vom 08.11.2022: Das Interview mit der neuen Signal-Chefin Meredith Whittaker bei Tarnkappe.info gehört unbedingt zur Meinungsbildung hier mit rein.

Nachtrag vom 09.08.2023: Intel SGX ist auch von der neuesten Prozessor-Sicherheitslücke Downfall betroffen:

In addition to normal isolation boundaries e.g., virtual machines, processes, user-kernel isolation, Intel SGX is also affected.

Ach ja:

[Q] How long have users been exposed to this vulnerability?

[A] At least nine years. The affected processors have been around since 2014.

Nachtrag vom 27.08.2024: Den Jungs von Positive Technologies ist es gelungen, den Root Provisioning Key einer SGX-Hardware zu extrahieren. Als ich nachgeschaut habe, was genau dieser Schlüssel macht, fand ich noch diesen Hinweis:

Intel stores all RPKs as they are the basis of how SGX processors demonstrate their genuineness through an online provisioning protocol. For this reason, the iKGF also forwards different derivations of each RPK to Intel’s online servers.

Das klingt nach einem sehr lohnenden Angriffsziel im Netzwerk von Intel…