Schutz von Objekten in verteilten Umgebungen

Kommentieren Drucken
Teil 50 von 71 aus der Serie "Professionelle Datenkommunikation"
Alle Artikel der Serie "Professionelle Datenkommunikation":

In dieser und den nächsten Folgen soll der Leser systematisch an die Sicherheitsprobleme in Netzen und an mögliche Lösungen herangeführt werden. Dabei muss allerdings im Rahmen des Objektbegriffes wiederum eine gewisse Allgemeinheit geschaffen werden. Diese Herangehensweise an die Problematik ist vielleicht ungewöhnlich, hat aber einen entscheidenden Vorzug: es wird nämlich schnell klar, dass es vollständige Sicherheit in einem Kommunikationssystem nicht geben kann. Danach werden mögliche Bedrohungen und Schutzmaßnahmen in den einzelnen Schichten mehr informell diskutiert. Eine besondere Bedeutung kommt dabei den kryptographischen Verfahren zu.

Im Vordergrund des modernen Netzbetriebes steht normalerweise zunächst die Sicherung der Funktionalität der Datenübertragung unter verschiedenen Randbedingungen wie Konsistenz, Geschwindigkeit, Zuverlässigkeit im übertragungstechnischen Sinne usf.

Allerdings sind die Komponenten eines Rechensystems Träger von Information, die im Rechensystem gespeichert und verarbeitet werden. Diese Informationen haben im Allgemeinen einen Wert, der auf verschiedene Arten qualifiziert und quantifiziert werden kann. Dieser Wert Muss geschützt werden.

Die heute von den Herstellern gelieferten Sicherheitshilfsmittel sind oftmals in vielen Punkten unzulänglich. Dies wird aber oft als sehr bequemes Argument genommen, Sicherheitsaspekte ganz und gar zu vernachlässigen, weil man damit ein fehlendes Sicherheitskonzept völlig vertuscht. Dabei fängt Sicherheit beim Konzept an. »Ein bisschen sicher«, wo es gerade bequem, ist und »ein bisschen unsicher«, wo es unbequem erscheint ist absolut indiskutabel. Man kann über Sicherheitsstufen und Risiken sprechen, es ist auch unnütz, Geld zur Sicherung von Informationen auszugeben, die es überhaupt nicht wert sind. Sicherheit in Netzen hat aber auch ethische und gesetzliche Komponenten, wenn es z. B. um den Schutz personenbezogener Daten oder um den Schutz von Personen vor für diese ungeeignete Daten geht. Allerdings gibt es auch wirtschaftliche Aspekte. Und der Freiberufler, dem durch Sicherheitsmängel in einem kleinen PC-Netz die Arbeit von Tagen entgeht, wird ggf. verhältnismäßig mehr getroffen als der Großkonzern.

Grundsätzlich basiert Sicherheit auf einer Sicherheitspolitik, die besagt, was wann warum vor wem geschützt werden muss, oder, andersherum gesprochen, wer wann was warum inwieweit haben darf, um seiner Arbeit nachgehen zu können. Das kommt Ihnen bekannt vor? Nun, die Zielspezifikation der Benutzerverwaltung hängt unmittelbar mit der Sicherheitspolitik zusammen.

Dies führt letztlich zu einem Konzept von Sicherheitsstufen, deren Durchsetzung durch entsprechende Sicherheitsmechanismen geschehen muss.

Schutz von Objekten (allgemein)

Im allgemeinen spricht man im Zusammenhang mit Schutzsystemen, gleichgültig ob diese isoliert oder im Zusammenhang eines Kommunikationsverbundes zu sehen sind, immer von zwei »Parteien«, nämlich »Objekten«, die irgendwie benutzt werden und in diesem Zusammenhang geschützt werden müssen, und »Subjekten«, die diese Objekte benutzen. Das hat einfach seinen Grund darin, dass man sonst angesichts der Vielfalt der möglichen Ziele von Gefährdungen und Angriffen die Übersicht verliert. Die Objekte sind in den meisten Fällen allerdings keine Objekte nach einem strengen Objektbegriff, sondern allgemein Dinge aus einer realen oder abstrakten Welt – der Kölner würde dazu auch sagen, eben »Dinger«. Die Informationen in einem Rechensystem sind im allgemeinen Objekte oder hängen mit Objekten zusammen. Der Wert der Informationen, ob sie nun mit Objekten oder »Dingern« zusammenhängen, Muss geschützt werden.

