Google: „C/C++ in Firmware durch Rust zu ersetzen, ist einfach“
(theregister.com)- Google hat kürzlich die Firmware für geschützte virtuelle Maschinen im Android Virtualization Framework mit der Sprache Rust neu geschrieben und empfiehlt allen, die mit Firmware arbeiten, dasselbe zu tun
- In dem im Google Security Blog veröffentlichten Beitrag „Deploying Rust in Existing Firmware Codebases“ gehen Android-Ingenieure auf die technischen Details ein, wie sich Legacy-Code in C und C++ durch Rust ersetzen lässt
- „Sie werden sehen, wie einfach es ist, die Sicherheit mit einem direkten Rust-Ersatz zu verbessern, und wir werden auch demonstrieren, wie die Rust-Toolchain mit speziellen Bare-Metal-Zielen umgehen kann“
- Das Wort „einfach“ wird für eine Programmiersprache, von der oft gesagt wird, sie habe eine „steile Lernkurve“, normalerweise nicht verwendet
- Ebenso wenig ist es einfach, C- und C++-Entwickler dazu zu bringen, die Welt durch die Rust-Brille zu sehen
- Einer der Maintainer des Projekts Rust for Linux ist kürzlich zurückgetreten und nannte den Widerstand von Linux-Kernel-Entwicklern als Grund
- Ein Linux-Kernel-Beitragender sagte Anfang dieses Jahres während einer Live-Diskussion auf einer Konferenz sogar: „Man kann uns nicht alle dazu zwingen, Rust zu lernen“
- Dennoch fördert Google weiterhin den Einsatz von Rust
- Firmware verfügt nicht über hochentwickelte Sicherheitsmechanismen, was oft daran liegt, dass sie in speicherunsicheren Sprachen wie C oder C++ geschrieben wird
- Rust bietet eine Möglichkeit, Memory-Safety-Fehler wie Buffer Overflows und Use-after-free zu vermeiden, die in großen Codebasen für einen Großteil kritischer Schwachstellen verantwortlich sind
- „Rust bietet eine speichersichere Alternative zu C und C++ bei ähnlicher Performance und ähnlicher Codegröße“
- „Außerdem unterstützt es Interoperabilität mit C ohne Overhead“
- Unterstützung durch Regierung und Tech-Unternehmen
- Die US-Regierung betont inzwischen mit Unterstützung großer Tech-Unternehmen und der Non-Profit-Initiative memorysafety.org, dass wichtige Open-Source-Projekte und -Komponenten in Rust neu geschrieben werden sollten
- Die Cybersecurity and Infrastructure Security Agency (CISA) empfahl Softwareanbietern im vergangenen Jahr, „die Reduzierung und letztliche Beseitigung von Memory-Safety-Schwachstellen in der Produktlinie zum vorrangigen Unternehmensziel zu machen“
- Google ist von dieser Idee bereits überzeugt und kam zu dem Schluss, dass Rust-Entwickler doppelt so produktiv sind wie C++-Ingenieure
- Googles Einsatz von Rust nimmt weiter zu
„Bei Google bauen wir den Einsatz von Rust aus, unter anderem in Android und Chromium, um Memory-Safety-Schwachstellen zu reduzieren.
Wir arbeiten eng mit dem Rust-Ökosystem zusammen, um die Einführung von Rust zu fördern und Entwicklern die nötigen Ressourcen und Schulungen bereitzustellen.
Diese Arbeit, Rust in Embedded-Systeme und Firmware einzuführen, adressiert einen weiteren wichtigen Teil des Stacks“
1 Kommentare
Ich habe den Artikel mit Interesse gelesen.