13.01.2015 Aufrufe

Abschlussbericht

Abschlussbericht

Abschlussbericht

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

<strong>Abschlussbericht</strong><br />

Trusted Sensor Node<br />

6.1.1 Mikrokern-basierter TSN mit Security Compartments<br />

Viele der aktuellen Betriebssysteme für eingebettete Systeme, z.B. eCos, µClinux, TinyOS<br />

oder Reflex, bestehen aus einen monolithischen Kern, der funktional in verschiedene Module<br />

unterteilt wird. Die Trennung der Module besteht hierbei jedoch nur auf der Programmiersprachenebene,<br />

zur Laufzeit existiert keine Trennung zwischen den Modulen.<br />

Ein monolithisches System hat im Wesentlichen die folgenden Nachteile:<br />

• Fehler einer Komponente bleiben nicht auf diese beschränkt<br />

• alle Daten des Knotens sind von jeder Komponente les- und schreibbar<br />

• ein dediziertes Wiederaufsetzen von einzelnen Modulen ist nicht möglich<br />

Aufgrund oben genannter Nachteile befürworten wir den Ansatz eines mikrokern-basierten<br />

Betriebssystems für eingebettete Systeme. Hierbei stellen wir zunächst das Konzept der<br />

„Security Compartments“ vor, welche die Grundlage für ein sicheres System bilden, jedoch<br />

nur von den wenigsten aktuellen eingebetteten Systemen unterstützt wird. Darauf<br />

aufbauend wird mit L4 eine Mikrokern-Architektur aufgezeigt, mit der die Sicherheit des<br />

TSN signifikant erhöht werden kann.<br />

Security Compartments<br />

Unter Security Compartments versteht man die Aufteilung der Systemressourcen auf voreinander<br />

geschützte Teilkomponenten. Diese Security Compartments werden dabei durch<br />

Protection Domains voreinander geschützt. Eine Protection Domain ist eine Menge von<br />

Zugriffsrechten zum Schutz von Ressourcen [12]. Jedes Compartment wird hierbei genau<br />

einer Domain zugeordnet. Allerdings können verschiedene Compartments einer Domain<br />

angehören. Zwei Security Compartments können daher nur dann miteinander kommunizieren,<br />

wenn ihre Protection Domains den Zugriff auf eine gemeinsame Ressource gestatten.<br />

Durch das Fehlen von Security Compartments in eingebetteten Systemen wirken sich<br />

lokale Fehler in den Komponenten auf das gesamte System aus. Wie in Abbildung 6.1<br />

dargestellt, kann z.B. ein Fehler in einem Treiber durch das Fehlen von Schutzbarrieren<br />

auch das Memory Management oder den Scheduler beeinflussen, so dass ein störungsfreier<br />

Betrieb des Gesamtsystems nicht mehr sichergestellt werden kann. Wie Abbildung<br />

6.2 verdeutlicht, können durch die Einführung von Security Compartments die verschiedenen<br />

Module voreinander geschützt werden, so dass die Auswirkungen eines Fehlers<br />

auf die betroffene Komponente begrenzt sind. Ein Compartment hat nur Zugriff auf einen<br />

bestimmten, ihm zugeteilten, Bereich des Systems.<br />

Die Unterteilung des Systems in verschiedene Security Compartments wird durch den<br />

Systemkern organisiert. Der Kern muss hierbei durch die Hardware unterstützt werden.<br />

So ist die Bereitstellung von verschiedenen Ausführungsmodi und von Zugriffsrechten auf<br />

78

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!