Serie: US-Bewertungskriterien für vertrauenswürdige DV-Systeme und Rechnernetze (Folge 1)

Zugriffsverfahren etablieren Sicherheitspolitik

17.06.1988

Safety first

Wer von Hackern und Netzwerksicherheit spricht, spricht gleichzeitig von Betriebssystemsicherheit. Es ist absehbar, daß diese sich bei allen Systemen erhöhen wird, selbst das als "sehr unsicher" geltende Unix ist In einer seiner Varianten (Gould) Immerhin einer Wertung im Orange-Book des US-Verteidigungsministeriums für würdig befunden worden. Nebenstehender Beitrag von Dietrich Cerny, der in einer mehrteiligen Folge erscheinen wird, informiert grundlegend über die Sicherheitskriterien, die zur Zeit von den Amerikanern an Betriebsysteme, aber auch an Netzprodukte angelegt werden. Zweifellos wird sich in Zukunft hier noch vieles tun. Der Beitrag vermittelt Grundlagenwissen, um Angriffspunkte erkennen und um bei künftigen Systementscheidungen kompetent mitreden zu können. Die Zeit der Proprietary-Systeme scheint zwar ihrem Ende entgegen zu gehen, aber Ziel von Attacken ist ja die heute installierte Basis. Sie gilt es zu schützen mit verfügbaren Tools und verfügbarem Wissen.

*Dietrich Cerny ist Mitarbeiter im Luftwaffenamt.

von Dietrich Cerny*

Die Forderung nach der ordnungsgemäßen Speicherung, Verarbeitung und Übertragung von sensitiven Daten in Rechnernetzen gewinnt zunehmend an Bedeutung. Für die Entscheidung, ob sensitive Daten in solchen Netzen verarbeitet und übertragen werden können, ist der Grad des Vertrauens entscheidend, den man in die korrekte Funktion ihrer Sicherheitsmechanismen setzen kann. Dazu sind Kriterien erforderlich, mit deren Hilfe man diesen Grad des Vertrauens objektiv ermitteln und bewerten kann.

Diese Notwendigkeit erkennend, hat das amerikanische National Computer Security Center (NCSC) nach einer mehrjährigen Vorarbeit im Dezember 1985 zunächst die nunmehr gültige Fassung der "Department of Defense Trusted Computer System Evaluation Criteria (TCSEC)", auch als "Orange Book" bekannt, als Standard für den Bereich des US-amerikanischen Verteidigungsministeriums veröffentlicht (1). Dieser Standard legt das Verfahren fest, mit dem die Vertrauenswürdigkeit eines DV-Systems (ohne Anschluß an ein Rechnernetz) in bezug auf die ordnungsgemäße Speicherung und Verarbeitung von sensitiven Daten bewertet werden kann, und er führt die Kriterien auf, die bei einer solchen Bewertung angelegt werden. Als "vertrauenswürdig" werden solche Systeme bezeichnet, die über ausreichende Sicherheitsmechanismen verfügen, um gleichzeitig Daten unterschiedlicher Sensitivität zu speichern, zu verarbeiten und zu übertragen, ohne daß die Gefahr besteht, daß diese Daten Unbefugten zur Kenntnis gelangen beziehungsweise durch Unbefugte geändert werden können.

Die Vertrauenswürdigkeit eines DV-Systems hängt hauptsächlich von Art und Qualität der Sicherheitsmechanismen ab, die das Betriebssystem zur Verfügung stellt. Aus diesem Grunde wurden die TCSEC als erste in einer geplanten Reihe von Bewertungsstandards, auf die Bewertung von Mainframe-Betriebssystemen und Zugriffskontrollsoftware ausgelegt; für eine Bewertung von Rechnernetzen und Datenbanksystemen reichen sie nicht aus.

Im Juli 1987 wurde deshalb die erste Fassung einer Interpretation der TCSEC für die Bewertung von vertrauenswürdigen Rechnernetzen herausgegeben, die sogenannten "Trusted Network Interpretation of the Trusted Computer System Evaluation Criteria (TNI)" (2). Es ist beabsichtigt, den Entwurf der TNI zunächst bis Mitte 1988 praktisch zu erproben und nach Einarbeitung der gewonnenen Erkenntnisse ebenfalls einen entsprechenden Standard herauszugeben. An einer vergleichbaren Interpretation für vertrauenswürdige Datenbanksysteme wird gegenwärtig gearbeitet.