Dies begründet Beziehungen, Relationen zwischen den Objekten, die innerhalb eines Systems existieren und den Subjekten (Benutzern) außerhalb eines Systems, die diese Objekte benutzen. Diese Beziehungen können mittels Zugriffsrechten formuliert werden.

Ein System (auch ein Verteiltes System aus Rechnern und einem Rechnernetz) kann durch seine Objekte und die Operationen auf diesen Objekten vollständig beschrieben werden. So werden z. B. die möglichen Dienstleistungen eines PCs im Rahmen der Benutzeroberfläche durch die Icons, die z. B. Programme repräsentieren (Objekte) und die möglichen Operationen (z. B. mit der Maus) vollständig beschrieben. Objekte und Operationen stehen dabei in einem Kontext, einem Zusammenhang, den man ganz oder teilweise sehen kann. So unterschiedlich wie die Objekte sind natürlich auch die zu diesen gehörigen Operationen. Auch die Subjekte können völlig unterschiedlicher Natur sein. Alle Benutzer einer Oberfläche sind aus dieser Sichtweise Subjekte. Ein Programm kann aber unterschiedliche Rollen annehmen: Wenn es von einem Benutzer aufgerufen wird, ist es Objekt. Sobald es beginnt, andere Programme, wie z. B. die Ein-Ausgabesteuerung zu benutzen, wird es selbst zum Subjekt. Dies ist eine sehr große Hürde beim Entwurf sicherer Systeme: Es nützt z. B. fast überhaupt nichts, die Zugriffsrechte zu Benutzeroberflächen und Programmen wunderbar zu definieren und durchzusetzen, wenn die zugrundeliegenden Systeme nicht ebenfalls wohldefiniert und sicher sind, weil jede Operation auf einer höheren Ebene eine Reihe von Operationen und Zugriffen auf unteren, nachgelagerten Schichten nach sich zieht. Dies hat man schon sehr früh bei der Gestaltung von unvernetzten Multiusersystemen lernen müssen.

Die Festlegung der Zugriffsrechte besteht dann im Allgemeinen aus einer Familie (Gruppe) von Relationen (Beziehungen) zwischen den Subjekten und den auf den Objekten definierten Operationen.

So wären z. B. alle Dateien Objekte, und die Operationen auf diesen Objekten sind z. B. Schreiben, Aktualisieren, Lesen, Ausführen, Erzeugen und Löschen. Die möglichen Operationen von auf einer Windows-Oberfläche dargestellten Objekten sind die in der Umgebung (durch Mausklick darstellbaren) aufzurufenden Aktionen. Die möglichen Operationen auf dem UDP sind Sendung und Empfang von Datagrammen usf.

Die Forderung nach Objekt-Schutz wird dadurch festgelegt, dass ein Subjekt nur die ihm durch die Relationen zugestandenen Operationen ausführt und sonst nichts. Objektschutz ist ohne einen Plan offensichtlich nicht zu realisieren: Wenn man nicht weiß, wer wann warum was wie machen darf, kann man offensichtlich keine Regeln für den Objekt-Schutz aufstellen. Ohne diese Regeln wird es wiederum schwerfallen, zu beurteilen, ob nun irgendetwas »sicher« ist oder nicht. Sicherheit ist wiederum relativ zu diesen Regeln zu sehen. Die Menge derartiger Regeln wird auch als Sicherheitspolitik bezeichnet. Wir kommen gleich darauf zurück.

Die Forderung nach der Objekt-Leistung eines Systems wird dadurch festgelegt, dass ein Subjekt die ihm zugeordneten Rechte auch ausüben kann, d.h. dass eine rechtmäßige Operation auch zum gewünschten Erfolg führt.

Die Objekt-Leistung stand im Vordergrund der Betrachtungen der bisherigen Kapitel, ging es doch meist darum, wie die Übertragung von Bits nun schnell, leistungsfähig und zuverlässig durchzuführen ist. Auch die Codierungsverfahren der Schicht 2 oder die Fehlerkorrekturverfahren in den Schichten drei und vier sind in diesem Rahmen zu sehen. Sie haben noch nichts mit »Datenschutz« zu tun.

