Symbolbild
© paluno, KI generiert

paluno-Entwicklung

Wenn der Browser-Speicher zur Bento-Box wird

Google Earth, Zoom, Twitch.tv oder Photoshop – viele leistungsstarke Anwendungen laufen dank des WebAssembly-Standards heute ohne Installation direkt im Browser. Doch einige dieser Web-Apps haben bedenkliche Sicherheitslücken. Forschende von paluno – The Ruhr Institute for Software Technology der Universität Duisburg-Essen haben eine Lösung entwickelt, um fertige Anwendungen durch eine automatisierte Neuorganisation ihres Speichers abzusichern.

Seit 2019 ist WebAssembly (kurz Wasm) ein stabiler Webstandard, der entwickelt wurde, um komplexe Desktop-Anwendungen im Browser lauffähig zu machen. Damit dies funktioniert, wird das ursprüngliche Programm, häufig in C oder C++ geschrieben, in das von jedem gängigen Browser lesbare Wasm-Binärformat übersetzt. Die Sache hat allerdings einen Haken: Enthält der Code Schwachstellen, werden auch diese beim Übersetzen in das Wasm-Modul übertragen. In C / C++ sind dies typischerweise Speicherzugriffsfehler wie Buffer Overflows. Hacker können solche Schwachstellen für sogenannte Cross-Site-Scripting-Angriffe (XSS) ausnutzen und Schadcode einschleusen, den Nutzerinnen und Nutzer dann unwissentlich in ihrem Browser ausführen.

Bestehende Ansätze zur Absicherung von Wasm-Modulen sind kaum praktikabel: Viele setzen voraus, dass der Quellcode der Anwendung vorliegt, andere benötigen spezielle Hardware oder angepasste Browser-Umgebungen. Nicht so die neue Lösung der paluno-Forschenden Oussama Draissi und Prof. Lucas Davi. Sie nutzen die Multi-Memory-Funktion von Wasm für einen einmaligen, vollautomatisierten Speicher-Umbau fertiger Module. Die Neuorganisation erinnert an eine japanische Bento-Box, in der Speisen durch einzelne Fächer sauber voneinander getrennt werden. Der Vorteil: Durch die Isolation der Speicherbereiche wird verhindert, dass z. B. HTML-Tags in dem einem Speicherbereich durch einen Buffer Overflow in einem anderen Speicherbereich überschrieben werden können. Für die Nutzende hat der Umbau der Module keine Nachteile. Sie spüren weder längere Ladezeiten noch müssen sie einen merklich größeren Speicherbedarf in Kauf nehmen.

Die Wirksamkeit des Bento-Ansatzes stellten die Forschenden anhand bekannter Sicherheitslücken auf die Probe, darunter die berüchtigte Heartbleed-Lücke. „In umfangreichen Tests konnten wir zeigen, dass unsere Lösung reale Angriffe auf verbreitete Anwendungen erfolgreich abgewehrt hätte“, erläutert Oussama Draissi.

Publikation: https://doi.org/10.1145/3774904.3792439

Weitere Informationen:
Prof. Dr. Lucas Davi, Universität Duisburg-Essen, paluno – The Ruhr Institute for Software Technology, lucas.davi@uni-due.de

Zurück