Zum Inhalt springen

Dateisystem/Sicherheit

Aus Foxwiki

Dateisystem/Sicherheit

Sicherheitsaspekte

Das Dateisystem darf von sich aus keine Daten verlieren oder ungewollt überschreiben

  • Insbesondere zwei Fälle bringen Gefahren mit sich:

Wenn im Multitasking mehrere Aufgaben gleichzeitig anstehen, muss das Dateisystem die einzelnen Aktionen sauber auseinanderhalten, damit nichts durcheinanderkommt

  • Wenn die Aufgaben auch noch dieselbe Datei ansprechen, sei es nur lesend oder auch schreibend, werden typischerweise entsprechende Sperrmechanismen (Vorlage:Lang) zur Verfügung gestellt oder automatisch in Kraft gesetzt, um Konflikte zu vermeiden
  • Gleichzeitige Zugriffe von mehreren Seiten z. B. auf eine große Datenbankdatei sind aber auch der Normalfall, so dass man neben globalen Sperren, die die ganze Datei betreffen, auch solche nur für einzelne Datensätze (Vorlage:Lang) benutzen kann

Wenn ein Laufwerk gerade auf ein Speichermedium schreibt und die Betriebsspannung in diesem Moment ausfällt, dann besteht die Gefahr, dass nicht nur die eigentlichen Daten unvollständig geschrieben werden, sondern dass vor allem die organisatorischen Einträge im Verzeichnis nicht mehr korrekt aktualisiert werden

  • Um diese Gefahr zumindest möglichst klein zu halten, wird einerseits per Hardware versucht, genug Energiepuffer (Kondensatoren in der Versorgung) bereitzuhalten, so dass ein Arbeitsvorgang noch zu Ende geführt werden kann, andererseits ist die Software so ausgelegt, dass die Arbeitsschritte möglichst „atomar“ ausgelegt sind, das heißt die empfindliche Zeitspanne mit unvollständigen Dateneinträgen so kurz wie möglich gehalten wird
  • Wenn dies im Extremfall dann doch nicht hilft, gibt es als neuere Entwicklung sogenannte Journaling-Dateisysteme, die in einem zusätzlichen Bereich des Speichermediums Buch über jeden Arbeitsschritt führen, so dass im Nachhinein rekonstruiert werden kann, was noch erledigt werden konnte und was nicht mehr

Eigene Gesichtspunkte gibt es bei Flash-Speichern, indem diese beim Löschen und Wiederbeschreiben einem Verschleiß ausgesetzt sind, der je nach Typ nur ca. 100.000 bis 1.000.000 Schreibzyklen zulässt

  • Dabei können in der Regel nicht einzelne Bytes für sich gelöscht werden, sondern meist nur ganze Blöcke (von je nach Modell variierender Größe) auf einmal
  • Das Dateisystem kann hier daraufhin optimiert werden, dass es die Schreibvorgänge möglichst gleichmäßig über den gesamten Speicherbereich des Flash-Bausteins verteilt und beispielsweise nicht einfach immer bei Adresse 0 anfängt zu schreiben
  • Stichwort: Wear-Leveling-Algorithmen

Dem Aspekt der Datensicherheit gegenüber Ausspähung durch Unberechtigte dienen Dateisysteme, die alle Daten verschlüsseln können, ohne dass andere Schichten des Betriebssystems dafür Aufwand zu treiben bräuchten

Eine weitere Gefahrenquelle für die Integrität der Daten besteht in Schreibaktionen, die von irgendwelcher Software unter Umgehung des Dateisystems direkt auf physische Adressen auf dem Speichermedium erfolgen

  • Bei älteren Betriebssystemen war das ohne weiteres möglich und führte zu entsprechend häufigen Datenverlusten
  • Neuere Betriebssysteme können diese tieferen Ebenen wesentlich effektiver vor unautorisiertem Zugriff schützen, so dass mit den Rechten eines Normalbenutzers gar kein direkter Zugriff auf physische Medienadressen mehr erlaubt ist
  • Wenn bestimmte Diagnose- oder Reparatur-Dienstprogramme (Vorlage:Lang) so einen Zugriff doch benötigen, müssen sie mit Administratorrechten ausgestattet sein