• IT-Karriere:
  • Services:

Kernel: Defekte Dateisysteme bringen Linux zum Stolpern

In einer Diskussion um die Aufnahme eines neuen Dateisystems in den Linux-Kernel wird klar, dass viele Dateisystemtreiber mit defekten Daten nicht klarkommen. Das kann nicht nur zu Abstürzen führen, sondern auch zu Sicherheitslücken.

Artikel veröffentlicht am ,
Über USB-Sticks könnte man Sicherheitslücken in Linux-Dateisystemtreibern ausnutzen, wenn die Distribution diese automatisch mountet.
Über USB-Sticks könnte man Sicherheitslücken in Linux-Dateisystemtreibern ausnutzen, wenn die Distribution diese automatisch mountet. (Bild: Hanno Böck)

Die Aufnahme des Dateisystems EROFS in den Linux-Kernel führt zu einer Diskussion darüber, wie robust die Dateisystemtreiber im Kernel sein sollen. Darüber berichtet Linux Weekly News. In vielen Dateisystemtreibern gibt es bekannte, ungefixte Sicherheitslücken. Insbesondere XFS ist problematisch.

Stellenmarkt
  1. Stadt Ingolstadt, Ingolstadt
  2. Bundeskriminalamt, Meckenheim

EROFS ist ein komprimiertes Read-Only-Dateisystem, das von Huawei entwickelt wurde. Es ist seit Version 4.19 Teil des sogenannten Staging-Bereichs des Linux-Kernels, in dem Treiber zu finden sind, die noch getestet werden. Gao Xiang, einer der Entwickler von EROFS, hat zuletzt darum gebeten, das Dateisystem künftig als normalen Kernel-Dateisystemtreiber auszuliefern.

Wie robust müssen Kernel-Dateisystemtreiber sein?

Kernel-Entwickler Richard Weinberger wies in der Diskussion darauf hin, dass der Code offenbar erwarte, dass das eingelesen Dateisystem korrekt sei und keine fehlerhaften Daten enthalte. So sei es ihm mit wenig Aufwand gelungen, ein fehlerhaftes Dateisystemimage zu erzeugen, das im Code von EROFS zu einer Endlosschleife geführt habe. Das führte zu einer Grundsatzdiskussion darüber, ob man von Linux-Dateisystemtreibern erwarten kann, dass sie auch mit fehlerhaften Dateisystemen klarkommen.

Theodore Ts'o, der das Ext4-Dateisystem im Kernel betreut, wies darauf hin, dass auch andere Dateisysteme, die schon lange Teil von Linux sind, solche Probleme hätten. Er versuche zwar, solche Fehler in Ext4 zu beheben, aber es habe für ihn keine hohe Priorität. Es sei unfair, von neuen Dateisystemen etwas zu erwarten, was schon bestehende Dateisysteme nicht erfüllen könnten.

Fuzzing findet viele Bugs in Dateisystemtreibern

Es gab in der Vergangenheit mehrfach Bemühungen, mittels Fuzzing solche Fehler in Dateisystemtreibern zu finden. Hierbei erzeugt ein Fuzzing-Tool defekte Eingabedaten und testet, ob diese zu Abstürzen oder anderen Fehlern führen.

2016 nutzten Entwickler von Oracle eine modifizierte Version von American Fuzzy Lop (AFL), um Fehler in Dateisystemtreibern zu finden. Auf der Usenix-Konferenz 2017 wurde ein weiterer Ansatz namens kAFL, ebenfalls basierend auf AFL, vorgestellt. Auch Googles Syzkaller-Projekt findet teilweise Fehler in Dateisystemtreibern und meldet diese automatisch.

Fuzzing schädlich?

Wen Xu vom Georgia Institute of Technology erweiterte diesen Ansatz und stellte im Mai diesen Jahres eine Fuzzing-Methode vor, bei der nicht nur das Einlesen eines defekten Dateisystems getestet wurde, sondern anschließend auch Zugriffe darauf. Im Rahmen dieser Forschung wurde eine ganze Reihe von Fehlern an die Kernel-Entwickler gemeldet, darunter mehrere Memory-Corruption-Bugs. In den Dateisystemtreibern für XFS, ReiserFS, HFS und GFS2 wurden viele der Bugs nicht gefixt. Auch für Ext4 findet man drei Bugs. Diese wurden aber gefixt, es wurde wohl nur vergessen, die entsprechenden Bugreports auch zu schließen.

XFS-Entwickler findet Fuzzing schädlich

