Authentifizierung und Autorisierung
Benutzer (User)
Der Benutzer (user) ist die digitale Repräsentation einer realen Person (digitale Identität)
- Eine reale Person kann mehrere digitale Identitäten haben
- Eine digitale Identität sollte zu genau einer Person gehören
- Man unterscheidet zwischen
- User-Management – Benutzerverwaltung in einem System
- Identity-Management – Benutzerverwaltung über Systeme hinweg
- Identity and Access Management – User- + Identity-Management
Im Zusammenhang mit IT-Sicherheit und Cyber-Security bezieht sich der Begriff „Benutzer“ bzw. „User“ auf die digitale Abbildung einer realen Person in einem IT-System. Der User ist wichtig für die Realisierung von Authentifizierung und Autorisierung.
- Authentifizierung: Nutzer müssen ihre Identität gegenüber digitalen Systemen nachweisen, um Zugriff zu erhalten. Dies erfolgt in der Regel über Benutzernamen, Passwörter, Zwei-Faktor-Authentifizierung oder biometrische Merkmale. Eine effektive Authentifizierung ist wichtig, um sicherzustellen, dass nur autorisierte Benutzer auf Systeme zugreifen können.
- Autorisierung: Nutzer haben unterschiedliche Zugriffsrechte, die bestimmen, auf welche Ressourcen, Daten oder Funktionen sie zugreifen können. Es ist wichtig, dass diese Rechte entsprechend den Anforderungen und der Verantwortung eines Nutzers richtig konfiguriert sind. Schwachstellen in der Zugriffskontrolle können zu unautorisiertem Zugriff und Datenverlust führen.
Nutzermanagement und Identity-Management sind zwei verwandte Konzepte im Bereich der IT-Sicherheit, die sich jedoch auf verschiedene Aspekte der Verwaltung von Benutzeridentitäten und Zugriffsrechten konzentrieren.
- Nutzermanagement: Das Nutzermanagement bezieht sich auf die Verwaltung von Benutzerkonten und Zugriffsrechten in einem IT-System. Es umfasst Aufgaben wie die Erstellung, Aktualisierung und Löschung von Benutzerkonten, die Zuweisung von Zugriffsrechten zu Ressourcen und die Verwaltung von Passwörtern. Nutzermanagement befasst sich hauptsächlich mit der technischen Seite der Benutzerverwaltung und stellt sicher, dass Benutzer angemessenen Zugriff auf Systeme und Daten haben. Es kann auch Funktionen wie die Benutzerauthentifizierung, Passwortrichtlinien und die Überwachung von Benutzeraktivitäten umfassen.
- Identity-Management: Das Identity-Management (IDM) konzentriert sich auf die Verwaltung der digitalen Identität von Benutzern über verschiedene IT-Systeme hinweg. Es geht über das einfache Verwalten von Benutzerkonten hinaus und befasst sich mit der einheitlichen und konsistenten Verwaltung von Identitäten und ihren Attributen. Es umfasst Funktionen wie das Identitätslebenszyklusmanagement (Erstellung, Änderung, Löschung von Identitäten), Single Sign-On (SSO), Zugriffsrechteverwaltung und die Verknüpfung von Identitäten mit anderen Identitätsquellen (z. B. Active Directory, LDAP). Ein IDM ermöglicht die zentrale Verwaltung von Identitätsinformationen und deren Zugriffsrechten über verschiedene Systeme hinweg, um die Effizienz, Sicherheit und Benutzerfreundlichkeit zu verbessern.
In vielen Fällen werden Nutzermanagement und Identity-Management jedoch gemeinsam betrachtet und als Teil eines umfassenderen Konzepts angesehen, das als Identity and Access Management (IAM) bezeichnet wird.
Identifikation
- Mögliche Merkmale
- Vorname, Nachname, Geburtsort und Geburtstag
- Nutzername (Name oder E-Mail-Adresse der Person)
- Sozialversicherungsnummer
- Steuer-ID
- Identifikation muss immer innerhalb eines Systems eindeutig sein
Authentisierung
Authentisierung: Nachweis einer Person, dass sie tatsächlich diejenige Person ist, die sie vorgibt zu sein
- erster Schritt zur Prüfung der Identität
- Person behauptet aktiv eine bestimmte Identität
- Person legt Nachweise vor, die ihre Identität bestätigen
Beispiel: Bei einer Fahrkartenkontrolle lege ich mein personalisiertes 1. Klasse-Ticket und meinen Personalausweis vor
Beispiel: Bei einem IT-System tippe ich Benutzernamen und Passwort ein
Grundsätzliche Möglichkeiten zur Authentisierung
- Wissen: Passwort, Schibboleth
(Something you know) - Besitz: Chipkarte, Private Key, Schlüssel
(Something you have) - Persönliche Eigenschaft: Foto, Fingerabdruck
(Something you are) - Kombinationen aus 1. – 3.
- Delegation: Zertifizierungsstelle
(Someone who knows you)
Authentisierung: Wissen
- Nur die echte Person hat das Wissen
Passwort, PIN, Antwort auf Sicherheitsfrage, … - Wissen …
- … kann vergessen werden
- … kann dupliziert, verteilt, weitergegeben und verraten werden
- … kann herausgepresst werden (Folter, Gewaltandrohung)
- … kann erraten oder mitgelesen werden (Keylogger, Shoulder-Surfing)
- … kann unsichtbar transportiert werden
Authentisierung: Besitz
- Nur die echte Person besitzt das Ding
Personalausweis, SIM-Karte, Smartcard, USB-Stick, … - Besitz …
- … ist mit Kosten verbunden (Hardware)
- … muss mitgeführt werden (umständlich)
- … kann verloren gehen oder gestohlen werden (kein Zugang mehr)
- … kann weitergegeben werden (jemand anderes kann zugreifen)
Authentisierung: Sein
- Der Nutzer selbst ist das Merkmal
Fingerabdruck, Gesichtsgeometrie, Iris, Tippverhalten, DNA, … - Biometrische Merkmale
- … hat man immer dabei
- … sind nicht 100% sicher zu erkennen
- … kann man nicht weitergeben
- … können sich verändern (Unfall) oder fehlen manchen Menschen
- … kann man bei Verlust nicht ersetzen
Authentifikation
Authentifikation: Prüfung der behaupteten Authentisierung
- Prüfer überprüft die Angaben auf ihre Echtheit
- eindeutige Identifikation und Nachweis der Identität
- Abwehr von Identitätsdiebstahl, Spoofing-Angriffen
- findet zeitlich nach einer Authentisierung statt
- Eindeutige Identifikation von Menschen, Geräten (Web-Server, Laptop, Smartphone, …), Diensten (Dateisystem, Amazon, Bankportal, …)
Beispiel: Schaffner überprüft den Ausweis und vergleicht das Bild mit meinem echten Antlitz
Beispiel: Das System überprüft ob meine eingegebenen Daten so auch gespeichert sind
Authentisierung vs. Authentifizierung
- Authentisierung ⇒ Behauptung der Echtheit
- Authentifikation ⇒ Prüfung der Echtheit
- Authentifizierung ⇒ Bezeugung der Echtheit
Autorisierung
Autorisierung: Einräumung von speziellen Rechten für eine Person
- benötigt eine erfolgreiche Authentifikation
- findet zeitlich nach einer Authentifikation statt
Beispiel: Das Ticket berechtigt mich, in der 1. Klasse zu reisen und die DB-Lounge zu betreten
Beispiel: Ich darf auf die Noten der Studierenden im System zugreifen
- Authentisierung: (Sichtweise Nutzer)
Der Nutzer authentisiert sich gegenüber einem IT-System (Endgerät, Server, IT-Dienst, Cloud, …), indem er einen Nachweis über seine digitale Identität, zum Beispiel den Nutzernamen, erbringt. - Authentifikation: (Sichtweise IT-System)
Das IT-System (Endgerät, Server, IT-Dienst, Cloud, …) überprüft den Nachweis, um die Echtheit der digitalen Identität eines Nutzers im Rahmen der Authentifizierung festzustellen. - Autorisierung: (Sichtweise IT-System)
Wenn die Echtheit der digitalen Identität eines Nutzers erfolgreich verifiziert werden konnte, kann das IT-System (Endgerät, Server, IT-Dienst, Cloud, …) dem Nutzer definierte Rechte einräumen.
Basic Authentication
- Teil der HTTP-Spezifikation
- Credentials (Benutzername und Passwort) werden im HTTP-Header gesendet (Base64-codiert)
- Verwendet ein Browser-Popup (bei jedem Browser anders)
- SSL/TLS unbedingt erforderlich, um Daten zu schützen
- Credentials werden im Browser gespeichert
- Explizites Log-Out nicht möglich
Digest Access Authentication
- Teil der HTTP-Spezifikation
- Sichere Variante der Basic-Authentication
- Credentials werden nicht mehr übertragen, sondern es kommt ein Challenge-Response-Verfahren zum Einsatz
- Verwendet ein Browser-Popup (bei jedem Browser anders)
- Credentials werden im Browser gespeichert
- Explizites Log-Out nicht möglich
Form-based Authentification
- Basiert auf einem HTML-Formular
- Credentials (Benutzername und Passwort) werden als HTTP POST-Parameter übertragen
- Credentials werden im Klartext überragen
- SSL/TLS unbedingt erforderlich, um Daten zu schützen
- Browser speichert Credentials nicht automatisch
- Explizites Log-Out ist möglich
Passwortsicherheit
- 62.000 gestohlene Passwörter (LulSec List)
- <username> – 780 Vorkommen
- 123456 – 569 Vorkommen
- 123456789 – 184 Vorkommen
- password – 132 Vorkommen
- romance – 95 Vorkommen
- mystery – 70 Vorkommen
- 102030 – 68 Vorkommen
- tigger – 64 Vorkommen
- shadow – 64 Vorkommen
- ajcuivd289 – 62 Vorkommen
X.509 Client-Zertifikate
- SSL/TLS unterstützt auch client-seitige Authentifizierung
- Client wird als Teil des SSL-Handshakes authentifiziert
- Hierzu dienen ebenfalls X.509-Zertifikate
- Auf dem Server muss der Inhalt des Zertifikates auf einen bestimmten Benutzer abgebildet (mapping) werden
- Es werden keine sensitiven Daten übertragen
- Auch bei einem kompromittierten Server unproblematisch
- Explizites Log-Out nicht möglich
Autorisierung
Autorisierung (authorization) – Überprüfung, welche Berechtigungen ein authentifizierter Benutzer hat
Wichtige Prinzipien bei der Vergabe von Berechtigungen
- Least privileges – Minimale Berechtigungen
- Segregation of duty – Aufgabentrennung (Vier-Augen-Prinzip)
Begriffe
- Berechtigung (permission) – Technische Repräsentationen von Privilegien in einem System
- Rolle (role) – Benutzer haben Rollen, die bestimmte Berechtigungen benötigen (Rollen bündeln Berechtigungen)