Safety und Security: Schutz von Computersystemen
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 10,5 KB
Safety und Security in Computersystemen
Ein Computersystem bietet Dienstleistungen für menschliche Benutzer innerhalb eines Unternehmens oder einer Organisation an. Einige Arten von Dienstleistungen sind:
- Management von Informationen (z. B. finanzielle Transaktionen, persönliche Dateien etc.)
- Unterstützung für andere Tätigkeiten (z. B. industrielle Prozesse, Verkehrsleitsysteme etc.)
- Dienstleistungen in eingebetteten Vorrichtungen (z. B. Autos, Roboter etc.)
Ressourcen und Einschränkungen
Die Ressourcen eines Computersystems sind begrenzt: Es gibt einen festen Preis für ihren Einsatz, der in Form von Tarifen oder Benutzungsgebühren berücksichtigt werden kann. In jeder Gesellschaft oder Organisation gibt es Einschränkungen bei der Verwendung von Informationen, wie das Recht auf Privatsphäre oder das Eigentumsrecht an Daten. In solchen Fällen ist es notwendig, den Benutzerzugriff auf Systeminformationen zu beschränken.
Information Security
Information Security gewährleistet die Integrität, Verfügbarkeit und Vertraulichkeit von Informationen in einem Computersystem. Sie ermöglicht die Unterscheidung verschiedener Klassen von Benutzern mit unterschiedlichen Zugriffsrechten für die Systemressourcen.
Computer-Sicherheit
Die Computersicherheit ist ein weites Feld, das unter anderem Arbeitszeiten von Personen, die physische Sicherheit der Geräte sowie die innere Sicherheit der Maschine und des Betriebssystems umfasst.
Äußere Sicherheit
Diese bezieht sich auf die Einrichtungen des EDV-Systems und den Zugang von Menschen zum Informationssystem. Sie umfasst zwei Bereiche:
- Physical Security: Schutz der Einrichtungen durch Präventionsmaßnahmen, Einziehung von Forderungen und Zutrittskontrollsysteme.
- Sicherheit der Policies und Mechanismen: Festlegung von Berechtigungsstufen, Verantwortlichkeiten, Zugangsmethoden und Kommunikationsprotokollen.
Innere Sicherheit
Die innere Sicherheit bezieht sich auf die Schaltung des Systems oder Fragen der Sicherheit des Betriebssystems.
Schutz (Protection)
Ein Teil der inneren Sicherheit betrifft die Kontrolle von Programmen, Prozessen oder die Nutzung der Ressourcen eines Computersystems.
Arten von Bedrohungen für die Systemintegrität
Gefahren können zufällig oder vorsätzlich auftreten:
- Fahrlässiger Gebrauch oder Missbrauch
- Physische Schäden am System
- Unbefugte Benutzung
- Sabotage (vorsätzliche Störung des Systems)
Intrusion: Ein unerlaubter oder fehlerhafter Eintrag in das System, auch als Penetration bezeichnet.
Mögliche Auswirkungen der Bedrohungen
- Nicht autorisierte Offenlegung
- Vernichtung von Informationen
- Missbrauch von Systemdiensten
- Physische Schäden am System
- Abbau der System-Performance
- Denial-of-Service (Zugriffsverweigerung für autorisierte Benutzer)
Einige Einbruchsversuche basieren auf Opportunismus, der Suche nach nützlichen Informationen oder gezielter Programmierung. Dazu gehören:
- Diebstahl von Kennwörtern oder Spionage
- Vernachlässigung und Garbage Collection (Ausnutzung von Datenresten)
- Kontrolle der Systeminformationen und Lauschangriffe
- Trial and Error: Einsatz von Passwort-Analysatoren und Decodern
- Köder-Programme: Trojanische Pferde, List durch Täuschung
- Nutzung von Hintertüren (Backdoors) oder Sicherheitslöchern im System
Methoden der Benutzerauthentifizierung
Passwörter
Passwörter sind der beliebteste und wirtschaftlichste Mechanismus. Sie sind einfach zu implementieren und benötigen keine zusätzliche Hardware. Allerdings erfordern sie Anstrengungen der Benutzer; Diebstahl oder Erraten sind schwer zu entdecken. Es sind zusätzliche Mechanismen nötig, um ein gewisses Maß an Sicherheit zu gewährleisten.
Artefakte
Magnetkarten, Schlüssel etc. sind bequem zu verwenden und sozial akzeptabel. Sie sind oft Multifunktionsgeräte, vermeiden Trojaner und sind schwer zu replizieren. Ihr Verlust oder Diebstahl ist leicht zu erkennen.
Biometrische Methoden
Physiologische Merkmale (Fingerabdruck, Retina-Gefäße) oder Verhaltensmuster (Signatur, Sprachmuster etc.). Diese erfordern teurere Hardware, sind praktisch unmöglich zu replizieren, können aber eine hohe False Rejection Rate aufweisen und werden teils sozial abgelehnt.
Optimierung von Passwort-Systemen
Leicht zu merkende Passwörter sind oft leicht zu erraten. Mögliche Lösungen sind:
- Zufällige, automatisch generierte Passwörter (schwer zu merken, werden oft notiert).
- Multilevel-Passwörter je nach Art der Dienstleistung.
- Dynamic Challenge: Ein Rätsel, das nur dem Benutzer bekannt ist.
- Beschränkung der Fehlversuche (mit Abschaltung des Terminals oder Accounts), wobei das Risiko von Denial-of-Service besteht.
- Verfall von Passwörtern: Ablauf nach einer bestimmten Zeit.
Schutzmaßnahmen im Betriebssystem und Hardware
Festlegung von Privileg-Ebenen durch Schaltungen:
- Dual-Betrieb-Aufzeichnung
- Schutz von Memory-Segmenten
- Schutz des Zugangs zu Peripheriegeräten
- Management von Ereignissen (Interrupts, Timer etc.)
Weitere Maßnahmen umfassen die saubere Lagerung (Löschen von Informationen durch Garbage Collection), Audit-Protokolle des Betriebssystems, Replikation von Informationen (Backup) und die Prüfung der Informationsintegrität (Prüfsummen, Fehlerkorrektur-Codes) mittels Antivirus-Software.
Kryptographie
Verschlüsselung bei der Übertragung und Speicherung sehr sensibler Daten wie Passwörter oder persönlicher Dateien.
Formales Modell des Schutzes
Im Bereich Schutz unterscheidet man zwischen:
- Subjekten: Aktive Einheiten wie Prozesse oder Benutzer.
- Objekten: Ressourcen oder Informationen, auf denen Berechnungen ausgeführt werden.
Jedes Objekt unterstützt spezifische Operationen. Subjekte und Objekte können während der Systemlaufzeit entstehen oder verschwinden.
Zugriffsrechte: Die Befugnis eines Subjekts, eine Operation auszuführen. Schutzdomäne: Eine Menge von Zugriffsrechten, dargestellt als Liste von Paaren aus Objekten und Rechten.
Schutzdomänen und Zugriffsmatrix
Die Menge der Schutzdomänen wird als Zugriffsmatrix bezeichnet. Eine Domäne kann ein Benutzer (z. B. in UNIX), eine Benutzergruppe, ein Prozess oder ein Verfahren (z. B. Hydra) sein. Auch Schutzdomänen und Zugriffsrechte können selbst Objekte sein.
Beispiel: Eine Zugriffsmatrix für den Lebenszyklus eines Prozesses (Editieren, Kompilieren, Ausführen) dient dem Grundsatz des minimalen Bedarfs.
Umsetzung von Schutzdomänen
Da die Zugriffsmatrix oft groß und leer ist, nutzt man effizientere Mechanismen:
- Implizite Regeln
- Zugriffshierarchien
- Encapsulation (Kapselung in Programmiersprachen)
- Access-Listen (ACLs)
- Capabilities (Fähigkeiten)
- Schlüssel und Schlösser
Implizite Regeln
In UNIX hat jedes Objekt einen Eigentümer. Bestimmte Aktionen sind nur dem Eigentümer gestattet. Der Benutzer wird authentifiziert und einer Schutzdomäne (UID) zugewiesen.
Zugriffshierarchie
Hierarchische Ebenen (z. B. Supervisor- vs. User-Modus). Ein Beispiel sind die Schutzringe (MULTICS), bei denen ein Prozess auf Ebene k auch die Rechte der darüberliegenden Ebenen besitzt. Dies ist jedoch unflexibel für nicht-hierarchische Strukturen.
Access-Listen (ACLs)
Jedes Objekt führt eine Liste der Subjekte und deren Rechte. Leere Zellen der Matrix werden nicht gespeichert. Varianten sind Standardrechte oder Playlists zur expliziten Ablehnung.
Capabilities
Eine Capability fungiert wie ein Ticket oder ein geschützter Zeiger auf ein Objekt. Ein Prozess besitzt eine Liste von Capabilities. Der Besitz allein berechtigt zum Zugriff, ohne zusätzliche Prüfung. Das System muss die unbefugte Erstellung von Capabilities verhindern (z. B. durch markierten Speicher, segmentierten Speicher oder Verschlüsselung).
Vergleich: Capabilities vs. Access-Listen
- Vorteile Capabilities: Schnellerer Zugriff, einfache Übertragung von Rechten zwischen Prozessen.
- Nachteile Capabilities: Schwieriger Widerruf von Rechten und schwere Übersicht, wer Zugriff auf ein bestimmtes Objekt hat.
Schlüssel und Schlösser
Ein Zwischenmechanismus: Objekte haben Schlösser (Bit-Muster), Domänen haben Schlüssel. Ein Zugriff erfolgt nur bei Übereinstimmung. Dies vereinfacht das Löschen von Objekten im Vergleich zu reinen Capabilities.
Schädliche Software und Sicherheitsziele
Malware: Programme wie Würmer und Viren, die darauf abzielen, die Systemsicherheit zu verletzen oder das System zu sabotieren.
Ziele des Sicherheitssystems:
- Effektive Ressourcennutzung ermöglichen
- Bedrohungen verhindern oder vermeiden
- Einbrüche erkennen und verfolgen (Audit)
- Robustheit und Wiederherstellung nach Verletzungen
- Minimale Ressourcenkosten und geringe Nutzerstörung
Design-Prinzipien nach Saltzer und Schröder
- Minimales Privileg: Nur die absolut notwendigen Rechte vergeben.
- Separation von Privilegien: Mehrere Bedingungen für kritische Funktionen.
- Kleinsten gemeinsamen Mechanismus: Gemeinsame Ressourcen minimieren.
- Einfachheit des Mechanismus: Unnötige Komplikationen vermeiden.
- Vollständige Vermittlung (Complete Mediation): Jeder Zugriff muss geprüft werden.
- Sichere Standardwerte: Zugriff standardmäßig verweigern.
- Offenes Design: Sicherheit darf nicht allein auf Geheimhaltung basieren.
- Akzeptanz durch Nutzer: Das System muss einfach und zumutbar sein.
- User-Validierung: Mechanismen zur Authentifizierung (Passwort, Artefakt, Biometrie).