Mozilla ergänzt Firefox um erste Rust-Komponente

Mit Firefox 48 für Windows und 32-Bit-Linux führt es einen in der speichersicheren Programmiersprache geschriebenen MP4 Track Metadata Parser ein, der die aktuelle C++-Version ersetzt. Laut internen Messungen liefern beide eine identische Leistung. Die Rust-Komponenten sollen den Browser sicherer machen.

Mozilla hat damit begonnen, den Großteil des C++-Codes seines Browsers Firefox durch in der sichereren Alternativsprache Rust geschriebene Komponenten zu ersetzen. Der für 2. August angekündigte Firefox 48 wird einen in Rust verfassten MP4 Track Metadata Parser enthalten, der damit erstmals unter Windows und 32-Bit-Editionen von Linux verfügbar wird. Für OS X und 64-Bit-Linux liegt der Parser schon seit Firefox 45 vor.

Firefox (Bild: Mozilla)„Medienformate wurden bekanntermaßen schon dazu missbraucht, fiese Sicherheitslücken in Dekodern auszunutzen, die aus Speicherverwaltungsfehlern im Implementierungscode von Webbrowsern resultieren“, schreibt Dave Hermann, leitender Forscher von Mozilla Research und Director of Strategy, in einem Blogbeitrag. „Das macht eine speichersichere Programmiersprache wie Rust zu einer zwingenden Ergänzung von Mozillas Werkzeugsammlung für den Schutz vor potenziell gefährlichen Medieninhalten.“

Weiter führt Hermann aus: „Unsere ersten Messungen zeigen, dass die Rust-Komponente sehr gut funktioniert und im Vergleich zur originalen C++-Komponente, die sie ersetzt, identische Ergebnisse liefert, aber jetzt in einer speichersicheren Programmiersprache implementiert.“

Das bisher größte Projekt, bei dem Rust zum Einsatz kommt, ist die Web-Rendering-Engine Servo, die seit Anfang Juli in einer ersten Vorschau vorliegt. Servo ist der Nachfolger von Firefox‘ Browser-Engine Gecko, soll diese aber nicht sofort ersetzen, sondern zunächst ergänzen. Eine bedeutende Verbesserung ist beispielsweise die automatische Speicherverwaltung mit eigenem Typsystem. Sie soll Speicherzugriffsfehler und Pufferüberläufe verhindern, die für Angriffe missbraucht werden können. Außerdem soll Servo die parallele Rechenkraft aktueller Prozessoren besser nutzen. Im Rahmen seines Projekts Oxidation plant Mozilla zudem, Rust auch für Firefox‘ URL Parser und WebM Demuxer zu verwenden sowie Teile von Servos CSS-Code in Gecke zu integrieren.

ANZEIGE

Zuverlässiger Schutz vor Ransomware

Ransomware heißt das aktuelle Schreckgespenst in der IT-Welt. Ob Privatanwender, Unternehmen oder öffentliche Institution: Praktisch jeder Internetnutzer hat Angst davor, dass er plötzlich nicht mehr auf seine Daten zugreifen kann, da sie verschlüsselt sind. Dabei bieten aktuelle Sicherheitslösungen wie Bitdefender 2017 zuverlässig Schutz vor dieser Erpressungssoftware.

Neben dem in Rust geschriebenen Parser wird Firefox 48 auch die Multi-Prozess-Architektur Electrolysis (E10S) mitbringen. Damit wird künftig die Browser-Benutzeroberfläche in einem von den Webinhalten, Plug-ins und Medieninhalten getrennten Prozess ausgeführt.

Dies soll sich positiv auf die Leistung und Sicherheit von Firefox auswirken, sorgt aber zugleich dafür, dass zahlreiche Erweiterungen nicht mehr funktionieren werden. Um die daraus entstehenden Probleme relativ gering zu halten, plant Mozilla eine schrittweise Einführung. „Sollten Probleme auftauchen, können wir die Einführung verlangsamen oder pausieren oder E10S sogar bei denjenigen deaktivieren, die es bereits erhalten haben“, erklärte Entwickler Asa Dotzler vergangenen Monat.

[mit Material von Chris Duckett, ZDNet.com]

Tipp: Wie gut kennen Sie sich mit Browsern aus? Testen Sie Ihr Wissen – mit 15 Fragen auf ITespresso.de.

Themenseiten: Browser, Firefox, Mozilla, Webentwicklung

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Björn Greif
Autor: Björn Greif
Redakteur ZDNet.de
Björn Greif
Whitepaper

ZDNet für mobile Geräte
ZDNet-App für Android herunterladen Lesen Sie ZDNet-Artikel in Google Currents ZDNet-App für iOS

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Mozilla ergänzt Firefox um erste Rust-Komponente

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *