Sicherheit und Schutz inVerteilten Systemen
PPT-Folie
Motivation für Angriffe
Ziele der Angreifer
- Eindringen in ein System (Intrusion)
- Betriebsstörungen (Denial-of-Service)
- Abhören von Daten (Eavesdropping)
- Hinzufügen/Generieren von Daten
Typisches Vorgehen
Angriffsklassen
- Authentisierung (Paßwörter, Cookies usw.)
- Fehler in Servern und Backdoors (ssh)
- Protokolle (TCP-Hijacking, DNS)
- Information Leakage (finger)
- Denial-of-Service (SYN-Flood)
Tools für Hacker
- Viren, Würmer, Trojanische Pferde
Arten der Security
- Security through Obscurity
- Absicherung jedes einzelnen Rechners (host-security)
- Installation eines Firewalls (network-security)
Schutzmechanismen
- Abgesicherte Kommunikationskanäle=> Verschlüsselung
- Authentisierung/Authorisierung=> Authentisierung/Zugriffskontrolle
Verschlüsselungsverfahren
- Secret-Key Verfahren
Sender und Empfänger einigen sich auf einen gemeinsamen und geheimen Schlüssel
Beispiel: IDEA, DES
- Public-Key Verfahren
Es existieren Paare aus geheimen und öffentlichen Schlüsseln
Beispiel: RSA
Verschlüsselungsverfahren
Verschlüsselungsverfahren
- Schreibweisen:
Secret-Key:
Ek(P) = C Dk(C) = P
Public-Key:
Ekp(P) = C Dks(C) = P
und/oder:
Eks(P) = C Dkp(C) = P
Verschlüsselungsverfahren
- Vor- und Nachteile:
- Secret-Key Verfahren meist wesentlich schneller als Public-Key
- Bei Secret-Key Verfahren Problem der Schlüsselübermittlung
- In der Praxis werden die Verfahren kombiniert angewendet
IDEA (Symmetrisch)
- 64 bit Datenblöcke, 128 bit Schlüssel
- (fast) symmetrisch, d.h. E = D
- basiert auf Operationen XOR, Addition mod 216 und Multiplikation mod 216 + 1
- in Software ~ 1Mbit/s (25 MHz)
- in Hardware ~ 100Mbit/s (25 MHz)
Data Encryption Standard (DES)
- 16 schlüsselunabhängige Bitrotationen
- 3 schlüsselabhängige Texttranspositionen
- 64 bit verschlüsselter Text
RSA (Public Key)
1. Wähle Primzahlen P und Q (»10100) und bilde N=P*Q, Z=(P-1)*(Q-1)
2. Wähle d, mit ggt(d,Z)=1
3. Berechne e, mit e*d = 1 mod Z, e<Z
Kodierschlüssel: Ke = <e,N>
Dekodierschlüssel: Kd = <d,N>
Kodieren: EKe(P)= Pe mod N = C
Dekodieren: DKp(C)= Cd mod N = P
Kodieren und Dekodieren sind symmetrisch
RSA (Public Ley)
1. P=13, Q=17, N =221, Z=192
2. Wähle d relativ prim zu Z: d=5
3. Ermittle e mit e*5 = 1 mod 192 => e=77
9777 mod 221 = 184 ; 18477 mod 221 = 97
RSA (Public Key)
- Sicherheit basiert auf Problem der Primfaktorzerlegung von n (NP-vollst.)
MD5 (Hashfunktion)
- erzeugt aus beliebigem Eingabetext einen 128 bit Hashwert
Authentisierung
- Authentisierung mit gemeinem Schlüsseln
- Beispiel Needham-Schroeder 1 siehe Buch
- Authentisierung mit öffentlichen Schlüsseln
- Beispiel Needham-Schroeder 2 siehe Buch
Digitale Signaturen
- Digitale Signaturen mit geheimen Schlüsseln
- Digitale Signaturen mit öffentlichen Schlüsseln
Beispiel PGP
- Pretty Good Privacy von Phil Zimmerman
- verwendet verschiedene secret- und public-key Verfahren zur Verschlüsselung oder Signierung von Nachrichten
- public: RSA, DH
- secret: IDEA, CAST, 3-DES
PGP 5
PGP 5
Key-Certification
- Probleme bei Angriffe auf den Public Key
Key Certification
- Sicherheit, daß der Public-Key des Kommunikationspartners authentisch ist, ist nicht automatisch gegeben
- Institutionalisiert als Certification Authorities