SE Linux schließt Sicherheitslücken

07.07.2005
Von Eva-Katharina Kunst

Konzept: MAC-System mit Type Enforcement und Role Based Access Control.Rollen und Regeln

Mit RBAC werden in einem weiteren Schritt verschiedene Rollen definiert und dem Benutzer zugewiesen. Typische Rollen könnten den normalen Anwender (user_r), den Mitarbeiter für ein bestimmtes Projekt (staff_r) oder eine Gruppe Systemadministratoren (sysadm_r) bezeichnen. Dass es sich um Rollen handelt, ist an der jeweiligen Endung auf "_r" ersichtlich. SE Linux vergibt jedem Subjekt und Objekt einen so genannten Security-Kontext (Benutzer:Rolle:Typ/ Domain), der als Zugriffsattribut in den xattr-Attributen des Dateisystems gespeichert wird.

Ein solches regelbasierendes Konzept firmiert unter dem Begriff "Mandatory Access Control", kurz MAC. Die Zuordnung, mit welchen Rollen auf welche Typen zugegriffen werden darf, wird als Policy bezeichnet. Policies zu erstellen ist allein der Rolle des Systemadministrators vorbehalten.

SE Linux zieht eine zusätzliche Sicherheitsinstanz in den Linux-Kernel ein.Das Aufstellen von Policies ist eine diffizile Aufgabe, "in der Komplexität vergleichbar mit Firewalls in einer komplexeren Netzwerktopologie", wie Daniel Riek, Solution Architect bei Red Hat, betont. Glücklicherweise liefern SE-Linux-Distributionen Policies mit. Red Hat hat unter den Distributoren am meisten in SE Linux investiert und sowohl allen Versionen von Red Hat Enterprise Linux 4 (RHEL 4) wie auch der Community-Variante Fedora Core 3 gleich zwei Sätze von Policies mitgegeben. Während die "Strict-Policy" möglichst viel absichert, aber deutlich unkomfortabler zu handhaben ist, schützt die per Default eingestellte "Targeted-Policy" nur die von außen erreichbaren Netzwerkdienste. Kompromittiert ein Cracker beispielsweise das Web-Frontend, erhält er dennoch keinen Zugriff auf die Middleware oder gar die Backend-Datenbanken.

Mit Targeted Policy lässt sich Third-Party-Software vergleichsweise einfach einspielen und verwenden. Alle lokalen Programme laufen in einem gemeinsamen Sicherheitskontext. Der Administrator merkt nicht einmal viel davon, vor einem gesicherten SE-Linux-System zu sitzen: So hat Red Hat beispielsweise den Befehl "su" mit dem SE-Linux-Kommando "newrole" kombiniert.Abhängig von Distributionen

Mittels der neuen Befehlsoption "-Z" offenbaren bekannte Unix-Kommandos die neuen Sicherheitseinstellungen.In der Installation eines Fedora-Core-3- oder eines RHEL-4-Systems liegt denn auch gegenwärtig der einfachste Weg, SE Linux kennen zu lernen. In beiden Systemen ist von Haus aus SE Linux enthalten und angeschaltet. Etwas umständlicher ist die Installation unter Gentoo oder Debian. Eine Anleitung findet sich im "Gentoo x86 SE Linux Handbuch" beziehungsweise im "Getting Started with SE Linux Howto". Der neugierige Gentoo-Jünger sollte sich übrigens nicht vom Namen SE-Linux-Live-CD verwirren lassen: Hier handelt es sich nur um eine CD, mit der man das Gentoo-SE Linux installieren kann. Die Live-CD selbst stellt kein abgesichertes System dar. Der Nürnberger Distributor Suse hält sich bezüglich seiner SE-Linux-Strategie noch bedeckt. Allerdings hat die Community Pakete beispielsweise für Suse 9.2 bereitgestellt (http://SELinux.sourceforge.net/distros/suse.php3).