Modern technology gives us many things.

Linux 5.11: Support für Intel SGX, neue Treiber und kleinere Verbesserungen

0 31

Das erste Linux-Kernel-Update in diesem Jahr zeichnet sich vor allem durch neue Treiber aus. Als Feature kommen Intels Software Guard Extensions (SGX) hinzu.


    Linux 5.11: Support für Intel SGX, neue Treiber und kleinere Verbesserungen

(Bild: Wikimedia Commons / W. Bulach / CC BY-SA 4.0)

Von

  • Oliver Müller

Inhaltsverzeichnis

  1. Linux 5.11: Support für Intel SGX, neue Treiber und kleinere Verbesserungen
    • SGX eingebaut
    • KASAN erweitert
    • Architekturelle Erweiterungen
    • Neuerungen bei Dateisystemen
  2. Grafik und Gaming
  3. Itanium: Sterben auf Raten

Auf einer Seite lesen

Der erste neue Kernel in diesem Jahr ist im Großen und Ganzen ein Standard-Release: Neue Treiber wurden eingeführt und bestehende Features ausgeweitet. Neu in Linux 5.11 ist die Unterstützung für Intels Sicherheitsfunktion Software Guard Extensions (SGX).

Wir fassen in diesem Artikel die wichtigsten Neuerungen zusammen und werfen außerdem einen Blick auf rege Community-Diskussionen, die sich im Zuge des vorangegangenen LTS-Releases 5.10 entsponnen haben. Eine vollständige Übersicht über alle Änderungen liefert das Changelog zu Linux 5.11.

Nach nunmehr fünf Jahren Entwicklungszeit und über 40 Reviews sind Intels Software Guard Extensions (SGX) im Linux-Kernel angekommen. Mittels SGX lassen sich kryptographisch abgeschottete Bereiche, sogenannte Enklaven, erstellen. Der Zugriff auf die Speicherbereiche dieser Enklaven ist aus dem Rest des Systems und auch aus anderen Enklaven heraus nicht möglich – dies ist nur Code gestattet, der innerhalb der Enklave läuft. Der Aufruf von Programmcode in den Enklaven von außen darf ausschließlich in kontrollierter Form erfolgen. Anwendungsentwicklern soll SGX die Möglichkeit bieten, ihre Software und insbesondere sensible Daten selbst dann vor unbefugten Zugriffen und Manipulationen zu schützen, wenn das Hostsystem kompromittiert wurde.

Diskussionen rund um die Sicherheit von SGX und die Ansätze zur Umsetzung im Linux-Kernel verzögerten die Integration. Nachvollziehbarerweise, wenn man bedenkt, dass die Entdecker von Meltdown und Spectre Anfang 2019 in einer wissenschaftlichen Veröffentlichung erläutert hatten, wie sich SGX-Enklaven mittels der Angriffstechniken "knacken" ließen. Zwischenzeitlich hat Intel jedoch bei der Sicherheitsfunktion nachgebessert, so dass SGX unter Linux hoffentlich unbeeinträchtigt zur Sicherheit beiträgt.

Der Kernel Address Sanitizer (KASAN) ist eine ausgefeilte Technologie zum frühzeitigen und dynamischen Aufspüren von fehlerhaften Speicherzugriffen des Kernels. Im Zusammenspiel mit der Gnu Compiler Collection (GCC) zum Instrumentalisieren von Speicherzugriffen und "Shadow-Memory" zum Tracking von legitimen Speicherbereichen lassen sich Bugs einfacher aufspüren. Da KASAN bereits beim Compile-Vorgang ansetzt, ist die Technik deutlich schneller als reine Runtime-Ansätze wie beispielsweise kmemcheck.

KASAN wurde ursprünglich für x86_64 eingeführt und ist heute auf einigen, aber nicht auf allen Architekturen verfügbar. Mit Linux 5.11 ist KASAN jetzt auch für 32-Bit-ARM implementiert. Eine Verbesserung erfährt die Technologie zudem auf 64-Bit-ARM. Dort kommt statt des Software-Taggings und Shadow-Memory jetzt die "Memory Tagging Extension" fürs Tracking zum Einsatz. Statt eine Karte der legitimen Speicherbereiche zu zeichnen, nutzt KASAN auf ARM64 die oberen nicht genutzten Bits der 64-Bit-Speicheradresse, um legitimen Speicher zu markieren.

Auf ARM64-Systemen erweitert Linux 5.11 die Zugriffsmöglichkeiten auf die Memory Type Extension. Die oberen nicht genutzten Bits lassen sich nun auch in Signal-Handlern nutzen, um so beispielsweise auf die Markierungen von Zeigern zuzugreifen. sigaction() erhält hierfür die Option SA_EXPOSE_TAGBITS.

Der Zugriff aus dem Userspace auf MSRs (model-specific registers) auf x86-Systemen wurde weiter reduziert. So ist jetzt der schreibende Zugriff auf MSR_IA32_ENERGY_PERF_BIAS nicht mehr erlaubt. Stattdessen sollen Tools geschaffen werden, die den Zugriff auf die MSRs zentralisieren und – so die Hoffnung – in der Zukunft bessere Lösungen gefunden werden. Ein Dokument auf git.kernel.org bietet einen Überblick über den aktuellen Stand.

Der Re-Export von Dateisystemen mehr als NFS (Network File System) wird mit dieser neuen Kernel-Version nun offiziell unterstützt. Somit können schon gemountete NFS-Dateisysteme mehr als den Kernel-NFS-Server an andere Systeme erneut freigegeben werden.

XFS führt ein neues Flag ein, dies eine notwendige Reparatur des Dateisystems anzeigt. Ist dies betreffende Bit gesetzt, ist es nicht möglich, dies Dateisystem zu mounten, solange bis mittels xfs_repair eine Reparatur angestoßen wurde, im Zuge derer dies Flag wieder zurückgesetzt wird. Durch solche Vorgehensweise soll vermieden werden, dass ein beschädigtes Dateisystem den Betrieb videographieren kann.

F2FS erhält kombinieren neuen ioctl()-Call. Oben diesen kann aus dem Userspace hervor gesteuert werden, welche Dateien komprimiert werden sollen. btrfs hat neue Mount-Optionen erhalten, die unter dieser Datenrettung hinaus einem defekten Dateisystem helfen sollen. rescue=ignorebadroots versucht, trotz eines defekten Root dies Dateisystem zu mounten. resuce=ignoredatacsums schaltet dies Prüfen von Checksummen aus. Zudem erfährt btfs kombinieren Performance-Schub.

Quelle: www.heise.de

Hinterlasse eine Antwort

Deine Email-Adresse wird nicht veröffentlicht.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More