Die Forderung nach Objekt-Schutz ist eine allgemeinere Formulierung der sonst üblicherweise verwandten Begriffe »Geheimhaltung von Daten«, »Datenintegrität«, »Datenschutz« und dennoch wesentlich schärfer. Bezüge lassen sich leicht herstellen: eine Information kann die Eigenschaft haben, dass sie solange einen bestimmten Wert hat, wie sie nur wenigen Subjekten bekannt ist. Also dürfen nur diese auf das diese Information tragende geschützte Objekt zugreifen, z. B. lesend. Sobald fremde Subjekte die Information erhalten, wird sie für die ursprünglichen Subjekte wertlos. Die Durchsetzung des Objekt-Schutzes impliziert also den »Datenschutz« für diese Information. Börsen-Insider-Informationen fallen unter diese Kategorie. Daran sieht man, dass die Ziele des Objekt-Schutzes nicht unbedingt ethischen oder gesetzlichen Richtlinien entsprechen müssen. Andererseits gibt es auch viele Objekte, die aus juristischen Erwägungen geschützt werden, obwohl sie eigentlich öffentlich bekannt sind.

Ein weiterer, oft auftretender Effekt ist der Wertverlust von Information über die Zeit. Die Wetterkarte von gestern hat vorgestern sehr viel Geld in der Erstellung gekostet, heute ist sie so wertlos wie das Wissen um den Bremer Vulcan-Börsenkurs von 1986. Der Wertverlust haftet den meisten Daten an..

So vielfältig die vorstellbaren Wertbegriffe und die in Rechensystemen vorkommenden Komponenten (Objekte) sind, so vielfältig sind auch die Angriffsmöglichkeiten.

Im Hinblick auf die Informations-Sicherheit sind hohe Anforderungen an die Relationenfamilie und an die Datenobjekte des Rechensystems zu stellen. Zunächst muss die Familie konsistent festgelegt werden. Dies ist jedoch nicht so einfach, da im Allgemeinen auch noch zusätzliche zeitliche Abhängigkeiten hinzutreten. Die Gewährung von Zugriffsrechten bezieht sich in vielen Fällen nämlich nur auf einen bestimmten Zeitraum. Es muss unbedingt möglich sein, Benutzerrechte für eingeschränkte Zeiträume zu vergeben. Im Rahmen eines Kommunikationssystems kommt es darüber hinaus vor, dass ein Objekt im Laufe seiner Lebenszeit mehrere Besitzer hat.

Die Operationen auf den Datenobjekten müssen so definiert sein, dass Informationsflüsse zwischen den Objekten des Systems einerseits und zwischen dem System und seiner Umwelt andererseits durch Kontrollen von Operationsausführungen kontrolliert werden können.

Die Operationen müssen schließlich so definiert werden, dass die Möglichkeiten, Informationen zu erschließen, durch Kontrollen von Operationsausführungen kontrolliert werden können.

Die Forderung nach Informationssicherheit ist dann erfüllt, wenn Konflikte, welche sich aus den Forderungen nach Informations-Schutz und den Forderungen nach Informations-Leistung, welche mit den o.a. Begriffen nach Objekt-Schutz und Objekt-Leistung über den Informationsgehalt der Objekte korrespondieren, durch Rechtsregeln aufgelöst und diese Rechtsregeln durchgesetzt werden können. Das Objekt selbst ist ja meistens uninteressant, wenn es um die in ihm enthaltenen Informationen geht.

Die durch die Relationenfamilie (Sicherheitspolitik) festgelegten Rechtsregeln gehen davon aus, dass die Subjekte in der Umgebung des Rechensystems sowie die Subjekte und Objekte im Rechensystem identifiziert werden können. Sie gehen weiter davon aus, dass die Objekte des Systems definierte und bekannte Eigenschaften besitzen. Diese Voraussetzungen sind für ein sicheres und dennoch benutzbares Rechensystem unerlässlich. Andererseits sind gerade diese Voraussetzungen in Netzen nicht immer zu erfüllen.

Jede Beobachtung und jede Beeinflussung des Rechensystems ist ein Zugriff. Zugriffe können autorisiert (dies bedeutet, es gibt ein identifizierbares und zum betrachteten Zeitpunkt eindeutig identifiziertes Subjekt, welches im Rahmen der Sicherheitspolitik das Recht hat, den Zugriff in einer definierten Weise auszuüben) sein oder nicht. Sicherheit bedeutet dann, dass jeder Zugriff autorisiert ist. Einen nichtautorisierten Zugriff bezeichnen wir auch als Angriff.

