Betriebssysteme und Sicherheit - os.inf.tu-dresden.de · • Stärke des Geheimnisses basiert auf...
Transcript of Betriebssysteme und Sicherheit - os.inf.tu-dresden.de · • Stärke des Geheimnisses basiert auf...
Modul 4: Mechanismen – Authentisierung und Schlüssel
Disclaimer: large parts from Mark Manulis, Dan Boneh, Stefan Katzenbeisser, Günter Schäfer
Betriebssysteme und Sicherheit
Dresden, WS 18
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 2
Rückblick
Sie kennen die Unterschiede zwischen Safety und Security (und Datenschutz)
Sie verstehen den Unterschied zwischen Inhalten und Metadaten und den
Schutzbedarf von beiden
Sie kennen das primäre Ziel der IT-Sicherheit und operationale Risiken
Sie können den Ablauf einer Sicherheitsanalyse erklären
Sie wissen, worauf es in einer Bedrohungsanalyse ankommt und können Angreifer
modellieren
Sie kennen Insider und Outsider-Angriffe und konkrete Angriffsbeispiele für Outsider
Sie kennen Referenzen für Bedrohungs- und Schwachstellenanalysen (BSI/Common
Criteria)
Sie wissen, wie Schutzbedarfe festgelegt und in welchen Klassen bemessen werden
Sie können einschätzen, welche Risiken Sie tragen, vermeiden und addressieren
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 3
Terminologie: Sicherheits-Dienste
Authentifizierung (Authentication)
• Nachweis behaupteter Eigenschaft (Identität) einer Instanz
Integritätsschutz (Data Integrity)
Vertraulichkeitsschutz (Confidentiality)
Zugangskontrolle (Access Control)
Nicht-Abstreitbarkeit (Non repudiation)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 4
Entity Authentication
„Who‘s Brian of Nazareth? We have an order for him to be
released.“
Terry Jones, et al.: Life of Brian (1979)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 5
Übersicht Authentisierung
Sicherheitsmechanismus Identifikation und Authentisierung
Faktoren zur Authentisierung
Identifikation von Individuen
Identifikation von Prozessen und Objekten
Knowledge-, Possesion-, Inherence Factors
Schlüssel-Austausch, Dolev-Yao Angreifer und Needham-Schroeder
Schlüssel-Vereinbarung mit Merkle und Diffie-Hellman
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 6
Identifiziere Menschen/Entity Authentication
Ziel: Identifikation eines Subjekts (User oder Process!) und Identitätsverifikation
Klassen der Authentisierung:
• User authentication (login)
• Computer network authentication (identity management)
• Identity verification service
Kardinalität bei der Autenthisierung:
• One-way authentication— Computer authentisieren User— ATM authentisieren Karteninhaber— Browser authentisiert Webserver
• Zwei-Wege-Authentisierung (mutual authentication)— ePass <--> reader— UMTS cellphone < -- > network— Online bank < -- > account holder (w/ certificates)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 7
Faktoren zur Authentisierung
Nutzung unterschiedlicher Faktoren:
• Wissen (knowledge factors)
— Passworte
— Antworten zu „security questions“
— …
• Besitz (possession factors)
— Security token
— Smart card
— Schlüssel/Zertifikate
— …
• Sein (Inherence factors)
— Biometrische Artefakte
— Unterschriften
— …
• Manchmal andere Eigenschaften (z.B. Standort)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 8
Entity AuthenticationVerifikation der Faktoren:
• direkt (Alice vs. Bob) oder
• vermittelt durch einen Arbiter („TTP“, Kerberos, Shibboleth)
Grundsätzliche Anforderungen:
• Stärke des Geheimnisses basiert auf seiner Entropie (Passworte, Biometrie)
• Bereitstellung und Verwaltung: Faktoren müssen geheim bleiben (impersonation), anpassbar und widerrufbar sein
• Monitoring, Entdeckung und Reaktion auf Mißbrauchsversuche
Mehr-Faktor Authentisierung:
• Kombination unterschiedlicher Faktoren (Beispiele?)— Bank-Karte (Besitz) und PIN (Wissen)— Passwort (Wissen) und mobileTAN (Besitz der SIM)
• Erfordert Unabhängigkeit der Faktoren
• Erhöht Sicherheit um die Sicherheit des schwächsten Faktors (Sicherheitsfragen?)
• (aber: nicht mit fall-back Authentication zu verwechseln – die ist so sicher wie der schwächste Faktor…)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 9
Schwierigkeiten bei der Authentisierung
Verifikation von Faktoren über Netze ist schwierig
(mit Krypto aber möglich…)
Was bestehen für Probleme, was haben wir für Angreifer?
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 10
Angriffe auf Schlüsseletablierung
• Man-in-the-middle attack
• Replay attack
message
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 11
Unsere Annahme: Der Dolev - Yao Angreifer
Mallory hat volle Kontrolle über den Kommunikationskanal, er kann:
• Nachrichten abhören („eavesdropping“, passiv)
• Auslieferung unterdrücken („suppression“)
• Nachrichten erneut ausliefern („replay“)
• Nachrichten verändern („manipulation“/„tampering“)
• Nachrichten fälschen („forgery“)
• Nachrichten umleiten („relay“)
• Nachrichten vertauschen
Aber:
• Mallory kann „Krypto“ nicht brechen (PPT Angreifer)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 12
Schwierigkeiten bei der Authentisierung
Verifikation von Faktoren über Netze ist schwer, mit Krypto aber möglich
Entity authentication ist mehr als der reine Austausch von Nachrichten:
—Bob weiß bei Erhalt der Authentisierungsnachricht von Alice nicht, ob:
• Alice in diesem Moment an der Kommunikation teilnimmt, oder ob
• Eve eine alte Nachricht von Alice wiedereinspielt (replay)
—Dies ist besonders wichtig wenn nur bei Session-Setup authentisiertwird:
• Beispiel: Übertragung eines PIN (evtl. verschlüsselt) beim login
—Zwei grundsätzliche Hilfsmittel zur Ermittlung der Aktualität:
• Zeitstempel (erfordern lose synchronisierte Uhren)
• Zufallszahlen/Nonces (challenge-response Austausch)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 13
Case Studies zur Authentisierung
Authentisierung „in RL“
• Ausweise
User authentication
• Wissensbasiert: Passworte
• Inherence-based: Biometrie
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 14
Authentisierung von/durch Individuen
Wie authensieren Sie „in RL“ (@home, Bank,…)
“What one is
(inherence)
Handgeometrie
Fingerabdruck
Bild
Unterschrift
Retina
Stimme
Schreib-Charakteristika
Papierdokument
Schlüssel
Magnetstreifen-Karte
smart card (chip card)
SIM
Passworte, Passphrasen
Antworten zu Fragen
Erfolgreich übermittelte Nachricht
has
(possession)
knows
(knowledge)”
ID-carde
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 15
Knowledge-based authentication: passwords
Simple approach
User Server
Login Password
… …
dog bone
… …
(dog, bone)
≟
yesgrant
access
deny
access
no
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 16
Password based authentication
Simple approach – security problems
User Server
Login Password
… …
dog bone
… …
(dog,bone)
≟
yesgrant
access
deny
access
no
Attacker might get access!
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 17
Password based authentication
Enhanced approach using one way (hash) functions
User Server
Login Password
… …
dog h(bone)
… …
(dog,bone)
≟
yesgrant
access
deny
access
nocalculates
h(bone)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 18
Password based authentication
Enhanced approach using one way (hash) functions
User Server
Login Password
… …
dog h(bone)
… …
(dog,bone)
≟
yesgrant
access
deny
access
nocalculates
h(bone)
Slightly reduced risk, if
attacker gets access.
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 19
Problems of hashed password storage
Possible attack:
—pre-computation (rainbow tables)
countermeasures:
—Hash rounds
• store: h1000(pw)
• linear overhead per string (computation, storage)
—Salting
• Use (long) random value
• store: h(salt,pw), salt
— pre-computation has to be done for each possible salt,|rounds|
Login Password
… …
dog h(bone)
… …
$ sudo less /etc/shadow | grep strufestrufe:$6$m40rV3LS$kAf.4WUEwr7[…]
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 20
Probleme trotz gehashter Passworte
Verbleibender Angriff:
• Dictionary attack—Problem: Menschen wählen Passworte nicht
ausreichend zufällig!—Häufig Namen, Worte, vorhersehbare Zahlen,
persönliche Informationen—http://www.whatsmypass.com/the-top-500-worst-passwords-of-all-time—Angreifer benutzen Dictionaries und Social Networks für Bruteforce-
Anttacks—Bekanntes Program: John the Ripper
• unterstützt dictionary attacks und password patterns
Lösungsmöglichkeiten:—Passwortregeln (Benutzberkeit!!!)—Regelmäßige Prüfung (monitoring) von Passworten (z.B. mit John)—Tips und Trainings um gute Passworte zu generieren
• Beispiel: Satz password
• “This is the password I use for Google mail” “TitpIu4Gm”
Login Password
… …
dog h(salt,bone)
… …
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 21
Probleme trotz gehashter Passworte
Verbleibender Angriff:
• Dictionary attack— Problem: Menschen wählen Passworte nicht
ausreichend zufällig!— Häufig Namen, Worte, vorhersehbare Zahlen,
persönliche Informationen— http://www.whatsmypass.com/the-top-500-worst-passwords-of-all-time— Angreifer benutzen Dictionaries und Social Networks für Bruteforce-Anttacks— Bekanntes Program: John the Ripper
• unterstützt dictionary attacks und password patterns
Lösungsmöglichkeiten:— Passwortregeln (Benutzberkeit!!!)— Regelmäßige Prüfung (monitoring) von Passworten (z.B. mit John)— Tips und Trainings um gute Passworte zu generieren
• Beispiel: Satz password
• “This is the password I use for Google mail” “TitpIu4Gm”
Login Password
… …
dog h(salt,bone)
… …
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 22
Verbleibende Probleme…
https://xkcd.com/538/
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 23
Inherence factors: Biometry
Identifying an individual by physiological characteristics
Requirements:
Universality: Applies to all individuals
Uniqueness: Different for all individuals
Stable: Property does not change over lifetime
Measurable reliably, easily with (cheap) sensors
Acceptance by users
Resistant to forgery
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 24
Inherence factors: Biometry
Two-stage process:— Enrollment: Registration of users— Verification: Capture and compare biometric data with samples
stored during enrollment
Verification is always noisy (statistical hypothesis tests)— False positives: unauthorized individual is authenticated (FAR)
Security at risk!— False negatives: authorized individual is rejected (FRR)
Problems for acceptance and usability— FAR & FRR can be adapted by choice of
features/characteristics
Advantages: Disadvantages:
(+) Cannot be lost/forgotten (-) Very hard to change/reset
(+) Hard to copy (-) Error rate
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 25
Inherence factors: Biometry
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 26
Inherence factors: Biometry
Storage of minutiae: Branches, endpoints, etc.
Pattern (coordinates and angle) of minutiae considered to be unique
Compare measured minutiae with samples stored at enrollment
Problem: Some minutiae may be missing (noisy, incomplete sensing)!
Main biometric factor (face recognition, retina scans)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 27
Over the Net: Knowledge-based: Challenge/Response
Prerequisite: Both parties agree on common secret key
Here: Bob wants to authenticate Alice
Alice: Bob
Key KID, Identification ID Key KID for ID
Send Login-Information (1) IDGenerate RAND (Challenge)
(2) RAND
E(RAND, KID) = C (3) C
E(RAND, KID) = C‘
Test: C‘ = C?
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 28
Knowledge-based: Challenge - Response
Assuming the Dolev-Yao adversary:
• Plaintext space for Challenges RAND has to be large!
— Mallory can intercept and store all tuples (RAND,C)
— She hence can replay old response
• Cipher has to be known plaintext secure
• Man-in-the-middle attacks, Replay attacks?
A B
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 29
Ansätze:
Alice/Bob einigen sich direkt
Im Vorwege
Zum Verbindungsaufbau
Alice und Bob delegieren Vertrauen an dritte Instanz („TTP“, „KDC“)
Schlüsselverteilungsproblem
Trusted domainTrusted domain
Alice Bob
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 30
Unsere Annahme: Der Dolev - Yao Angreifer
Mallory hat volle Kontrolle über den Kommunikationskanal, er kann:
• Nachrichten abhören („eavesdropping“, passiv)
• Auslieferung unterdrücken („suppression“)
• Nachrichten erneut ausliefern („replay“)
• Nachrichten verändern („manipulation“/„tampering“)
• Nachrichten fälschen („forgery“)
• Nachrichten umleiten („relay“)
• Nachrichten vertauschen
Aber:
• Mallory kann „Krypto“ nicht brechen (PPT Angreifer)
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 31
Erster Versuch: Passive Angreifer
Eve kann:
• Nachrichten abhören („eavesdropping“, passiv)
• Können Alice und Bob sich sicher auf einen Schlüssel einigen?
Alice Bob
Eve
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 32
Schlüssel-Aushandlung
Ziel:
Nachrichtenaustausch öffentlich
Im Ergebnis: geheimer Schlüssel
Ursprüngliche Idee (Merkle, ’74):
• Alice erstellt 232 Puzzles (mit Index Pi und Schlüssel)
• Alice mischt die Puzzle und sendet sie Bob
• Bob wählt und löst ein Puzzle zufällig
• Bob informiert Alice über den Index Pj, beide kennen den Schlüssel.
Wie schwer ist das Brechen für Eve? Quadratisch
Ralph Merkle, Martin Hellman, Whitfield Diffie
P3 <schlüssel>
P1 <schlüssel>
P2 <schlüssel>
...
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 33
Polynomieller Vorteil: Diffie-Hellman(-Merkle)
Können wir das Brechen erschweren?
Beobachtungen:1. Diskreter Logarithmus (einige Umkehrfunktionen) schwer zu lösen 2. Potenzgesetze: (gx)y = gxy = gyx = (gy)x
Idee:
Wahl zyklischer Gruppe ℤp* , generiert durch g, und ϕ(p) = p-1
Alice wählt a ⟵ {1,…,(p-1)}, Bob wählt b ⟵ {1,…,(p-1)}
Alice berechnet: (gb)a mod p = gab mod p = Bob berechnet: (ga)b mod p
ga
R R
gb
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 34
Zwei Konkrete Angriffe
• Man-in-the-middle Angriff
• Replay Angriff
Parteien
proaktiv/extern identifizieren/
authentisieren!
Aktualität
sicherstellen!
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 35
Ein einfaches (unsicheres) Protokoll
Ka Kb
{K}Kb, {K}Ka
{K}Kb
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 36
Man in the Middle - 1
{K}Kd, {K}Ka
A,{K}Kd
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 37
Man in the Middle - 2
A, {K}Kd D, {K‘}Kb
{K‘}Kd, {K‘}Kb
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 38
Schroeder-Needham Schlüsselaustausch
Erkenntnis:
• MitM durch Identifikation verhindert
• Alice und Bob durch Kenntnis von Schlüssel K authentisiert (brauchen Ka oder Kb)
• Replay durch „Nonce“ verhindert
• Erweiterung: Zeitstempel für Aktualität, falls Mallory alten Schlüssel errät
{Na,K,B,{K,A}Kb}Ka
{K,A}Kb
Ka Kb
{Nb}K
{Nb-1}K
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 39
Zusammenfassung / Weiterführendes Material
Zur vertraulichen Kommunikation müssen Schlüssel verteilt werden
Wir müssen Annahmen, über den Angreifer treffen (Dolev-Yao)
Zwei grundlegende Möglichkeiten
—Direkte Vereinbarung
—Austausch mittels TTP/KDC
Bedarf Identifikation/Authentisierung und Aktualität!
Weiterführendes Material:
—Coursera courseware Cyptography (Dan Boneh)
—Katz & Lindell: Intro to modern crypto
Privacy and Security
Chair for Privacy and Security / Thorsten StrufeSlide 40
References
Stefan Katzenbeisser, „Einführung in Trusted Systems“, teaching materials, TU Darmstadt, 2015
Mark Manulis, „Introduction to Cryptography“, teaching materials, TU Darmstadt, 2011
Elke Franz, „Datensicherheit“, teaching materials, TU Dresden, 2014
Günter Schäfer, „Netzwerksicherheit“, course materials, TU Ilmenau, 2013
Dan Boneh, „Introduction to Cryptography“, course materials, Stanford University, 2016
Winfried Kühnhauser, „Systemsicherheit“, teaching materials, TU Ilmenau, 2014