Die Aufgabe, Bewertungen der Vertrauenswürdigkeit von Produkten für US-Bundesbehörden, insbesondere für das US-Verteidigungsministerium, durchzuführen, wurde 1981 einer Dienststelle übertragen, die heute als "National Computer Security Center (NCSC)" bekannt ist.

Nachfolgend werden zunächst die Grundlagen der Bewertungskriterien für vertrauenswürdige Produkte dargestellt, dann wird beschrieben, in welcher Form solche Bewertungen durchgeführt werden, und schließlich wird ein grober Überblick über die verwendeten Kriterien gegeben.

Ausgangspunkt für die Erarbeitung der TCSEC war die Entscheidung des US-Verteidigungsministeriums in den 70er Jahren, auch bei der Verarbeitung von sensitiven Daten in DV-Systemen weitgehend auf marktgängige Produkte zurückzugreifen und auf die bis dahin üblichen kostspieligen und langwierigen Spezialentwicklungen zu verzichten. Man wollte die Vielzahl der Forderungen nach Produkten zur Verarbeitung von sensitiven Daten, die insbesondere im Bereich des US-Verteidigungsministeriums bestanden, dadurch erfüllen, daß man einen Katalog von marktgängigen Produkten mit definierten und geprüften Sicherheitseigenschaften zusammenstellen ließ, aus dem sich dann die Benutzer das Produkt aussuchen sollten, das für ihre Anwendung und ihre Anwendungsumgebung am besten geeignet war.

Für einen solchen Ansatz sprachen auch die heute noch gültigen Vorschriften, die insbesondere im militärischen Bereich festlegen, daß ein DV-System erst durch einen Sicherheitsbeauftragten in seiner realen Einsatzumgebung abgenommen werden muß, bevor eine formale Zulassung für die Verarbeitung von sensitiven Daten erteilt werden darf, Das Vorhandensein eines Kataloges von geprüften Produkten sollte den Sicherheitsbeauftragten von der technischen Prüfung des Produktes entlasten und sollte ihm ermöglichen, sich bei der Zulassung auf die Betrachtung des Gefährdungspotentials der Einsatzumgebung zu konzentrieren.

Anforderungen resultieren aus Aufgabenstellung

In den USA erkannte man frühzeitig, daß für unterschiedliche DV-Systeme auch durchaus unterschiedliche Sicherheitsforderungen bestehen können, die sich zum Beispiel aus der unterschiedlichen Aufgabenstellung der Systeme, aus der unterschiedlichen Sensitivität der zu verarbeitenden Daten oder aus der unterschiedlichen Einsatzumgebung der DV-Systeme ergeben. Damit erschien es nicht sinnvoll, die Gesamtheit der Sicherheitsforderungen mit einem einzigen Produkt abzudecken, es bot sich vielmehr an, Klassen von Systemen zu bilden, die die gleichen Sicherheitseigenschaften besitzen müssen und für diese Klassen geeignete Produkte zur Verfügung zu stellen. Bei der Erstellung der TCSEC wurden diese Vorstellungen dadurch aufgegriffen, daß sieben Klassen gebildet und für jede dieser Klassen die Forderungen festgelegt wurden, die erfüllt sein müssen, wenn ein Produkt in einer dieser Klassen eingeordnet werden soll. Neben der Organisation in Klassen sind

- die Sicherheitspolitik,

- der Referenzmonitor und

- die Trusted Computing Base

die wesentlichen Grundlagen, die den Aufbau der TCSEC bestimmen.

Maßstab für Vertrauenswürdigkeit

Zentrales Kriterium für die TCSEC und Maßstab für die Bewertung der Vertrauenswürdigkeit eines Produktes ist die Sicherheitspolitik, die es unterstützen und durchsetzen muß. Unter Sicherheitspolitik werden in diesem Zusammenhang die Vorschriften und Verfahren verstanden, die in der zu unterstützenden Organisation für den ordnungsgemäßen Umgang mit sensitiven Daten festgelegt sind. Mit den TCSEC werden also nicht die einzelnen Sicherheitsmechanismen eines Produktes isoliert auf ihre Wirksamkeit hin untersucht, sondern sie werden immer im Hinblick auf eine konkrete Sicherheitspolitik beurteilt.

