Zum Hauptinhalt Zur Navigation

Security: Microsoft baut COM-Bibliothek in Rust

Die COM-Schnittstelle ist eines der ältesten Bestandteile von Windows. Als Teil der Suche nach sicheren Sprachen gibt es nun eine quelloffene COM-Bibliothek von Microsoft , die in Rust geschrieben wurde.
/ Sebastian Grüner
Kommentare News folgen (öffnet im neuen Fenster)
Microsoft untersucht die Nutzung von Rust als sichere Alternative zu C und C++. (Bild: Pixabay)
Microsoft untersucht die Nutzung von Rust als sichere Alternative zu C und C++. Bild: Pixabay

Die Binärschnittstelle Component Object Model (COM) von Microsoft ist bereits mehr als 25 Jahre alt und eine der wohl wichtigsten Grundlagentechniken in Windows. Als Teil der Suche von Microsofts Security Response Center (MSRC) nach sicheren Systemprogrammiersprachen als Alternative zu C und C++ ist nun eine COM-Bibliothek in Rust entstanden.

Die Bibliothek ist vom Entwickler Hadrian Wei Heng Lim während eines Praktikums beim MSRC entstanden und steht nun als Open Source auf Github(öffnet im neuen Fenster) zur Verfügung. In dem Blogeintrag zur Ankündigung(öffnet im neuen Fenster) wird darauf verwiesen, dass es bereits einige ähnliche Rust-Bibliotheken gibt, die das Design des nun bei Microsoft entstandenen Codes stark beeinflusst haben.

Microsoft hält Rust für "die beste Wahl" , um Programme auf Systemebene speichersicher zu schreiben, wie das Unternehmen zuvor schon gesagt hatte. Allerdings fehle den bestehenden Werkzeugen von Microsoft oft eine Interoperabilität von C++ zu Rust, so dass eine Nutzung von Rust in dem Unternehmen schwierig werde. Die nun verfügbare COM-Bibliothek könne helfen, dieses Problem zu lösen und sei ein "notwendiger Schritt" für das Ziel der Interoperabilität. Ebenso könnten externe COM-Entwickler damit eben auf Rust setzen und sicherere COM-Komponenten erstellen.

Ganz so einfach, wie dies klingt, ist das Absichern von COM jedoch nicht, worauf auch der Blogeintrag hinweist. So müsse sehr viel Code verwendet werden, der explizit als "unsafe" markiert wird. Immerhin handele es sich bei COM um ein Protokoll und nicht eine API, so dass es deutlich erschwert werde, sichere Wrapper dafür zu erstellen. Doch könne eben darauf aufbauend sicherer Code in Rust geschrieben werden. Ebenso zwingen die unsicheren Rust-Bestandteile die Entwickler zu einer stärkeren Überprüfung des Codes.


Relevante Themen