← Neueste Arbeiten
💻 computer science

Remote-Timer-as-a-Service: Efficient Microarchitectural Leakage in the Cloud with Remote Timers

Diese Arbeit zeigt auf, dass die bestehenden Gegenmaßnahmen von Cloudflare Workers gegen Spectre-Angriffe, einschließlich der dynamischen Prozessisolierung (DyPrIs), gegenüber remote erfolgender mikroarchitektonischer Leckage unzureichend sind, da die Autoren erfolgreich entfernte Timer und Amplifikationstechniken ausnutzten, um ein JWT-Token mit signifikant höheren Geschwindigkeiten zu exfiltrieren, was Cloudflare dazu veranlasste, hardwaregestützte Speicherisolierung und V8-Sandboxing zu implementieren, um die Schwachstelle zu entschärfen.

Ursprüngliche Autoren: Martin Schwarzl, Haocheng Xiao, Albert Pedersen, Sam Ainsworth, Nigel Topham

Veröffentlicht 2026-08-19
📖 8 Min. Lesezeit🧠 Tiefgang

Ursprüngliche Autoren: Martin Schwarzl, Haocheng Xiao, Albert Pedersen, Sam Ainsworth, Nigel Topham

Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen

In der modernen digitalen Landschaft findet ein Großteil unserer Online-Aktivitäten nicht in fernen, zentralisierten Rechenzentren statt, sondern auf Servern, die sich viel näher bei uns befinden. Dieser Ansatz, bekannt als Edge Computing, ermöglicht es Websites und Anwendungen, fast augenblicklich zu reagieren, indem Daten in der Nähe verarbeitet werden. Um diese Geschwindigkeit möglich zu machen, lassen Unternehmen wie Cloudflare tausende verschiedene Kundenprogramme gleichzeitig auf demsotem physischen Computer laufen. Sie tun dies, indem sie eine einzige große Softwareumgebung teilen, anstatt jedem Kunden einen eigenen isolierten Computer zur Verfügung zu stellen. Dieses Design ist unglaublich effizient, schafft aber eine einzigartige Schwachstelle. Wenn ein Programm in den Speicher eines anderen blicken kann, könnte es sensible Informationen wie Passwörter oder geheime Schlüssel stehlen. Jahrelang haben Sicherheitsexperten über eine bestimmte Art von Trick namens Spectre-Attacke besorgt gewesen, bei der ein Programm die winzigen, unsichtbaren Verzögerungen nutzt, mit denen ein Computer Informationen verarbeitet, um zu erraten, welche Daten ein anderes Programm hält.

Forscher von Cloudflare und der University of Edinburgh haben kürzlich demonstriert, dass dieses theoretische Risiko eine sehr reale, praktische Gefahr ist. Sie zeigten, dass selbst mit den strengen Sicherheitsregeln, die Cloudflare implementiert hatte, um solche Tricks zu verhindern, ein bösartiges Programm immer noch in der Lage ist, das Timing von Ereignissen über das Internet zu beobachten, um Geheimnisse zu stehlen. Das Team bewies, dass ein Angreifer durch eine geschickte Kombination von Techniken die Zeit mit genügend Präzision messen konnte, um die Verteidigungssysteme zu umgehen. Es gelang ihnen, ein geheimes digitales Token aus einem Programm eines Opfers zu extrahieren, das auf derselben Maschine lief, und zwar hunderte Male schneller als bei jedem bisherigen Versuch. Diese Entdeckung zwang das Unternehmen dazu, seine Sicherheitsarchitektur grundlegend zu überarbeiten und von softwarebasierten Warnungen zu hardwaregestützten Barrieren überzugehen, um seine Nutzer zu schützen.

