y0o.de · GNU/Linux Nachrichten u.Ä.

🔒
❌ Über y0o.de
Es gibt neue verfügbare Artikel. Klicken Sie, um die Seite zu aktualisieren.
Ältere BeiträgeHaupt-Feeds

Grub 2.06 unterstützt LUKS2-Verschlüsselung

10. Juni 2021 um 10:32

Ursprünglich sollte die neue Version von Grub schon im letzten Jahr erscheinen, dafür bietet der Bootloader trotz des kleinen Versionssprungs mehrere interessante Neuerungen. Unter anderem schützt Grub 2.06 vor den zwei BootHole-Attacken und versteht sich mit LUKS2 verschlüsselten Partitionen.

Neu ist auch der Support für SBAT und die Xen Security Module (XSM/FLASK). Standardmäßig deaktiviert ist “os-prober”, das die installierten Betriebssysteme erkennt und automatisch passende Menüeinträge generiert.

Darüber hinaus haben die Grub-Entwickler zahlreiche von einzelnen Distributoren vorgenommene Änderungen zurückportiert. Abschließend unterstützt Grub 2.06 die Compiler GCC und Clang/LLVM jeweils in der Version 10. Der Quellcode von Grub 2.06 ist auf seiner Website verfügbar.

Der Beitrag Grub 2.06 unterstützt LUKS2-Verschlüsselung erschien zuerst auf Linux-Magazin.

Debian 10.5 schließt Sicherheitslücken

06. August 2020 um 11:08

Mit dem fünften Point-Release von Debian 10 alias Buster schließen die Entwickler unter anderem die jüngst entdeckten Grub2-Lücken im Zusammenhang mit BootHole. Debian 10.5 bringt aber auch viele Bugfixes mit.

Für Debian-Anwender ist das Update auf 10.5 schon wegen den durch BootHole in Grub2 und dem Kernel lauernden Gefahren Pflicht. Wie berichtet ermöglicht es BootHole Angreifern, die Rootzugang zum Bootloader eines Systems haben, die Secure-Boot-Mechanismen von Grub2 zu überwinden und Bootkits oder bösartige Bootloader auf dem Rechner einschleusen, die das Betriebssystem im folgenden nicht entdeckt.

Debian 10.5 beseitigt daneben rund 100 Fehler und weitere Sicherheitsprobleme. Der Linux-Kernel trägt die Versionsnummer 4.19.0-10 und es sind neue Versionen für einige Software-Pakete dabei. Unter anderem erhalten Clamav, MariaDB und auch die Nvidia-Treiber ein Update.

Wie gewohnt lässt das Debian-Team wissen, dass Nutzer, die regelmäßig Updates über “security.debian.org” machen, keine großen Downloads tätigen müssen.

Der Beitrag Debian 10.5 schließt Sicherheitslücken erschien zuerst auf Linux-Magazin.

BootHole bricht Secure Boot

30. Juli 2020 um 10:48

Anders als der Name BootHole suggeriert, stecken im Linux-Boot-Manager Grub2, aber auch im Linux-Kernel, gleich mehrere Schwachstellen. Die erlauben es, Secure Boot unter Linux zu umgehen und potenziell bösartige Bootloader oder Bootkits zu laden.

Angreifer, die Rootzugang zum Bootloader eines Systems haben, können die Secure-Boot-Mechanismen von Grub2 überwinden und Bootkits oder bösartige Bootloader auf dem Rechner einschleusen, die das Betriebssystem im folgenden nicht entdeckt. Für den Cloud- und Rechenzentrumsbereich sei die Lücke laut Suse weniger gefährlich. Die Lücken wirken sich vor allem in Szenarios aus, in denen Linux-Rechner im öffentlichen Raum zum Einsatz kommen, etwa in Bibliotheken, Schulen, Universitäten, aber auch an Arbeitsplätzen.

Neben Linux-Systemen, die Grub2 verwenden (und das sind fast alle), betrifft BootHole auch indirekt Microsoft, weil das Unternehmen als UEFI Certificate Authority dient. Die Microsoft-CA stellt auch für mehrere Linux-Distributionen die Zertifikate aus, die sicherstellen, dass der von der Hardware geladene Code vertrauenswürdig ist. Dazu prüft und signiert Microsoft den Code von Drittanbietern wie Canonical oder Red Hat, der meist Shim genannt wird.

Nicht nur eine Lücke

