Abo
  • IT-Karriere:

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. Hornbach-Baumarkt-AG, Bornheim bei Landau Pfalz
  2. über experteer GmbH, Raum Heidelberg / Rhein-Neckar

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.



Anzeige
Spiele-Angebote
  1. (-10%) 53,99€
  2. 34,99€
  3. (-72%) 8,30€

sambache 26. Aug 2019 / Themenstart

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

schily 22. Aug 2019 / Themenstart

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

regiedie1. 21. Aug 2019 / Themenstart

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

schily 21. Aug 2019 / Themenstart

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

tsx-11 20. Aug 2019 / Themenstart

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

Kommentieren


Folgen Sie uns
       


Philips Hue Play HDMI Sync Box angesehen

Die Philips Hue Play HDMI Sync Box ist ein HDMI-Splitter, über den Hue Sync verwendet werden kann. Im ersten Kurztest funktioniert das neue Gerät gut.

Philips Hue Play HDMI Sync Box angesehen Video aufrufen
Apple TV+: Apples Videostreamingdienst ist nicht konkurrenzfähig
Apple TV+
Apples Videostreamingdienst ist nicht konkurrenzfähig

Bei so einem mickrigen Angebot hilft auch ein mickriger Preis nicht: Apples Streamingdienst hat der Konkurrenz von Netflix, Amazon und bald Disney nichts entgegenzusetzen - und das wird sich auf Jahre nicht ändern.
Eine Analyse von Ingo Pakalski

  1. Apple TV+ Disney-Chef tritt aus Apple-Verwaltungsrat zurück
  2. Apple TV+ Apples Streamingangebot kostet 4,99 Euro im Monat
  3. Videostreaming Apple TV+ startet mit fünf Serien für 10 US-Dollar monatlich

Innovationen auf der IAA: Vom Abbiegeassistenten bis zum Solarglasdach
Innovationen auf der IAA
Vom Abbiegeassistenten bis zum Solarglasdach

IAA 2019 Auf der IAA in Frankfurt sieht man nicht nur neue Autos, sondern auch etliche innovative Anwendungen und Bauteile. Zulieferer und Forscher präsentieren in Frankfurt ihre Ideen. Eine kleine Auswahl.
Ein Bericht von Dirk Kunde

  1. IAA 2019 PS-Wahn statt Visionen
  2. E-Auto Byton zeigt die Produktionsversion des M-Byte

Recruiting: Wenn das eigene Wachstum zur Herausforderung wird
Recruiting
Wenn das eigene Wachstum zur Herausforderung wird

Gerade im IT-Bereich können Unternehmen sehr schnell wachsen. Dabei können der Fachkräftemangel und das schnelle Onboarding von neuen Mitarbeitern zum Problem werden. Wir haben uns bei kleinen Startups und Großkonzernen umgehört, wie sie in so einer Situation mit den Herausforderungen umgehen.
Von Robert Meyer

  1. Recruiting Alle Einstellungsprozesse sind fehlerhaft
  2. LoL Was ein E-Sport-Trainer können muss
  3. IT-Arbeit Was fürs Auge

    •  /