
In OS KDE Linux, entwickelt von dem KDE-Team, wurden nach einem internen Mini-Sicherheitsaudit die grundlegenden Komponenten überprüft. Das Projekt, das KDE als sein eigenes in Entwicklung befindliches Betriebssystem positioniert, schreitet weiter in Richtung eines kontrollierteren und vorhersehbaren Modells: weniger unkonventionelle Kernel-Module, weniger Abhängigkeiten von AUR und mehr Benutzeranpassungen dort, wo früher Kernel-Komponenten verwendet wurden.
Die Entwickler erklärten die Änderungen damit, dass im letzten Monat mehrere Sicherheitsprobleme im Upstream-Kernel von Linux entdeckt wurden. Daraufhin führten Adrian Vovk, Hadi Chokr und Nate Graham eine Überprüfung unsicherer und nicht genutzter Software durch, die bereits in KDE Linux enthalten war. Das Ergebnis war eine Reihe von Änderungen, die darauf abzielen, die Systembasis zu vereinfachen und die Anzahl potenziell riskanter Komponenten zu reduzieren.
Wesentliche Änderungen
Wechsel vom Zen-Kernel zurück zum regulären Linux-Kernel. KDE Linux wird den Zen-Kernel nicht mehr als Standard-Kernel verwenden. Laut den Entwicklern brachte dieser Branch keine wesentlichen Vorteile gegenüber den Konfigurationseinstellungen, die das Projekt ohnehin bereits anwendet. Mit anderen Worten, um die Wartung zu vereinfachen, wurde eine der upstream-Version des Kernels nähere gewählt.
Entfernung unsicherer und ungenutzter Kernel-Module. Es wurden Module aus dem System entfernt, die die Entwickler gleichzeitig als unnötig und potenziell riskant erachteten. Dies verringert die Angriffsfläche: Je weniger Code in den Kernelbereich geladen wird, desto weniger Komponenten können potenzielle Schwachstellen darstellen.
Übertragung von NTFS und CDemu auf FUSE-Varianten. Anstelle von Kernel-Modulen für NTFS und CDemu werden jetzt benutzerdefinierte FUSE-Implementierungen verwendet. Dieser Ansatz macht das System konservativer: Die Dateilogik arbeitet außerhalb des Kernels, was bedeutet, dass mögliche Fehler nicht das gleiche Privilegienlevel erhalten wie der Code im Kernel-Space.
Entfernung externer Module OpenRazer und APFS. Die vorinstallierten Out-of-Tree-Module OpenRazer und APFS wurden aus dem Abbild entfernt. Das Projektteam ist der Ansicht, dass solche Komponenten in Zukunft die Durchführung der Secure Boot-Prüfung behindern könnten. Daher strebt KDE Linux an, anstelle der Bereitstellung von Drittanbieter-Modulen auf Upstream-Lösungen umzusteigen. Für APFS bleibt jedoch die Möglichkeit, über den FUSE-Treiber zu arbeiten, obwohl die Entwickler die Unsicherheit über dessen zukünftige Entwicklung hervorheben.
Entfernung überflüssiger Pakete aus dem Basis-Abbild. Folgende Komponenten wurden aus der Lieferung ausgeschlossen: acpi_call, busybox, cryfs, encfs, hplip, v4l2loopback-utils und vpl-gpu-rt. Die Begründung ist einfach: Diese Komponenten werden entweder nicht verwendet, sind nicht notwendig im Basissystem oder können durch benutzerdefinierte Lösungen ersetzt werden.
Verzicht auf fuse2. KDE Linux entfernt fuse2, da es als nicht unterstützt und unsicher gilt. Ein Nebeneffekt ist, dass einige ältere AppImage-Anwendungen möglicherweise nicht mehr funktionieren. Die Entwickler schlagen vor, dies als Problem der Anwendungen selbst und ihrer Paketierer zu betrachten: Sie sollten auf fuse3 umsteigen, insbesondere da andere Betriebssysteme ebenfalls auf fuse2 verzichtet haben.
Vollständiger Verzicht auf die Nutzung von AUR. Durch die Entfernung von fenrir konnte das Projekt die Abhängigkeit vom Arch User Repository vollständig beseitigen. Zuvor war das AUR bereits eine Quelle für infrastrukturelle Instabilität; zudem harmonierte diese Abhängigkeit schlecht mit dem Ziel von KDE Linux, weniger an die spezifische Verpackung von Arch gebunden zu sein.
Parallel zur 'Bereinigung' haben die Entwickler die Build-Infrastruktur verbessert: KDE Linux kompiliert jetzt KDE-Software direkt über kde-builder, anstatt Arch-Pakete zu generieren und sie über mkosi zu installieren. Dies sollte besser mit der Art und Weise übereinstimmen, wie die KDE-Entwickler ihre Software selbst zusammenstellen, die mögliche Änderung der Quellen für Nicht-KDE-Komponenten vereinfachen und die Builds durch effizienteres Caching beschleunigen.
Ein weiteres Ziel ist die automatisierte Tests. KDE Linux verfügt bereits über eine grundlegende Überprüfung, ob das Image bis zum Desktop bootet, aber nun arbeitet das Projekt an einem System auf Basis von OpenQA, um fehlerhafte Builds im Voraus zu erkennen und schrittweise den Prüfungsumfang zu erweitern. Außerdem wurde ein Test hinzugefügt, der sicherstellen soll, dass keine Bilder mit inkorrekten Dateicapabilities veröffentlicht werden.
Die Änderungen sind ein Versuch, KDE Linux besser für die Rolle als Referenz- und sichere Plattform zu machen: weniger AUR, weniger externe Kernel-Module, weniger nicht unterstützte Komponenten und mehr Kontrolle darüber, was in das Basis-Image aufgenommen wird.
Quelle: linux.org.ru