Im Bootloader Grub2 hatte Eclypsium zunächst eine schwere Sicherheitslücke entdeckt, die beim Einlesen und Parsen der Grub-Konfiguration (“grub.cfg”) auftritt. Sie erlaubt es, einen Pufferüberlauf auszulösen und so den üblichen Secure-Boot-Verifizierungsprozess zu umgehen. Laut Canonical wurde die Lücke bereits im April 2020 im Responsible-Disclosure-Verfahren veröffentlicht, das den Distributionen Zeit gibt, sich mit Gegenmaßnahmen zu beschäftigen, bevor die Entdecker an die Öffentlichkeit gehen.

Die Entwickler der verschiedenen Linux-Distributionen haben bei dieser Gelegenheit noch einmal die Grub2-Sicherheit generell genauer unter die Lupe genommen und prompt diverse weitere Lücken in Grub2 entdeckt. Und nicht nur das: Auch der Linux-Kernel selbst erlaubt es in bestimmten Fällen, Secure Boot zu umgehen. Sämtliche Probleme listet unter anderem das von Debian veröffentlichte DSA-4735 auf. Dabei ist die Bedrohung nicht theoretisch. Eclypsium nennt mehrere bösartige Bootloader, die bereits im Umlauf sind und zum Teil von Hackergruppen im staatlichen Auftrag stammen. Einige davon sind Ransomware.

Tief verwurzelt

Ein zentrales Problem beim Reparieren dieser Lücken bestehe laut den Debian-Entwicklern darin, dass der Bootmanager ziemlich tief im System verankert ist. Es genügt nicht, neue Versionen des Bootloaders zu signieren und auszurollen. Angreifer könnten einfach weiterhin lokal ältere Versionen des Bootloaders installieren und so die Lücke wieder in Kraft setzen. Die alten Versionen gilt es also auch zu sperren. Dafür sieht UEFI Sperrlisten vor.

Das Aktualisieren solcher UEFI Revocation Lists ist allerdings heikel, weil es bei einigen Secure-Boot-Nutzern Probleme verursachen kann: Wer die Sperrliste installiert, aber weiterhin die alten Grub2-Binaries einsetzt, könnte vor einem nicht-bootbaren System sitzen. Nicht alle Nutzer bekommen es hin, Secure Boot über das UEFI-BIOS zu deaktivieren, die UEFI-Updates einzuspielen und dann das System mit Secure Boot wieder neu zu booten oder alternativ den Rescue-Modus zu verwenden. Und rollt ein unerfahrener Admin ohne zu testen gleich viele Updates aus, kann er eine ganze Armada von Systemen temporär unbenutzbar machen. Das dürfte vor allem auch den IoT-Bereich treffen, in dem Systeme weltweit ohne direkten Zugriff vor sich hin werkeln.

Dennoch will Microsoft ältere und unsichere Binaries auf eine UEFI-Revocation-Liste setzen, so dass sich diese nicht mehr verwenden lassen. Wann das aber passiert, ist laut Debian-Projekt noch unklar. Die Hardwarehersteller werden diese Listen künftig in ihre neue Firmware für neue Geräte integrieren. Linux-Distributionen liefern die Listen vermutlich über Updates aus. Die betreffen aber oft nur neuere Versionen einer Distribution. Der Grund: Debian 9 hat Secure Boot zum Beispiel noch nicht unterstützt, braucht also auch keine Updates (ist damit aber auch per se anfällig für bösartigen Bootcode).

Patches

Wie die Patches und die Strategien für die einzelnen Distributionen aussehen, unterscheidet sich je nach Anbieter. Positiv ist, dass die großen Linux-Anbieter sich offenbar gut koordinieren und ihre jeweiligen Umgehungsstrategien nahezu zeitgleich veröffentlicht haben. Hier geht es zu den jeweiligen Fehlerbeschreibungen von Debian, Ubuntu, Suse und Red Hat. Auch Microsoft liefert liefert als Aussteller der Zertifikate eine Beschreibung, um die Revocation-Liste manuell zu reparieren. Gewöhnliche Linux-Anwender sollten aber einfach die Updates für ihre Systeme einspielen.

Der Beitrag BootHole bricht Secure Boot erschien zuerst auf Linux-Magazin.

Snapshot 08/2020: Bootbaren USB-Stick erstellen

09. Juli 2020 um 14:15

Ein Go-Programm schreibt eine heruntergeladene ISO-Datei auf einen bootbaren USB-Stick. Damit er nicht versehentlich die Festplatte überschreibt, spendiert ihm Mike Schilli eine Bedienoberfläche und Sicherheitsprüfungen.

Im Video erklärt Mike Schilli sein Programm.

