Open Source im professionellen Einsatz
Linux-Magazin 01/2003

Die Architektur des Linux-Sicherheitssystems Rule Set Based Access Control (RSBAC)

Sicherheits-Architektur

Mehrere Sicherheitsmodelle gleichzeitig in den Kernel integrieren und auch noch alle Zugriffe detailliert protokollieren: Das freie Sicherheitssystem Rule Set Based Access Control (RSBAC) bietet angepassten Schutz für unterschiedliche Anforderungen.

542

Sicherheitslücken in Linux finden sich meist in Serverprogrammen und S-Bit-Tools. Der Königsweg wäre: Fehler vermeiden und Programme sofort aktualisieren, falls doch ein Bug auftritt. Da dies nicht immer gelingt, gilt es, den potenziellen Schaden zu begrenzen. Das ist die Aufgabe von Zugriffskontrollsystemen wie RSBAC[1]: Nutzt ein Angreifer Lücken in Servern oder S-Bit-Tools, dann soll er nur minimalen Zugang zum System erhalten. Selbst ein erfolgreicher Einbruch hat so nur begrenzte Auswirkungen. Der Schutz wird direkt im Betriebssystemkern implementiert.

Der unveränderte Linux-Kernel verhindert bereits viele Zugriffe auf diverse Ressourcen wie Dateien, Verzeichnisse oder Systemeinstellungen. Leider hat das Standardverfahren Schwächen:

  • Geringe Granularität
  • Discretionary Access Control
  • Allmächtiger Root

Die Zugriffskontrolle von Linux kennt nur die Rechte Lesen, Schreiben und Ausführen, sie lassen sich zudem nur für den Besitzer einer Datei, die Mitglieder der Dateigruppe und alle anderen Benutzer getrennt festlegen. Für Root gelten keine Beschränkungen. Die Granularität dieser Rechte ist somit zu gering für viele Aufgaben.

Linux-Rechte: Ungenügend

Der Besitzer einer Datei hat die volle Verfügungsgewalt über sein Objekt (DAC, Discretionary Access Control). Kontrolliert ein Angreifer einen Prozess, dann gelten für seine Aktionen die Rechte des Benutzers, unter dessen Kennung der Prozess läuft. Der Angreifer kann so alle Dateien dieses Users beliebig manipulieren.

Der allmächtige Systemverwalter Root ist das gefährlichste der hier genannten Probleme. Viele Aktionen sind nur ihm vorbehalten, von Verwaltungsaufgaben bis zu einfachen Handlungen, etwa bestimmte Netzwerk-Ports öffnen. Folglich starten die meisten Serverdienste mit Root-Rechten und erhalten unbegrenzten Zugriff auf das gesamte System, ohne diese umfassenden Rechte zu benötigen. Es kommt noch schlimmer: Um später in beliebige Benutzerkennungen zu wechseln, müssen viele Dienste ständig als Root laufen oder diese Rechte jederzeit wiedererlangen können.

Die bereits seit längerem im Linux-Kernel eingeführten Posix-Capabilities erlauben es zwar einem von Root gestarteten Programm, auf einige Sonderrechte zu verzichten, das erfolgt aber freiwillig durch das Programm selbst.

Anforderungen an die Architektur

Das Hauptziel bei der Entwicklung von RSBAC war, ein flexibles und wirksames Zugriffskontrollsystem zu entwerfen, das die Linux-Mechanismen ergänzt. Um dies zu erreichen, muss das System einige Anforderungen erfüllen: Es soll als Rahmenwerk aufgebaut sein, das es dem Entwickler erlaubt, verschiedene Zugriffs-Entscheidungsmodelle einfach und schnell zu entwerfen und zu implementieren. Daraus ergibt sich eine klare Trennung zwischen entscheidenden Komponenten und solchen, die die Entscheidung durchsetzen. Die durchsetzenden Bestandteile sind unabhängig von denen, die Entscheidungen fällen. Neue Entscheidungsmodelle können die vorhandene Infrastruktur nutzen.

Es gibt inzwischen eine große Auswahl bewährter Sicherheitsmodelle für verschiedenste Aufgaben, je nach Situation sind auch Kombinationen dieser Modelle sinnvoll. Das Rahmenwerk soll deshalb mehrere Sicherheitsmodelle gleichzeitig und unabhängig voneinander unterstützen, sodass der Administrator für den jeweiligen Einsatzbereich die am besten geeigneten Modelle auswählen kann. Unabhängig vom Modell ist es nötig, jede Aktion und jede getroffene Entscheidung zu protokollieren. Dieses Logging muss vor Manipulationen geschützt sein.

Bereits das erste Design des RSBAC-Systems erfüllte fast alle Anforderungen. Im Laufe der letzten fünf Jahre ist die Menge an Funktionen und überwachten Objekten stark gewachsen, auch Netzwerkzugriffe unterliegen inzwischen der RSBAC-Kontrolle. Die Grundzüge des Designs haben sich dabei bewährt und blieben unverändert.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Sicheres Sportgerät

    Wer beim Websurfen und E-Mailen höchste Sicherheit will, tut gut daran, Browser und Mailer nicht auf seiner Arbeitsstation zu starten. Unter dem Namen Tightgate stellt M-Privacy eine gehärtete Appliance vor, die dem Desktop-Rechner diese Clients abnimmt. Der Test untersucht, ob das Konzept in der Praxis taugt.

  • Abschirmdienste

    Davon kann die Nationalelf nur träumen: Gleich mehrere geschlossene Abwehrlinien konkurrieren darum, wer das eigene Tor am besten verteidigt. SE Linux und App Armor setzen auf sehr verschiedene Strategien, um das feindliche Leder fern zu halten.

  • Sicherheitsanker

    Projekte wie Pax oder Exec-Shield verankern tief im Kern eines Linux-Systems zusätzliche Sicherheitsmechanismen, die deutlich über die herkömmliche Zugriffskontrolle hinausgehen. Sie vermindern die Gefahr durch Exploits, Race Conditions und Ressourcen-Verschwendung.

  • Kernel-Dominanz

    Traditionell eher ein Entwicklertreffen, widmete sich auch der Linux-Kongress 2001 in erster Linie Kernel- und Systemfragen. Im Gegensatz zu den vergangenen Jahren glänzte die Desktop-Fraktion allerdings komplett durch Abwesenheit.

  • Allgemeine Schutzimpfung

    Gelingt es einem Angreifer, fremde Systeme zu infizieren, erbt er alle Rechte seiner Opfer. App Armor schützt vor den Folgen, indem es die Rechte potenzieller Opfer auf ein Minimum begrenzt. Selbst bei einem Webserver mit PHP-Applikationen trennt App Armor scharf zwischen den Sitzungen.

comments powered by Disqus

Ausgabe 11/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.