Security for Service-Oriented On-Demand Grid Computing

Verfasst von Matthew Smith am 23. März 2009 - 14:56
Druckversion

Publication Type:

Report

Quelle:

(2008)

Zusammenfassung:

Grid Computing ist zu einem etablierten Standard für das verteilte Höchstleistungsrechnen geworden. Während die erste Generation von Grid Middleware-Systemen noch mit proprietären Schnittstellen gearbeitet hat, wurde die Interoperabilität von Grids durch die Einführung von service-orientierten Standards wie WSDL und SOAP durch die Open Grid Services Architecture (OGSA) signifikant erhöht. Dies hat zu nationalen und internationalen Grid-Projekten geführt, in denen neben einer großen Anzahl von akademischen auch eine wachsende Anzahl von industriellen Anwendungen im Grid ausgeführt wird. 

In kommerziellen bedarfsgesteuerten Grids unterliegen sowohl die Software als auch die Benutzer einer starken Fluktuation. Weiterhin sind sowohl die Software, als auch die Daten, auf denen operiert wird, meist proprietär und besitzen einen hohen finanziellen Wert. Im akademischen Umfeld dagegen liegt die Software häufig offen im Quellcode vor oder ist frei verfügbar.   Um den Ansprüchen einer kommerziellen bedarfsgesteuerten Nutzung gerecht zu werden, muss das Grid administrative Komponenten anbieten, mit denen Anwender autonom Software installieren können, selbst wenn diese Root-Rechte benötigen. Gleichzeitig muss die Sicherheit des Grids erhöht werden, um Software, Daten und Meta-Daten der kommerziellen Anwender zu schützen. Derartige Grids könnten dann auch als Basistechnologie für das gerade entstehende Gebiet des Cloud Computing zu dienen.   Viele der existierenden Grid Middleware Systeme sind nicht auf eine kommerzielle bedarfsgesteuerte Nutzung hin ausgelegt. Dadurch entstehen Probleme, die durch die geforderten Erweiterungen der administrativen Möglichkeiten potentiell zu noch größeren Schwachstellen führen können. Diese Schwächen in der Grid Middleware öffnen einen homogenen Angriffsvektor auf die ansonsten heterogenen und meist privaten Cluster-Umgebungen. Hinzu kommt, dass in den angestrebten großen und offenen Grid-Landschaften die Administratoren mit gänzlich unbekannten Benutzern und Verhaltenstrukturen zu rechnen haben. Dies erschwert das Erkennen von böswilligem Verhalten um ein Vielfaches. Standardisierte Zugriffsmöglichkeiten ermöglichen Angriffe auf eine große Anzahl von Maschinen und Daten von hohem finanziellem Wert. Als Konsequenz daraus werden Grid-Systeme immer attraktivere Ziele für Angreifer werden.   Die industrielle Verbreitung einer offenen Grid-Technologie verlangt nach Mechanismen, die nachweisbar für die Sicherheit von Software, Daten und Meta-Daten sorgen können. Strikte Sicherheitsanforderungen müssen mit dem diametral entgegen gesetzten Wunsch nach einfacher und schneller Integration von neuer Software und neuen Kunden in Einklang gebracht werden.   In dieser Arbeit werden neue Ansätze zur Verbesserung der Sicherheit und Nutzbarkeit von serviceorientiertem bedarfsgesteuertem Grid Computing vorgestellt. Sie ermöglichen eine autonome und sichere Installation und Nutzung von komplexer, service-orientierter und traditioneller Software auf gemeinsam genutzten Ressourcen. Neue Sicherheitsmechanismen schützen Software, Daten und Meta-Daten der Anwender vor anderen Anwendern und vor externen Angreifern.   Das System basiert auf Betriebssystemvirtualisierungstechnologien und bietet dynamische Erstellungs- und Installationsfunktionalitäten für virtuelle Maschinen in einer sicheren Umgebung, in der automatisierte anwenderspezifische Firewall-Regeln gesetzt werden, um anwenderbezogene Netzwerkpartitionen zu erschaffen. . Eine „Image Creation Station“ erlaubt Benutzern, selbständig eine Softwareumgebung mit Root-Rechten einzurichten und zu verteilen.   Die Grid-Umgebung selbst wird in mehrere Bereiche unterteilt, damit die Kompromittierung von einzelnen Komponenten nicht zu einer Gefährdung des gesamten Systems führt. Die Grid-Headnode und der Image-Erzeugungsserver werden jeweils in einzelne Bereiche dieser demilitarisierten Zone positioniert.   Um die sichere Anbindung von existierenden Geschäftsanwendungen zu ermöglichen, werden der BPEL-Standard (Business Process Execution Language) und eine Workflow-Ausführungseinheit um Grid-Sicherheitskonzepte erweitert. Die Erweiterung erlaubt eine nahtlose Integration von geschützten Grid Services mit existierenden Web Services. Die Workflow-Ausführungseinheit bietet die Erzeugung und die Erneuerung (im Falle von lange laufenden Anwendungen) von Proxy-Zertifikaten. Dieser Ansatz ermöglicht die sichere gemeinsame Ausführung von neuen, feingranularen, service-orientierten Grid Anwendungen zusammen mit traditionellen Batch- und Job-Farming Anwendungen. Dies wird durch die Integration des vorgestellten Grid Sandboxing-Systems in existierende Cluster Scheduling Systeme erreicht.   Ein neuartiges „Intrusion Tolerance System“ wird vorgestellt, das die Zuverlässigkeit von zustandsbehafteten Grid Servern erhöht. Das System nutzt Paravirtualisierungstechnologien, um periodisch virtuelle Grid Server auszutauschen und Schad-Codes zu entfernen. Die komplexen Probleme der Angriffsvermeidung und der Behandlung von zustandsbehafteten Verbindungen können von einem flexiblen Plugin-System umgebungsspezifisch gelöst werden.   Um die Angriffe, die nicht verhindert werden können, zu erkennen, wird ein neuartiges „Intrusion Detection System“ (IDS) vorgestellt, das mit Hilfe einer Streaming-Datenbank operiert. Dieser neue Typ von IDS-Systemen erlaubt die Abfrage von Angriffen auf Live-Datenströmen, die mehrere Grid Sites umfassen. Dadurch ist ein natürlicheres Arbeiten als mit traditionellen Log-basierten Datenbank-Ansätzen möglich. Mit Hilfe von temporalen Operatoren können damit zeitlich verbundene Phänomene über mehrere Grid Sites erkannt werden.   Neben den plattformzentrierten Sicherheitsmechanismen werden auch Methoden und Werkzeuge eingeführt, die eine einfache und sichere Entwicklung von Grid Anwendungen ermöglichen. Eine modellgetriebene Entwicklungsumgebung ermöglicht eine saubere Trennung der Entwicklungsgebiete und entlastet somit den Anwendungsentwickler und minimiert die Anzahl der Fehlerquellen, sowohl für den Betrieb von Grid Anwendungen, als auch für deren Sicherheit.   Eine prototypische Implementierung der Konzepte wird auf Basis des Globus Toolkits 4, der Sun Grid Engine und der ActiveBPEL Engine vorgestellt. Die modellgetriebene Entwicklungsumgebung wurde in Eclipse für das Globus Toolkit 4 realisiert. Eine initiale Implementierung wurde dem Globus Entwicklerteam an der Universität von Chicago und dem Argonne National Laboratory zur Verfügung gestellt. Basierend darauf und mit Hilfe der Huazhong University of Science and Technology in Wuhan (China) ist die sichere Installation von Grid Services im laufenden Betrieb für das Globus Toolkit umgesetzt worden. Diese sichere und feingranulare Installation von Diensten bietet neue Möglichkeiten für die Grid-Anwendungsentwicklung.   Kontakt: matthew _at_ Mathematik.Uni-Marburg.de