Zugriffskontrollmodell: DAC (Discretionary Access Controll) | Discretionary Access Controll
> Zugriffskontroll auf Objekte basierend auf der Identität der Subjekte
-> Objektbezogene Sicherheitseigenschaften, aber keine Systemweiten
> Benutzerdefinierte Rechtsvergabe an Objekte
-> Benutzer mit bestimmten Rechten an Objekten kann entsprechende Rechte an andere Subjekte vergeben
> Fast alle Betriebssystem unterstützen DAC
Beispiel: Zugriffsmatrix-Modell |
Zugriffskontrollmodelle | > Mandatory Access Control (MAC)
> Role Based Access Control (RBAC)
> Attribute Based Access Control (ABAC)
> Discretionary Access Controll (DAC) |
Mandatory Access Control (MAC) | > Systembestimmte (regelbasierte) Festlegung der Zugriffskontrolle
> Benutzerdefinierte Rechte werden durch systembestimmte überschrieben
> Beispiele: Bell-LaPadula, BIBA, Chinese-Wall |
Role Based Access Control (RBAC) | > Definition von Rollen mit bestimmten Rechnten und Zuordnung von Subjekten zu Rollen
> kann sowohl MAC als auch DAC Richtlinien durchsetzen
Ziel: effektive, skallierende und effiziente Rechnerverwaltung
Ansatz: Aufgabenorientierte (dynamische) Rechtevergabe durch Rollen
Rolle: beschreibt Aufgabe und die damit verbundenen Berechtigungen
Nachbilden von Organisationsstrukturen in Unternehmen (vgl. Organigramm) mit Benutzer S und Rollen R und Zugriffsrechten P
Rechte werden vereerbt in Hirachien
Prinzipien wie: NEED-TO-KNOW oder SEPERATION-OF-DUTY lassen sich gut abbilden |
Attribute Based Access Control (ABAC) | > Zugriffskontrolle über Attribute die in Policies festgelegt sind
Kontrolle von Zugriffsoperationen eines Subjekts auf ein Objekt anhand:
- Attribute des Subjekts, Attribute des Objekts, Umgebungsbedingungen
- Policy beschreibt Regeln für Attribute und Bedingungen
Subjekt muss seine Attribute nachweise
- Anonyme Nachweise möglich (bspw. Anonymous Credentials)
ABAC-Standard: eXtrensible Acces Control Markup Langauge (XACML) |
Zugriffskontrollmatrix-Modell | > Matrix beschreibt Rechte von Subjekte an Objekte
> Menge von Objekten: 0, zB Datei
> Menge von Subjekten: S, zB Nutzer
> Menge von Rechten: R, (zB read, write, execute,...)
> Matrix bestimmt Abbildung M_t : S x 0 -> 2^R, die Zugriffsrechte zu einem Zeitpunkt t bestimmt
Realisierung durch:
Access Control List (ACL):
> Spaltenweise Speicherung der Matrix (Objekt Sicht)
Capability List: zeilweise Speicherung der Matrix (Subjekt Sicht)
Vorteil: Rechte an Objekt sind effizient bestimmtbar
Nachteil:
- Schlechte Skalierbarkeit bei dynamischen Subjektmengen
- Üblicher weise dünn besetzt
- Tabellenform verbraucht viel Speicher (ineffizient) |
Zugriffskontrollmatrix-Modell: Vor und Nachteile | Vorteile:
> sehr einfach und intuitiv nutzbar, flexibel einsetzbar
> einfach zu implementieren
> Grundlage der Zugriffskontrolle fast aller Betriebssysteme
Nachteile:
> Skaliert sehr schlecht
> kann dynamische Rechte nicht gut Abbilden
> Rechtevergabe bzw. -rücknahme relativ komplex |
Bell-LaPadula Modell | Ziel:
- EinfacheRegelkn zur Beschränkung von Informationsflüssen
- Schutz der Vertraulichkeit von Infromationen durch systembestimmte Regeln
- Umsetzung von Mandatory Access Control (MAC)
Ansatz: Multi-Level-Security
- Objekte und Subjekte haben Sicherheitsklassen zugeordnet
- Labels entscheiden über Zugriffrechte
- Erweiterung der DAC-Regeln einer Zugriffsmatrix M_t und MAC-Regeln
>> Simple-Security-Property
>> Strong Tranquility Regel
>>>> Keine Änderung der Subject-Cleareance bzw. Object-Classification während Systemlaufzeit |
Bell-LaPadula Modell:
VOR- und NACHTEILE | Vorteile:
- Einfach zu implementierends Modell
- gut geeignet zum Nachbilden hierachischer Informationsflüsse
- einige Unix-System bieten Erweiterungen an
Nachteile:
- Invormation/Objekte werden sukzessive immer höher eingestuft
- Blindes Schreiben
>> Subjekt darf unter Umständen Objekteschreiben aber nicht mehr lesen
>> Problem der Integritätsprüfung
- keine Modellierung von "Covert Channels" |
Capability List | - Zeilenweise Speicherung der Zugriffskontrollmatrix
- Speichert für alle Subjekte eine Liste von Objekten samt Zugriffsrechten
> Capability ist eine Art Zugriffsticket auf Objekte
> Capability-Besitz berechtig zur Wahrnehmung der Rechte
Vorteil: Alle Rechte eines Subjekts sind effizient bestimmbar
Nachhteil: Rechte an einem Objekt sind aufwändig zu bestimmen
Heute:
Kombo:
ACL für ersten Zugriff
dann Ausstellen einer Capability |
Attribute Based Access Control (ABAC)
VOR- und NACHTEILE | Vorteile:
- Dynamisch: Zugriffsrecht können leicht angepasst werden
- Feinregular: Erstellung detaillierter Regeln leicht möglich
- Kontextabhängig: Entscheidungen ermöglichen Mehrfaktorentscheidungen
- Einfache Administration: gut für große Unternehmen, bei denen ACL oder Rollenmanagement zu komplex ist
Nachteile:
- Aufwand für Vergabe und Verwaltung von Attributen
- Gefahr der Attributexplosion
- Komplex zu analyisieren (und systematische Probleme zu korrigieren) |
Umsetzung der Zugriffskontrolle | - Policy Administration Point (PAP): Verwaltung von Policies
- Policy Decision Point (PDP): Berechtigungskontrolle, überprüft Anfragen anhand von Policies und trifft
Autorisierungsentscheidungen
- Policy Enforcement Point (PEP):
Zulässigkeitskontrolle, leitet Anfragen an PDP weiter und setzt dessen Entscheidungen durch
- Policy Information Point (PIP):Bereitstellung von Attributwerten
- Policy Retrieval Point (PRP): Speicherung und Bereitstellung
der Policies (meist Datenbank oder Dateisystem)
1. Subjekt -> PEP : Subjekt Anfang für Zugriff auf Objekt
2. PEP <-> PDP : Darf Subjekt auf Objekt zugreifen?
3a. PDP-> PRP : Policy Überprüfung
>> PRP <-> PAP : Policy Verwaltung
3b. PDP <-> PIP : Abruf zusätzlicher Attribute
4. PDP -> PEP : Zugriff erlaubt/verboten
5. PEP -> Objekt : Zugriff auf Objekt (nicht/) möglich |