In mehreren Onlinediskussionen in der Vergangenheit haben die Entwickler des XFS-Dateisystems geschrieben, dass sie derartige Fehler nicht fixen möchten. Als Antwort auf einen Fehlerbericht eines kAFL-Entwicklers antwortete ein Entwickler des XFS-Dateisystems, dass er solches Fuzzing für schädlich halte.

Mehrfach verwiesen Entwickler von XFS in diesen Diskussionen darauf, dass die aktuelle Version von XFS CRC32-Checksummen enthalte. Doch diese können zwar zufällige Bitfehler erkennen, sie verhindern aber keine böswillig manipulierten Dateisysteme. Das Erkennen von Bugs durch Fuzzing wird hingegen durch solche Checksummenmechanismen erschwert.

Angriffe über USB-Sticks und Automount

Wenn fehlerhafte Dateisystemtreiber Memory-Corruption-Fehler enthalten, kann das ein Sicherheitsproblem sein. Manche Linux-Distributionen mounten externe Laufwerke wie USB-Sticks automatisch, wenn diese angeschlossen werden. Doch auch ohne Automount besteht ein Sicherheitsrisiko, so könnte man etwa Nutzern einen USB-Stick mit einem Dateisystem geben, das eine solche Sicherheitslücke ausnutzt.

Das Mounten von fremden Dateisystemen ist aber unter den gegebenen Umständen riskant. Wie die Diskussion zeigt, kann man sich nicht darauf verlassen, dass Linux-Dateisystemtreiber mit bösartigen Eingabedaten klarkommen. Und einige Kernelentwickler sagen offen, dass das auch nicht ihr Ziel sei.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Hardware-Angebote
  1. (reduzierte Überstände, Restposten & Co.)
  2. täglich neue Deals bei Alternate.de

sambache 26. Aug 2019

Eine voller file system check dauert sehr lange. Das macht niemand jedesmal.

schily 22. Aug 2019

Also, als Frank Hoffman von Sun Microsystems und ich das 2005 und 2006 für das ISO-9660...

regiedie1. 21. Aug 2019

Hab mich auch nicht für bcachefs ausgesprochen, sondern nur auf den Text des Entwicklers...

schily 21. Aug 2019

In FreeBSD wurde es entdeckt und allen gemeldet. In Solaris wurden die Fehler behoben, in...

tsx-11 20. Aug 2019

Das ist die Meinung von Ted To's und Dave Chinner. Ok, beide haben wenig Ahnung davon.


Folgen Sie uns
       


Tolino Vision 5 HD und Epos 2 im Hands On

Tolino zeigt mit Vision 5 HD und Epos 2 zwei neue Oberklasse-E-Book-Reader. Der Epos 2 kann durch ein besonders dünnes Display begeistern.

Tolino Vision 5 HD und Epos 2 im Hands On Video aufrufen
Netzwerke: Warum 5G nicht das bessere Wi-Fi ist
Netzwerke
Warum 5G nicht das bessere Wi-Fi ist

5G ist mit großen Marketing-Versprechungen verbunden. Doch tatsächlich wird hier mit immensem technischem und finanziellem Aufwand überwiegend das umgesetzt, was Wi-Fi bereits kann - ohne dessen Probleme zu lösen.
Eine Analyse von Elektra Wagenrad

  1. Rechenzentren 5G lässt Energiebedarf stark ansteigen
  2. Hamburg Telekom startet 5G in weiterer Großstadt
  3. Campusnetze Bisher nur sechs Anträge auf firmeneigenes 5G-Netz

Elektroschrott: Kauft keine kleinen Konsolen!
Elektroschrott
Kauft keine kleinen Konsolen!

Ich bin ein Fan von Retro. Und ein Fan von Games. Und ich habe den kleinen Plastikschachteln mit ihrer schlechten Umweltbilanz wirklich eine Chance gegeben. Aber es hilft alles nichts.
Ein IMHO von Martin Wolf

  1. IMHO Porsche prescht beim Preis übers Ziel hinaus
  2. Gaming Konsolenkrieg statt Spielestreaming

Minikonsolen im Video-Vergleichstest: Die sieben sinnlosen Zwerge
Minikonsolen im Video-Vergleichstest
Die sieben sinnlosen Zwerge

Golem retro_ Eigentlich sollten wir die kleinen Retrokonsolen mögen. Aber bei mittelmäßiger Emulation, schlechter Steuerung und Verarbeitung wollten wir beim Testen mitunter über die sieben Berge flüchten.
Ein Test von Martin Wolf


      •  /