Cross-Plattform-Framework Electron 20: Mehr Sicherheit mit V8 Sandboxed Pointers

Windows-Nutzer können Electron-Anwendungen in einem neuen Dark Mode erscheinen lassen. Als Breaking Change gilt das Aktivieren von V8 Sandboxed Pointers.

Lesezeit: 2 Min.
In Pocket speichern
vorlesen Druckansicht Kommentare lesen 4 Beiträge

(Bild: Rinrada_Tan/Shutterstock.com)

Von
  • Maika Möbus

Das Open-Source-Framework Electron liegt in Version 20 vor. Das planmäßig erschienene Release bietet optische Neuerungen für Windows-Nutzerinnen und -Nutzer und aktualisiert Stack Node.js, Chromium und die JavaScript-Engine V8. Als abwärtsinkompatible Neuerung setzt Electron nun V8 Sandboxed Pointers ein. Daneben erreicht Electron 17.x mit dem Erscheinen von Version 20 ihr End-of-Support-Datum.

Im Stack setzt Electron 20 auf Chromium 104, die JavaScript-Engine V8 in Version 10.4 und die JavaScript-Runtime Node.js 16.5. Mit der zwischenzeitlich erschienenen Browserversion Chromium 103 führte der Browser eine Neuerung ein, die auch Electron übernimmt: das Aktivieren von V8 Sandboxed Pointers. Die V8 Sandbox oder V8 Memory Cage verfolgt das Konzept, bestimmte Angriffe abzuwehren, indem keine Pointer im V8 Heap gespeichert werden.

Dieser Schritt soll sich positiv auf Electrons Sicherheit, Performance und Speicherverbrauch auswirken. Er führt allerdings dazu, dass auf externen, auch als off-heap bezeichneten Speicher zeigende ArrayBuffer nicht mehr zulässig sind, was einen Breaking Change darstellt. Native Module, die auf diese Funktion in V8 setzen, müssen Entwicklerinnen und Entwickler daher einem Refactoring unterziehen, um sie in Electron 20 und höher nutzen zu können. Der Breaking Change ist in einem Electron-Blogeintrag detailliert beschrieben.

Zu den weiteren Breaking Changes zählt das standardmäßige Laufen von Renderern in einer Sandbox, außer wenn nodeIntegration: true oder sandbox: false festgelegt sind.

Electron 20 führt unter Windows einen neuen, als immersiv bezeichneten Dark Mode ein. Er verwendet die offizielle Windows-11-API sowie ein undokumentiertes Flag unter Windows 10 in Versionen ab 20H1. Damit können Electron-Anwendungen basierend auf den Systemeinstellungen die Statusleiste dunkel erscheinen lassen. Auch kann durch das Hinzufügen eines Panel-ähnlichen Verhaltens das Electron-Modul BrowserWindow nun unter Windows über anderen Anwendungen schweben, wenn diese im Vollbildmodus laufen.

Alle weiteren Informationen zum neuen Release sind dem Electron-Blog zu entnehmen.

(mai)