Für innere Maßnahmen gegen Angriffe ist es wichtig, die Angriffe als solche zu erkennen. Maßnahmen zur Erkennung von Angriffen sind Prüfung der Authentizität (Echtheit) von Subjekten und Objekten sowie Maßnahmen zur Prüfung der Autorisierung (dürfen sie tun, was sie tun wollen?). Angriffe werden insbes. dann schlecht erkannt, wenn sie passiv sind (z. B. Abhören).

Geschlossene Rechensysteme (isoliert, ohne Verbindung zu einem Netz oder sonstigem Kommunikationssystem, nur Rechner mit Terminals und Benutzern) kann man wie folgt charakterisieren:

  • Alle Zugriffe zum System sind Ausführungen von Aufträgen, wobei ein Auftrag z. B. ein Programm über den Objekten des Systems ist.
  • Jede Auftrags-Ausführung beginnt mit der Authentizitätsprüfung des Auftraggebers.

In diesem Sinne ist z. B. ein normaler PC noch nicht einmal ein geschlossenes System, weil er die letzte Bedingung nicht erfüllt.
Über einem Rechnerkern in geschlossenen Systemen liegt die Ebene des Betriebssystems, welches die Objekte und Operationen auf ihnen letztlich zum Leben erweckt. Ein Subjekt, z. B. ein Benutzer, kann diese Objekte nicht in ihrem Objektraum direkt benutzen, sondern vermag nur auf deren Zugriffsrechte zuzugreifen. Ein Angriff ist der Versuch, ohne Zugriffsrechte an Objekte und Operationen zu gelangen.

Ein geschlossenes System ist unempfindlich gegenüber passiven Angriffen. Für die Sicherung gibt es geeignete Mechanismen, wie z. B. Capabilities (Zugriffsobjekte), die von einem sicheren und vertrauenswürdigen Verwalter nach der Authentizitätsprüfung an den Auftraggeber verliehen werden und ohne die kein Zugang zu Objekten möglich ist. Der Auftraggeber kann Capabilities unter gewissen Randbedingungen einschränkend weitergeben. Die Capabilities verlassen jedoch das Rechensystem nicht und sind in ihrer inneren Struktur dem Auftraggeber auch verdeckt. Die Möglichkeit zur Definition von Zugriffsobjekten ist heute in vielen modernen Betriebssystemen gegeben.

Ein anderer Ansatz ist der des Sicherheits-Kerns. Hier geht man davon aus, dass nicht alle Objekte Sicherheits-relevant sind, sondern nur ein Teil. Die Sicherheitsanforderungen werden mit einer kleinen Anzahl von Systemkomponenten durchgesetzt; diese Komponenten führen alle sicherheitsrelevanten Operationen aus bzw. kontrollieren die Autorisierung zu ihrer Ausführung.

Allgemeine Richtlinien für die Gestaltung geschlossener Systeme einschließlich Sicherheitsanforderungen und Sicherheitsstufen werden von öffentlichen Stellen angegeben. In den USA sind es die »bunten Bücher« (Orange Book usf.), die zu bestimmten Sicherheitsstufen leiten. In Deutschland ist hierfür das Bundesamt für Sicherheit in der Informationsverarbeitung BSI zuständig. Insbes. werden hier in Zusammenarbeit mit anderen Organisationen Tests durchgeführt, deren Ziel die Aufdeckung von Sicherheitsmängeln ist. Werden keine Mängel gefunden, können Zertifikate über die Erreichung bestimmter Sicherheitsstufen ausgestellt werden.

In der Praxis müssen Sicherheitsanforderungen in ein Gesamtkonzept eingebettet werden, welches auch den mechanischen Schutz, den Schutz vor Bränden usf. berücksichtigt. Dies wollen wir jedoch i.f. nicht weiter verfolgen.

« Teil 49: Sicherheitsprobleme und -lösungen in NetzenTeil 51: Objekte in vernetzten und verteilten Systemen »


zugeordnete Kategorien: LAN
zugeordnete Tags:

Sie fanden diesen Beitrag interessant? Sie können



Anmerkungen, Fragen, Kommentare, Lob und Kritik:

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*

.