Der Beitrag Snapshot 08/2020: Bootbaren USB-Stick erstellen erschien zuerst auf Linux-Magazin.

Systemd 244 mit einigen Änderungen

02. Dezember 2019 um 10:56

Systemd 244 beschränkt unter anderem Prozesse über Cgroupsv2-Controller auf bestimmte CPUs und Memory-Nodes und holt mehr Logs im frühen Bootprozess ab.

Über „cpuset.cpus“ und „cpuset.mems“ weist der Admin Prozessen bestimmte CPUs oder NUMA-Nodes zu, um die Systemressourcen effizienter zu verwenden. Dafür greift er auf die genannten Cgroups-v2-Schnittstellen zurück. Nun reflektieren auch neue Parameter für Systemds Ressourcenkontrolle diese Änderungen, konkret heißen diese „AllowedCPUs=“ sowie „AllowedMemoryNodes=“.

Daneben deaktiviert Systemd 244 die Ratelimits von „printk“ im frühen Bootstadium. Dies soll es erlauben, früh im Bootprozess mehr Logging-Daten zu sammeln. Eigentlich wurde die „printk_ratelimit()“-Funktion eingeführt, um die schiere Menge an Logging-Nachrichten zu begrenzen. Wer dieses Verhalten daher nicht mag, kann das Setting über einen Kernel-Bootparameter überschreiben.

Weiterhin lässt sich „systemctl clean“ nun für Socket-, Mount- und Swap-Units verwenden. Ebenfalls für Units gibt es die Option, ein Toplevel-Verzeichnis mit dem passenden Unit-Typen anzulegen (etwa „service.d“), das dann Konfigurationen für sämtliche darin enthaltenen Units sammelt. Eine neue „@pkey“ System-Call-Gruppe macht es einfacher, Speicherschutz-Systemaufrufe für Container und Dienste auf eine Whitelist zu packen.

Udev-Updates

Auch an Udev haben die Entwickler geschraubt. Das Programm „fido_id“ identifiziert Fidos CTAP1- und CTAP2-Security-Tokens und gibt passende Umgebungsvariablen aus. Der Mechanismus ersetzt eine bisherige Whitelist, auf der alle bekannten und zuvor verwendeten Security Token standen. Zudem öffnet Udev nun CDROMs in einem nicht-exklusiven Modus. Das behebt einerseits Probleme mit Programmen, die keinen Zugriff auf das CDROM erhielten, schafft aber womöglich neue Probleme, wenn Programme eben diesen exklusiven Zugriff benötigen. Nicht zuletzt erzeugt Systemd 244 Autosuspend-Udev-Regeln für Geräte, die auf einer zuvor importierten Whitelist vom Chromium-OS-Projekt stehen. Das soll den Energieverbrauch zahlreicher Geräte senken.

Die Komponenten „systemd-networkd“ erzeugt Systemd nun keine Standardrouten mehr für IPv4 Link-local-Adressen, es sei denn, der Admin fordert dies über „DefaultRouteOnDevice=yes“ explizit ein. Die automatisch erzeugten Routen hätten für Verwirrung gesorgt und in einigen Fällen das Routing gestört. Auch wenn Ipv6 Link-Local-Routing deaktiviert ist, richtet „systemd-networkd“ keine Adresse mehr ein. Dafür kündigt die Komponente auf Wunsch für IPv6 zusätzliche Routen an und verwendet dafür den Bereich „[IPv6RoutePrefix]“ und die Optionen“Route=“ und „LifetimeSec=“.

Der Aufruf „journalctl –update-catalog“ produziert neuerdings deterministische Ergebnisse, was den Bau von reproduzierbaren Images erleichtern soll. Die Bootloader-Spezifikation dokumentiert ein neues „devicetree-overlay“-Setting. „systemd-resolved“ validiert IP-Adressen auf Zertifikaten, wenn Gnu TLS zum Einsatz kommt. Nicht zuletzt bringen Service Units die Option „ProtectKernelLogs=“ mit. Die sollen in bestimmten Einsatzszenarien dafür sorgen, dass die „syslog()“ Systemaufrufe keinen Zugriff auf „/proc/kmsg“, „/dev/kmsg“ und die „CAP_SYSLOG“ Capability erhalten. Die so beschränkten Services erhalten also weder schreibend noch lesend Zugriff auf die Kernel Log Buffer.

Das ist nur eine Auswahl der Änderungen. Die komplette Liste und zusätzliche Informationen zu System 244 warten in den Release Notes auf der Mailingliste.

Der Beitrag Systemd 244 mit einigen Änderungen erschien zuerst auf Linux-Magazin.

❌