Die Sicherheitspolitik einer Organisation legt insbesondere fest, welche ihrer Angehörigen auf welche sensitiven Daten zugreifen dürfen, welche Rechte sie bei diesem Zugriff haben und wie die Sensitivität dieser Daten festgelegt und gekennzeichnet wird. Aus diesem Grund sind Verfahren für den Zugriff auf Daten und Art und Weise der Kennzeichnung ihrer Sensitivität wesentliche Kriterien, die bei der Bewertung der Vertrauenswürdigkeit eines Produktes betrachtet werden müssen. Bei der Kennzeichnung gehen die TCSEC von einem System aus, das bei Behörden üblich ist und mit dessen Hilfe sowohl die Sensitivität von Daten (Einstufung) als auch das Vertrauen in die Integrität der zugreifenden Personen (Ermächtigung) ausgedrückt werden kann. In diesem System wird die Sensitivität durch Kennzeichen ausgedruckt, die aus Sensitivitätsgrad und Kategorie bestehen, wobei eine Kategorie eine Einschränkung des Zugriffs auf bestimmte Bereiche (zum Beispiel Gehälter, Patente) bedeutet. Sensitivitätsgrade sind aufsteigend geordnet (zum Beispiel "offen", "vertraulich", "geheim", "streng Geheim"), während Kategorien gleichberechtigt nebeneinander stehen.

In den TCSEC werden für Personen und Daten abstrakte Begriffe eingeführt. Personen und Prozesse werden als Subjekte bezeichnet. Subjekte sind aktive Elemente, die einen Datenaustausch zwischen Objekten oder eine Änderung des Systemzustandes bewirken. Objekte sind passive Teile (zum Beispiel Dateien oder Geräte), die Daten enthalten oder empfangen. Der Zugriff auf ein Objekt bedeutet im Regelfall Zugriff auf die Daten, die das Objekt enthält.

Der wesentliche Aspekt für die Durchsetzung von Sicherheitspolitiken sind Zugriffsverfahren. In den Bewertungskriterien werden zwei Zugriffsverfahren eingeführt:

- benutzerbestimmbarer Zugriff (discretionary access control)

und

- festgelegter Zugriff (mandatory access control).

Beim "benutzerbestimmbaren Zugriff" wird der Zugriff auf Objekte nach den Vorgaben des einzelnen Benutzers festgelegt. Der Zugriff auf ein Objekt erfolgt dann auf der Grundlage der Identität des zugreifenden Subjektes. Die Zuordnung Subjekt/Objekt kann jederzeit durch eine berechtigte Person (zum Beispiel Benutzer oder Administrator) geändert werden, das heißt sie ist "benutzerbestimmbar".

Im Gegensatz dazu hat der Benutzer beim festgelegten Zugriff keine Einflußmöglichkeit auf die Gestaltung der Zugriffe. Hier wird der Zugriff eines Subjektes auf ein Objekt einzig und alleine davon bestimmt, ob das Subjekt die Ermächtigung zum Zugriff auf den Sensitivitätsgrad besitzt, mit dem das Objekt versehen ist. Dazu ist es erforderlich, daß

- Objekte mit einem Kennzeichen versehen werden können, das ihre Einstufung kennzeichnet, und

- Subjekte mit einem Kennzeichen versehen werden können, das ihre Ermächtigung zum Zugriff auf einen Sensitivitätsgrad oder einen Bereich von Sensitivitätsgraden ausdrückt.

Das Verhältnis zwischen Subjekten und Objekten wird durch zwei Regeln festgelegt, die als "einfache Sicherheitseigenschaft (simple security property)" und "*-Eigenschaft (star property)" bezeichnet werden. Etwas vereinfacht dargestellt (das heißt ohne Betrachtung der Kategorien), legen diese Regeln fest, daß

- ein Subjekt nur dann aus einem Objekt lesen darf, wenn die Ermächtigung des Subjektes gleich oder höher ist als die Einstufung des Objektes (einfache Sicherheitseigenschaft);

- ein Subjekt nur dann in ein Objekt schreiben darf, wenn die Einstufung des Objektes gleich oder höher ist als die Ermächtigung des Subjektes (*-Eigenschaft).

Die Einhaltung dieser Regeln stellt sicher, daß sensitive Daten nicht bloßgestellt oder unbefugt herabgestuft werden können.

Die Sicherheitspolitik einer Organisation wird normalerweise in einer benutzernahen Terminologie ausgedrückt, Diese Formulierungen reichen wegen der fehlenden Eindeutigkeit nicht aus, um darauf eine TCB mit einem hohen Anspruch an Vertrauenswürdigkeit aufzubauen. Es ist deshalb erforderlich, die Sicherheitspolitik, insbesondere die Regelungen für den Zugriff auf sensitive Daten, in einer mathematisch präzisen Form darzustellen. In den TCSEC wird diese Form als "Formal Security Policy Model" bezeichnet.