Die Geschichte beginnt damit, wie diese Edge-Computer aufgebaut sind. Um Millionen von Anfragen pro Sekunde zu bewältigen, führt Cloudflare viele verschiedene Kundenskripte innerhalb eines einzigen Prozesses aus, was ein großer Container ist, der alle aktiven Programme enthält. Dies unterscheidet sich von älteren Systemen, bei denen jedes Programm in seiner eigenen separaten Box lief. Während dieser gemeinsame Ansatz alles schneller macht, bedeutet es auch, dass, wenn ein Skript einen Weg findet, den Speicher seines Nachbarn zu lesen, es alles sehen kann, was dieser Nachbar tut. Um dies zu verhindern, hatte Cloudflare mehrere Sicherheitsmaßnahmen eingeführt. Sie frierten die Uhren ein, die Programme lesen konnten, um zu verhindern, dass diese die Zeit präzise messen können. Sie entfernten auch die Fähigkeit für Programme, Speicher zu teilen oder gleichzeitig mehrere Threads auszuführen. Zusätzlich installierten sie ein Überwachungssystem namens Dynamic Process Isolation, das das Verhalten eines Skripts überwacht. Wenn ein Skript verdächtig agiert, wie etwa versucht, die Zeit zu häufig zu messen, wirft das System es aus dem gemeinsamen Prozess heraus und setzt es in seine eigene isolierte Box.

Die Forscher setzten sich zum Ziel zu testen, ob diese Verteidigungen wirklich ausreichend waren. Sie begannen mit der Bekämpfung des Zeitproblems. Da das System die Uhren während der normalen Arbeit anhielt, mussten die Angreifer einen Weg finden, die Zeit von außen zu messen. Sie entdeckten, dass sie eine Funktion namens WebSockets nutzen konnten, die es einem Programm ermöglicht, eine langanhaltende Verbindung mit einem Server aufrechtzuerhalten. Durch das Versenden von Nachrichten über diese Verbindung konnten sie einen Remote-Timer erstellen, der funktionierte, selbst während das Hauptprogramm beschäftigt war. Sie testeten dies in einer echten Produktionsumgebung, nicht nur in einem Labor, und fanden heraus, dass sie die Zeit mit einer Auflösung von etwa einer Millisekunde messen konnten. Dies mag zwar langsam klingen, war aber ausreichend, um den Angriff zu starten.

Die nächste Herausforderung bestand darin, das Signal laut genug zu machen, um es über den Lärm des geschäftigen Internets zu hören. Ein einzelnes geheimes Bit an Information könnte nur eine Verzögerung von wenigen Nanosekunden verursuchen, was viel zu klein ist, um mit ihrem Remote-Timer gemessen zu werden. Das Team nutzte eine Technik namens Verstärkung (Amplification). Stellen Sie sich vor, Sie versuchen, ein Flüstern in einem lauten Raum zu hören; Sie könnten die Person bitten, dasselbe immer wieder zu flüstern, oder Sie könnten ein Gerät verwenden, das den Schall echon lässt. Die Forscher bauten ein Gadget, das die winzige Verzögerung tausende Male wiederholte und den Effekt so weit stapelte, bis die Gesamtverzögerung auf einige Millisekunden anwuchs. Dies machte den Unterschied zwischen einer „Ja“- und einer „Nein“-Antwort groß genug, um von ihrem Remote-Timer erkannt zu werden, selbst trotz des Jitters und des Rauschens eines realen Netzwerks.

Mit einem zuverlässigen Timer und einer Möglichkeit, das Signal zu verstärken, wandte sich das Team der eigentlichen Datendiebstahl zu. Sie brauchten einen Weg, den Computer zu überlisten, ein Geheimnis preiszugeben, ohne dass der Computer merkt, dass es geschieht. Sie verwendeten eine Methode namens spekulative Ausführung (speculative execution), bei der der Computer rät, was er als Nächstes tun sollte, und bereits mit der Arbeit beginnt, bevor er sicher ist, dass dies richtig ist. Wenn die Vermutung falsch ist, verwirft der Computer die Arbeit normalerweise. Die Forscher fanden jedoch einen Weg, den Computer dazu zu bringen, eine Spur dieser Arbeit in seinem Cache hinterlassen – einem kleinen, schnellen Speicherbereich. Durch eine sorgfältige Anordnung ihres Codes konnten sie den Computer dazu zwingen, zu raten, dass er eine bestimmte geheime Information lesen sollte. Selbst obwohl der Computer später feststellte, dass er falsch lag und die Arbeit stoppte, hinterließ der Akt des Lesens der Daten eine Markierung im Cache, die später länger beim Zugriff dauerte. Durch die Messung der Zeit, die der Zugriff auf diese Stelle dauerte, konnten sie feststellen, ob die geheimen Daten gelesen worden waren.

