Virtual Machine: Microsoft veröffentlicht Hyperlight Wasm

Das experimentelle Projekt erlaubt das AusfĂĽhren von WebAssembly-Modulen innerhalb einer VM-basierten Sandbox. Es legt den Fokus auf Performance und Sicherheit.

vorlesen Druckansicht 19 Kommentare lesen

(Bild: rvlsoft/Shutterstock.com)

Lesezeit: 2 Min.
close notice

This article is also available in English. It was translated with technical assistance and editorially reviewed before publication.

Microsoft hat angekĂĽndigt, an Hyperlight Wasm zu arbeiten. Das Projekt ist bereits auf GitHub zu finden, hat jedoch noch experimentellen Status. Damit lassen sich WebAssembly-(Wasm)-Module innerhalb einer Hyperlight-Micro-VM (Virtual Machine) ausfĂĽhren, was sowohl eine hohe Performance als auch Sicherheit bringen soll.

Hyperlight wurde von Microsoft Azure Core Upstream entwickelt und im November 2024 vorgestellt. Dabei handelt es sich um eine quelloffene Rust-Bibliothek, die Microsoft inzwischen als Sandbox-Projekt an die Cloud Native Computing Foundation (CNCF) übergeben hat. Sie dient dem Erstellen von Micro Virtual Machines und ist darauf spezialisiert, nicht vertrauenswürdigen Code auf sichere Weise auszuführen – mit geringer Latenz und minimalem Overhead. Diese Micro-VMs funktionieren ohne Kernel oder Betriebssystem, sondern verwenden Guests, die mittels Hyperlight Guest Library für Hyperlight erstellt werden. Guests sind Programme, die einen spezialisierten Kernel mit einer Anwendungs-Runtime in ein einziges Programm kombinieren. Weitere Ausführungen hierzu finden sich im Ankündigungsbeitrag.

Auf Hyperlight aufbauend arbeitet Microsoft nun an der Entwicklung von Hyperlight Wasm, einem Rust-Library-Crate. Hyperlight Wasm soll das Ausführen von Wasm-Komponenten-Workloads als Hyperlight-Guest in vielen Programmiersprachen ermöglichen.

Wie das Entwicklungsteam ausführt, haben traditionelle VMs den Nachteil, dass die Kompatibilität zugunsten der Performance eingeschränkt sein kann. Kompatibilitätsschwierigkeiten können sowohl das Betriebssystem als auch den System-Interface-Layer oder die Programmiersprache- und bibliothek betreffen.

Videos by heise

Hier setzt der WebAssembly-Ansatz an. Wie Microsoft ausführt, sind mit WebAssembly System Interface (WASI) und dem WebAssembly Component Model leichtgewichtige Ausführungsumgebungen möglich, in denen Programme laufen können, die in nahezu jeder Programmiersprache geschrieben wurden. Hyperlight Wasm macht sich das zunutze und erlaubt das Implementieren eines kleinen Sets an high-level, performanten Abstraktionen in einer nahezu beliebigen Ausführungsumgebung und bietet dabei eine breit gefächerte Kompatibilität.

Neben der Performance soll auch die Security von Hyperlight Wasm profitieren. Hyperlight Wasm verwendet die Wasmtime-Runtime, als Rust-no_std-Modul zu einem Hyperlight-Guest kompiliert. Wasmtime soll sich durch strenge Isolationsgrenzen fĂĽr Wasm-Workloads aufgrund einer Software-definierten Runtime-Sandbox hervorheben. Potenzielle Angreifer mĂĽssten daher zwei Sicherheits-Layer ĂĽberwinden: die Wasm-Sandbox und die Virtual Machine.

Hyperlight Wasm ist auf GitHub verfügbar. Weitere Hintergrundinformationen und zukünftige Pläne für Hyperlight Wasm teilt Microsoft in seinem Open-Source-Blog mit.

(mai)