Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2006  »  06  »  Allgemeine Schutzimpfung  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

© photocase.com

App Armor hält die Auswirkungen erfolgreicher Angriffe in engen Grenzen

Allgemeine Schutzimpfung

von Ralf Spenneberg
Erschienen im Linux-Magazin 2006/06

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.

Novell sieht App Armor [1] als besonders einfach zu konfigurierendes und dennoch wirksames Schutzsystem für Linux. Es konkurriert aus Sicht des Herstellers mit SE Linux, das zwar seit längerem in Suse-Distributionen enthalten ist, doch am chronischen Fehlen der nötigen Richtlinien (Policies) leidet. Während SE Linux eine vergleichsweise schwer zu konfigurierende, dafür aber umfassende MAC-Zugriffskontrolle implementiert (Mandatory Access Control), konzentriert sich App Armor darauf, einzelne Applikationen in ihrem Wirkungskreis zu beschränken.

Armors Aufgabe

Leider weisen viele Anwendungen Programmierfehler auf. Besonders anfällig sind Webapplikationen: Die meist individuell entwickelte Software stammt nicht von Sicherheitsspezialisten, ist aber über das Netz weltweit erreichbar und damit ein ideales Angriffsziel. Findet ein Einbrecher einen Programmierfehler in der Anwendung, kann er sie meist für seine Zwecke missbrauchen und sich Zugang zum System verschaffen.

Auf Umwegen zu Root

Selbst wenn der Eindringling nur den Account eines Normalusers erlangt, droht weitere Gefahr: Der Cracker hat direkten Zugang zu allen lokal installierten Programmen. Eine einzige Sicherheitslücke in einem Set-UID-Root-Programm genügt und er übernimmt die Kontrolle.

Den Admins und Webmastern bleibt klassischerweise nur übrig, ihr System ständig auf dem neuesten Stand zu halten und auf allen Ballast zu verzichten, also ausschließlich die unbedingt nötige Software zu installieren. All das schützt aber nicht vor so genannten Zero-Day-Exploits, den Angriffen auf bislang unbekannte Sicherheitslücken.

Aus dieser Misere will App Armor den Admin befreien. Das System überwacht, wie ein Prozess auf Dateien zugreifen möchte. Dabei unterscheidet App Armor lesende und schreibende Aktionen. Zudem kontrolliert es den Einsatz der Root-Privilegien: Je nach Kernel kennt Linux bis zu 29 Privilegien (Capability, Fähigkeit; siehe »man 7 capabilities«). So ist »CAP_KILL« die Fähigkeit von Root, beliebige Prozesse zu beenden, und »CAP_NET_RAW« erlaubt beliebige Netzwerkpakete zu erzeugen. Letzteres braucht zum Beispiel der »ping«-Befehl.

Die Idee, Zugriffe und Aktionen anhand eines Programms und nicht anhand seines Besitzers beziehungsweise Benutzers zu unterscheiden, ist nicht neu. Unter den freien BSD-Systemen und Linux implementiert beispielsweise auch Systrace ([7], [8]) von Niels Provos dieses Prinzip. Während Systrace - dem Namen entsprechend - Systemcalls überwacht, benutzt App Armor die LSM-Hooks (siehe Kasten "Immunix").

Immunix

App Armor begann seine Karriere als kommerzielles Produkt der Firma Immunix, allerdings trug es damals den Namen Subdomain. Novell hat Immunix Mitte 2005 gekauft, Subdomain in App Armor umgetauft und Anfang 2006 unter die GPL gestellt. Bekannt wurde Immunix als Entwickler von Sicherheitslösungen, vor allem durch den Stackguard-Compiler. Dieser modifizierte GCC schützt Anwendungen vor vielen Varianten von Buffer-Overflow-Angriffen.

Immunix war auch maßgeblich an der Entwicklung der LSM-Schnittstelle (Linux Security Modules, [9]) in Kernel 2.6 beteiligt. Neben App Armor setzen etliche Sicherheitssysteme, etwa LIDS (Linux Intrusion Detection System) und das konkurrierende SE Linux, LSM ein, um ihre Kontrollfunktionen in die passenden Stellen des Kernels einzuklinken. Dank LSM klappt das ohne Patches - allerdings ist die LSM-Architektur bei manchen Projekten umstritten ([10], [11]).

Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Familienzuwachs Bootfähig und installierbar auf CD: Ubuntu 6.06.1 LTS Server Edition
Ein Affenzirkus Installierbar von CD: Ubuntu 7.10 Server Edition
Der stärkste Schutz Vis-à-vis: Novell- und Red-Hat-Mitarbeiter über die Vorzüge ihrer Sicherheitssysteme
Regel-recht Security Enhanced Linux im Einsatz
Webwehr Webserver vor Einbrüchen schützen mit Mod-Selinux
Aufmerksamer Wächter Authentifizierung an der Firewall dank Netfilter-Modul
Whitepaper
The Role of Open Source in Data Integration

Obwohl in den letzten Jahren viele technische Fortschritte erzielt werden konnten, verfügen die meisten Datenintegrationsprozesse nach wie vor nur über eine sehr begrenzte Automatisierung. Das vorliegende White Paper von dem Industry Analyst Mark Madson wird zunächst ein grundlegendes Verständnis von Daten Integration vermitteln, die Vorzüge von Open Source Lösungen für Daten Integration erläutern und Ihnen professionelle Empfehlungen geben, damit Sie Ihre Integrationsjobs noch einfacher und produktiver gestalten können.

Download PDF (Registrierung erforderlich)
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)

Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Kommentare (0)