Die Forscher kombinierten diese Elemente zu einer vollständigen Angriffskette. Zuerst nutzten sie eine spezielle Funktion von Cloudfares System namens Durable Objects, um ihr bösartiges Skript über Stunden hinweg am Laufen zu halten, ohne gestoppt zu werden, wodurch sie die üblichen Zeitlimits umgingen. Dies erlaubte es ihnen, im selben gemeinsamen Prozess wie ihr Opfer zu bleiben. Dann nutzten sie ihre Remote-Timer- und Verstärkungs-Gadgets, um die Speicheradresse der Daten des Opfers zu leaken. Sobald sie wussten, wo sich die Daten befanden, nutzten sie ein zweites Gadget, um das eigentliche Geheimnis zu lesen, welches in ihrem Test ein digitales Token zur Authentifizierung war. Sie wiederholten diesen Prozess Bit für Bit und rekonstruierten das gesamte Geheimnis.

Die Ergebnisse waren verblüffend. In der echten Produktionsumgebung war das Team in der Lage, Daten mit einer Rate von bis zu 12 Bits pro Sekunde zu stehlen. Dies ist eine massive Verbesserung gegenüber früheren Versuchen, die lediglich etwa 120 Bits pro Stunde schafften. Der Angriff war präzise und identifizierte die geheimen Bits in mehr als 99 Prozent der Fälle korrekt. Entscheidend war, dass der Angriff das Überwachungssystem umging. Die Forscher fanden heraus, dass die Art und Weise, wie sie den Remote-Timer und die langanhaltende Verbindung nutzten, das Erkennungssystem verwirrte. Das System betrachtete, wie oft das Skript bestimmte interne Zähler aufrief, um zu entscheiden, ob es bösartig war, aber das Timing ihres Angriffs ließ diese Zähler normal erscheinen. Da das Skript seine Aufgabe während der Ausführung nie abschloss, hatte das System keine Chance, es zu isolieren, bevor die Daten gestohlen wurden.

Diese Entdeckung verdeutlichte einen grundlegenden Fehler in der Annahme, dass Software allein ausreicht, um Hardware-basierte Tricks zu stoppen. Die Sicherheitsmaßnahmen, die Cloudflare implementiert hatte, wie das Einfrieren von Uhren und die Überwachung des Verhaltens, reichten nicht aus, um einen entschlossenen Angreifer mit den richtigen Werkzeugen aufzuhalten. Als Reaktion auf diese Demonstration implementierte Cloudflare eine Reihe neuer Abwehrmaßnahmen. Sie führten eine Sandbox ein, die begrenzt, wie Programme auf den Speicher zugreifen können, was effektiv einen Zaun um die Daten zieht, sodass selbst wenn ein Programm versucht, über seinen Bereich hinauszublicken, es die Geheimnisse des Nachbarn nicht erreichen kann. Sie verbesserten auch ihre Erkennungsmethoden, um nach den spezifischen Mustern des Angriffs zu suchen, anstatt nur nach allgemeinem Verhalten. Schließlich, und vielleicht am wichtigsten, rollten sie ein hardwarebasiertes Isolationssystem aus. Dieses System nutzt die physischen Fähigkeiten des Computers, um die Daten jedes Kunden in einem separaten Raum einzuschließen, wodurch sichergestellt wird, dass selbst wenn ein Programm versucht einzubrechen, die Hardware selbst den Versuch blockiert.

Diese Arbeit dient als kraftvolle Erinnerung daran, dass in der Welt des Hochleistungsrechnens Effizienz und Sicherheit oft in einem Spannungsverhältnis stehen. Indem sie die Grenzen dessen verschieben, wie schnell und flexibel diese Systeme sein können, entstehen unweigerlich neue Schwachstellen. Die Forscher fanden nicht nur einen Bug; sie zeigten, dass die gesamte Strategie, geteilte Systeme mit Softwareprüfungen zu schützen, gegenüber modernen, hochentwickelten Angriffen unzureichend war. Die Lösung erforderte einen Wechsel zu hardwaregestützten Grenzen, was beweist, dass der einzige Weg, Geheimnisse sicher zu halten, manchmal darin besteht, Mauern zu bauen, über die die Software nicht klettern kann. Diese Studie bestätigt, dass Edge Computing zwar unglaubliche Geschwindigkeit und Bequemlichkeit bietet, aber ein höheres Maß an physischer Sicherheit erfordert, um die riesigen Mengen sensibler Daten zu schützen, die jede Sekunde hindurchfließen.

Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?

Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.

Digest testen →