Grundlage ist das Konzept des Referenzmonitors

Die korrekte Durchführung von Zugriffen ist die Voraussetzung für die Realisierung vertrauenswürdiger DV-Systeme. Grundlage für die Erfüllung dieser Forderung und auch Ausgangspunkt für die Bewertungskriterien ist das Konzept des sogenannten "Referenzmonitors" (Abb. 1). Ein Referenzmonitor ist eine gedachte Komponente, die auf der Grundlage einer vorgegebenen Sicherheitspolitik darüber entscheidet, ob ein Subjekt auf ein Objekt zugreifen darf und welche Operationen es auf diesem Objekt ausführen darf (zum Beispiel lesen, schreiben, ausführen). Der Referenzmonitor kann seine Aufgabe nur dann erfüllen, wenn er bei jedem Zugriffswunsch eines Subjektes auf ein Objekt aufgerufen wird, wenn er gegen Veränderungen geschätzt ist und korrekt arbeitet.

Relevant ist die Trusted Computing Base

Die Realisierung eines Referenzmonitors in Hard-, Firm- oder Software wird als "Sicherheitskern" bezeichnet. Zusätzlich zu den Funktionen, die im Sicherheitskern realisiert werden müssen, gibt es weitere Funktionen, die sicherheitsrelevant sind, wie zum Beispiel

- Identifizierungs- und Authentisierungsfunktionen,

- Betriebsfunktionen und

- Administrationsfunktionen.

Eine Überprüfung aller sicherheitsrelevanten Funktionen auf korrekte Arbeitsweise wird erst dann mit Aussicht auf Erfolg möglich, wenn das Produkt in geeigneter Weise strukturiert ist. Den TCSEC liegt deshalb die Vorstellung zugrunde, daß ein Produkt im Idealfall so strukturiert ist, daß seine sicherheitsrelevanten Teile klar von den nicht-sicherheitsrelevanten abgegrenzt werden können. Der sicheheitsrelevante Teil des Produkts wird in den TCSEC als "Trusted Computing Base, TCB" bezeichnet (Abb. 2). Die Realisierung einer TCB in dieser Idealform ist praktisch nur im Rahmen der Neuentwicklung eines Betriebssystems möglich, ein nachträglicher Einbau einzelner

Sicherheitsmechanismen in vorhandene Betriebssysteme führt lediglich zu Zwischenlösungen mit eingeschränkten Sicherheitseigenschaften, die jedoch für bestimmte Anwendungsfälle durchaus ausreichen können.

Das Vertrauen in die korrekte Wirkungsweise der realisierten Sicherheitsfunktionen und der dafür entwickelten Mechanismen hängt entscheidend von der Qualität ihrer Realisierung ab. Eine nachträgliche Überprüfung dieser Qualität durch Analysen und Tests, insbesondere auch durch Penetrationstests, reicht für Produkte mit hohen Sicherheitsforderungen nicht mehr aus. Die TCSEC fordern deshalb für solche Produkte den Einsatz formaler Methoden zur Spezifikation und Verifikation der TCB. Ausgangspunkt ist dabei ein formales Modell der Sicherheitspolitik, die durch die TCB durchgesetzt werden muß. Für die TCB muß eine formale Top-Level-Spezifikation erstellt werden, und es muß gezeigt werden, daß diese Spezifikation konsistent zu dem formalen Modell der Sicherheitspolitik ist. Weiterhin muß gezeigt werden, daß die Abbildung der Top-Level-Spezifikation auf den Quellcode nachvollziehbar ist. Das Ergebnis dieser Vorgehensweise wird als "Verified Design" bezeichnet; es ist mit den gegenwärtig zur Verfügung stehenden Spezifikations- und Verifikationsverfahren erreichbar. Langfristig wird eine formale Verifikation des implementierten Codes der TCB angestrebt, diese Möglichkeit der sogenannten "Verified Implementation" ist beim gegenwärtigen Stand der Technik im Bereich Spezifikation/Verifikation noch nicht möglich.

wird fortgesetzt

Literaturhinweise

(1) "Department of Defense Trusted Computer System EvaIuation Criteria"; Department of Defense Standard DoD 5200.28-STD (Dezember 1985).

(2) "Trusted Network Interpretation of the Trusted Computer System Evaluation Criteria"; National Computer Security Center NCSC-TG-005 Version-1 (Juli 1987).