Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Sicherheit.

Ähnliche Präsentationen


Präsentation zum Thema: "Sicherheit."—  Präsentation transkript:

1 Sicherheit

2 Zugriffsrechte und Authentifizierung
Sicherheit – Wozu? Einbruchsmöglichkeiten Zugriffsrechte und Authentifizierung Sicherheit im Netz Sicherheit

3 Sicherheit ist kein technisches Problem, sondern ein menschliches.
Sicherheit – wozu? Sicherheit ist kein technisches Problem, sondern ein menschliches. IT-Sicherheitskonzepte sind nötig für: Datenschutzkonzept Virenschutz Programminstallationen (Keine unkontrollierten!) backup ..... Unbefugtes Verwerten von Betriebs- und Geschäftsgeheimnissen : §204,1 Strafgesetzbuch Haftung verschuldensunabhängig für Schäden, durch unzulässige oder unrichtige Erhebung Verarbeitung oder Nutzung von personenbezogener Daten Sicherheit

4 Sicherheit – wozu? Haftungsverpflichtung
Betriebs- und Geschäftsgeheimnisse §204 Abs 1 StGB, §17 Unlauterer Wettbewerb UWG Datenschutz (Kreditkarten!): zivil.+strafr.Haftung §7 Bundesdatenschutzgesetz BDSG Kontrolle und Transparenz im Unternehmensbereich KonTraG: effizientes Risikomanagement verlangt (§91,2 AktG) vom Vorstand einer AG (§§76ff,93 AktG) und vom Geschäftsführer einer GmbH (§43 GmbHG) sonst persönlich schadensersatzpflichtig! Abschlußtestat für börsennotierte AG nur wenn Risiko-Früherkennungssystem ex. EU-Eigenkapitalrichtlinie (Basel II) Rating von Kreditnehmern, auch nach IT-Sicherheit: Kreditzinsen! Sarbanes-Oxley-Act SOX Sektion 404 Funktionsfähiges internes Kontrollsystem incl. IT-Risikomanagement nötig, sonst persönliche Haftung! Unbefugtes Verwerten von Betriebs- und Geschäftsgeheimnissen : §204,1 Strafgesetzbuch Haftung verschuldensunabhängig für Schäden, durch unzulässige oder unrichtige Erhebung Verarbeitung oder Nutzung von personenbezogener Daten Gesetz zur Unternehmensintegrität und Modernisierung des Anfechtungsrechts UMAG: Durchsetzung von Haftungsansprüchen Sicherheit

5 Kontext Risikomanagement
Viren/Würmer/Backup ist nur eine Ereignisart. Seltener, aber kostenträchtiger sind andere Dinge, z.B. Fusionen Vorschriften(Compliance)-Prozesse ITIL: IT-Servicemanagement, häufig verwendet ISO : Standard für IT-Servicemanagement Cobit: IT-Governance für Manager: Business, Kontrolle,techn.Anford. Coso: Unternehmensweites Risikomanagement: Komponenten, Konzepte, Prinzipien, Roadmap. Sicherheit

6 Bot-Netze Bot-Herden ca. 0.30$ pro PC, mit Rating
Quelle: Sicherheit

7 Bot-Netz Verbreitung Stand: 5 Mill. Rechner im 1.HJ 2007 DDoS SPAM
Problem: Bot-Netze haben nur mittl. Lebensdauer von 54 Tagen: schwer zu entdecken. Virenscanner entdecken 50-92% Phishing-Attacken Problem: Bot-Netze haben nur mittl. Lebensdauer von 54 Tagen: schwer zu entdecken. Sicherheit

8 Verkauf von Bankdaten Webseite: thebadboys.org Sicherheit

9 Kriminelle Dienstleistungen
Hintergrundfakten Kriminelle Dienstleistungen Einbruch in Webseiten und Foren Massenanwendung Malware DDoS-Angriff pro 24 h Bot-Builder mit DDoS-Funktion Software „Limbo“ zur Bot-Steuerung Server für SPAM nutzen Mehr als 10 Mill. SPAM versenden Software „MPack“ für Angriff von Webseiten 50 $ 100 $ 250 $ 500 $ 600 $ 1000 $ Quelle: Technology Review, 4/2008 Sicherheit

10 Webangriff via Browser exploit
Beispiel: Storm-Angriff Juni 2007 Bot-Kontrolle Chicago Trojaner Server San Francisco Valentinskarte.. Internationaler Webangriff via exploit von browser-schwächen (z.B. Storm) Valentinskarte auf gehacktem Internet-provider server. Problem: Nutzung alltäglicher, unverdächtiger Kommunikationswege (Blog-Server: RSS feeds, Google Mashup, Yahoo pipes) IPS Webserver Seiten infiziert BadBoys Server Infiltration mit Mpack Italien Hongkong Sicherheit

11 Kriminelle Energie: Hintergrundfakten
Koordinator: russ. Ehem. KGB-Agenten, die sowohl Geldwäsche als auch Hacker (Herder) kennen OP: Operation Groups der einzelnen Länder, mieten Dienstleister, kaufen Module Foren: Handel mit Kreditkartendaten, Bewertung Sicherheit

12 Frage Gesetz §202c StGB (2007): „Wer eine Straftat nach §202a oder b (Ausspähen und Abfangen von Daten) vorbereitet, indem er … Computerprogramme, deren Zweck die Begehung einer solchen Tat ist, herstellt, sich oder einem anderen verschafft, verkauft, einem anderen überlässt, verbreitet oder sonst zugänglich macht,… wird mit Freiheitsstrafe bis zu einem Jahr oder mit einer Geldstrafe bestraft.“ Frage: Welchen Effekt hat dieses Gesetz? Es werden mehr Verbrechen verhindert, da die Täter Angst vor Strafe haben Es werden Verbrechen gefördert, da damit sichere Systeme verhindert werden Keins von beiden Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit

13 Zugriffsrechte und Authentifizierung
Sicherheit – Wozu? Einbruchsmöglichkeiten Zugriffsrechte und Authentifizierung Sicherheit im Netz Sicherheit

14 Einbruchsmöglichkeiten
Passworte erlangen Passwort erraten logist. Angriff (Telefon, pers. Besuch,...) Auslesen der Paßwortdatei unter Unix: /etc/passwd, Anwenden von Lexika von Namen und Begriffen, Anwenden von finger, who für Daten wie Namen, ZimmerNr., ... Aber: Willkürl. Passworte sind keine Lösung! Besser: Biosignatur, Chipkarten, ... Passwort abhören Datenpakete mithören z.B. von Telnet. Abhilfe: Verschlüsselung, z.B. secure shell, secute file transfer Sicherheit

15 Einbruchsmöglichkeiten
Trojanische Pferde: „harmlose“ Programme mit „Neben“funktionen Pseudo-login Programme -Programme: s mit Kontroll-Zeichen, Multimedia mit Active-X oder link zu Webseite (blended Threat) WWW-Dienste: Active-X, postscript-viewer, FTP file transfer: falsche Zugriffsrechte => Überschreiben von Systemdateien „nützliche“Programme (Spiele etc.): spyware key-logger! Würmer Programmierter Einbruch, Errichtung von backdoors Viren Selbst-Replizierendes Programm, Errichtung von backdoors Sicherheit

16 Einbruchsmöglichkeiten
Virusinfektion virus program user code Start user program code Infektion Start Sicherheit

17 Einbruchsmöglichkeiten
Kontrollübernahme durch Buffer-Overflow > 90% Überladen von Unix-ProgrammCode bzw. Rücksprungadresse auf Stack 1000 String 1 String2 Virus code VStart Start SP  Virus code VStart Rückadr. String2 String1 Argumentpuffer Stackbereich Bufferoverflow resultiert aus dem Kopieren von Stringargumenten auf den Stack(“Buffer”), ohne deren Länge auf Zulässigkeit zu prüfen. Dabei wird die Startadresse (Unix-Programm) oder die Rücksprungadresse auf dem Stack mit einer Maschineninstruktion überschrieben. Fehler: read-only-Programmcode wird überschrieben; Code wird im Stackbereich ausgeführt. Die Schwachstelle resultiert aus der C-Konvention, das String-Ende durch ein Nullbyte anzugeben und nicht explizit die Länge anzugeben. Ein Nutzen der strncpy-Prozedur, die die maximale Länge nachprüft, anstelle der schnellen, aber gefährlichen strcpy-Prozedur der C-Bibliothek behebt den Fehler. Ein andere Möglichkeit ist die Einteilung des Speichers in Read-only/execute Eigenschaften, die von der MMU nachgeprüft werden (AMD 64) Sicherheit

18 Buffer-Overflow-Angriff
Stackframe bei normalem Funktionsaufruf C-Code void function(int a, int b, int c) { char buffer1[8]; char buffer2[16]; ...} void main() { function(1,2,3); } Assembler-Code Auszug aus "gcc -S -o example1.s example1.c" function: pushl %ebp # sichert EBP 32-Bit base pointer movl %esp,%ebp # kopiert ESP stack pointer nach EBP subl $24,%esp # schafft Platz f. buffer1+2 movl %ebp,%esp # korrigiert EBP ... popl %ebp ret main: pushl %ebp movl %esp,%ebp pushl $3 # Parameter auf den Stack pushl $2 pushl $1 call function # Funktionsaufruf addl $12,%esp # Stack aufräumen Stack frame = Stackbereich, in dem alle Argumente und lokalen Variablen einer Funktion (Methode, Prozedur) sind. EBP = extended (32 bit) base pointer. Zeigt beim auf den EBP innerhalb des letzten stack frame. ESP = extended stack pointer, Zeiger innerhalb des jetzigen stack frames. Sicherheit

19 Buffer-Overflow-Angriff
Beispiel: Stackmanipulation C-Code 1 void function(int a, int b, int c) { 2 char buffer1[8]; 3 char buffer2[16]; 4 int *ret; 5 6 ret = buffer1 + 12; 7 (*ret) += 8; 8 } 9 10 void main() { 11 int x; 12 13 x = 0; 14 function(1,2,3); 15 x = 1; 16 printf("%d\n",x); 17 } 12 // skip „x=1“ Ausgabe = ? return-Adresse überschrieben, x unverändert, Ausgabe = „0“ Sicherheit

20 Buffer-Overflow-Angriff
Kodierung des Angriffstrings unsicherer Ort der RET-Adr.  NOPs Virencode darf keine Null enthalten (warum?)  XOR mit Zahl Sicherheit

21 Buffer-Overflow-Angriff
Also: strncpy(Quelladr,Zieladr) statt strcpy(Quelladr, Zieladr) in C verwenden ! Benutzung von Stacksicherung wie StackShield, StackGuard, SecureStack,… HW: Kein write auf read-only-Code, kein execute auf read/write-Daten zulassen (AMD64) Einsatz einer sicheren Bibliothek (Link!) libsafe für strcpy (char *dest, const char *src) strcat (char *dest, const char *src) getwd (char *buf) gets (char *s) fscanf (FILE *stream, const char *format, ...) scanf (const char *format, ...) realpath (char *path, char *reolved_path([ ]) sprintf (char *str, const char *format, ...) . . . Den Nicht-Einsatz der sicheren Bibliothek begründen die Unternehmen meist mit den Umstellungskosten. Dies kann angesichts wesentlich größerer Kosten durch Einbruchs- und Vertrauensverlust nicht Ernst genommen werden. Sicherheit

22 Der Rootkit-Angriff Idee: Verhindere, dass ein Virus (Wurm,Trojaner,...) entdeckt und beseitigt wird Angriff: Fange alle Aufrufe ab, die Dateien, Ordner, Prozesse auflisten können und manipuliere sie. API-Methode user mode rootkits Treiber-Methode kernel mode rootkits Programm (Prozess-/Dateilisting) rootkit System-API oder lib Betriebssystem Programm (Prozess-/Dateilisting) System-API oder lib rootkit Betriebssystem SysCall SysCall Sicherheit

23 Der Rootkit-Angriff Beispiel Windows NT user mode rootkits
„dll import hooking“ User process FindFirstFile Rootkit dll Kernel32.dll Ntdll.dll Betriebssystem Beispiel „Hacker Defender“ von Konkret wird beim dll import hooking beim Programm die Einträge für die benutzten Prozeduren umgebogen auf die manipulierten Prozeduren des rootkits. Beispielsweise wird beim Anzeigen von Ordnern „FindFirstFile“ benutzt. Wird dies umgebogen, so können alle Dateien auf einer Liste nicht mehr gefunden werden. Dies gilt auch für Prozesse. Häufig wird auch direkt auf der untersten Ebene bei Ntdll.dll aufgesetzt. user mode kernel mode Sicherheit

24 Rootkit-Erkennung Phase 1: Datensammlung Phase 2: Vergleich Sicherheit

25 Der Rootkit-Angriff Beispiel Windows NT kernel mode rootkits
Methode: system call hooking Win32 user mode kernel m o de Systemdienste Object Process Local Memory Security I/O Manager Manager Proc. Calls Manager Monitor S y stem Am schlimmsten sind die kernel mode rootkits: Sie können sich, einmal installiert, fast perfekt verbergen. Dazu klinken sie sich in der system call Verteilertabelle ein und simulieren bestimmte system calls, so dass sie dazu aufgerufen werden („system call hooking“ ). rootkit driver Process list Kernel Hardware Abstraction Layer HAL Hardware Sicherheit

26 Der Rootkit-Angriff Beispiel Windows NT kernel mode rootkits
Methode: Manipulation von Kerndaten Win32 user mode kernel m o de Systemdienste Object Process Local Memory Security I/O Manager Manager Proc. Calls Manager Monitor S y stem Eine andere Methode besteht darin, die Datenstrukturen des kernels (z.B. Liste aller Prozesse) zu fälschen, ohne, dass dabei das Dispatchen leidet. rootkit driver Process list Kernel Hardware Abstraction Layer HAL Hardware Sicherheit

27 Liste der malware Dateien
Der Rootkit-Angriff Beispiel Windows NT kernel mode rootkits Methode: Filter-Treiber-Angriff Liste der malware Dateien User process Kernel system call I/O Manager rootkit filter driver Regular file driver Hard disk user mode kernel mode Eine dritte Methode installiert sich als Filter Treiber in das Dateisystem, so dass bei allen Anfragen die malware-Dateien ausgeblendet werden. Beispiel: NT-rootkit Sicherheit

28 Einbruchsphasen Phasen Malware einschleppen (ca. 70-100 Stck/Tag neu)
(Bootstrap, -Anhang, Makro, „Freie“ Programme ..) Malware-Entdeckung Fehlverhalten (reboot, langsam, s), Prüfsummen, Systemscan Lockvögel honey pots: Virussignatur, Agent in Bot-Netzen Malware-Entfernung log. Vertrauenskette (alte Systemdatenträger booten, Minimalsystem aufsetzen, alte Nutzerdaten einspielen) Für die Einrichtung von „Honigtöpfen“ werden nicht-aktualisierte Windows 2000-Rechner verwendet, die innerhalb von wenigen Minuten infiziert werden. Dies gestattet einer Spezial-Monitorsoftware darauf, Bei Viren die Mechanismen und Signatur früh zu ermitteln, Bei Trojanern die Integration in ein Bot-Netz (Zombi-Armee), so dass Anweisungen und Ziele rechtzeitig erfahren werden Sicherheit

29 Zugriffsrechte und Authentifizierung
Sicherheit – Wozu? Einbruchsmöglichkeiten Zugriffsrechte und Authentifizierung Sicherheit im Netz Sicherheit

30 Einbruch über Zugriffsrechte
Kontrollübernahme (Viren, Würmer etc.) durch Dateisystem-Zugriffsrechte falsche Schreib/leserechte für Systemdateien => Überschreiben möglich, falsche PATH-Angabe (zuerst .) => falsches „System“programm wird ausgeführt Systemprogramme-Zugriffsrechte Ausnutzen von Fehlern, um mit Systemrechten zu schreiben. Beispiel: emacs, CGI-Scripts Administratorrechte für die Installation dubioser Programme Sicherheit

31 Capability-orientierte Zugriffsrechte
Problem: Zugriff auf 1000 Rechner durch 1000 Benutzer Muss jeder sich bei jedem registrieren mit Paßwort? Idee: Capability-Modell vs. ACL ACL Objekt 1 Objekt 2 Objekt 3 Objekt 4 User A r w User B r w x r x User C User D r Capab. Im Unterschied zur ACL, bei der alle Nutzer mit ihren Rechten aufgeführt werden (blaue Spalte), sind bei den Capabilities (Fähigkeiten) eines Nutzers alle Objekte aufgeführt (gelbe Zeile). Eine feine Zuordnung für jedes der 1000 Nutzerprofile ist zu aufwändig, die Matrix für ein solches riesiges Netzwerk ist zu groß. Stattdessen lassen sich Rollen (Administrator, Hauptnutzer, Backup-Service,..) genau definieren, die ein Nutzer jeweils annehmen muß. Diese Erweiterung läßt sich auch auf Vertraulichkeit übertragen entsprechend der bei Militärs und Diplomaten geltenden Geheimhaltungspolitik. Problem bei Capabilities: Durch Annehmen (Kopieren) einer Rolle kann ein Eindringling im Netz Probleme machen. Die Capabilities müssen also geschützt werden, am Besten durch ein Verschlüsselungssystem. Sicherheit

32 Frage Angenommen, Sie haben 8 Nutzer und 16 Dateien, wieviele ACL gibt es im System? Bitte schreiben Sie die Zahl auf und geben Sie Ihrem linken Nachbar. Antwort: Jede der Dateien hat eine ACL für die Nutzer und ihre Zugriffsrechte. Also 16 ACL. Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit

33 Rollenbasierte Zugriffsrechte
Capability-Erweiterungen Rollen-basiertes Modell: User können Rollen mit Capabilities annehmen Vertraulichkeit (Informationsweitergabe) Kein User darf Objekte lesen/schreiben, die höher klassifiziert sind als er selbst Beispiel Krankenhausrollen Person Rolle Objekt Müller operieren lesen Patient Chirurg stützen Meier Anästhesieprotokoll Anäs thesist schreiben Schmidt Kranken blatt Kranken-pfleger Paulsen schreiben Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit 33

34 Authentifizierung Authentifizierungsquellen
„Etwas, was Sie wissen“ Passwort, PIN, Testfragen „Etwas, was Sie haben“ Kreditkarte, Handy, Token-Generator „Etwas, was Sie sind“ Fingerabdruck, Iris, Bio-Daten Zwei Faktoren-Authentifizierung (T-FA) „starke“ Authentifizierung z.B. PIN und Fingerabdruck Die Multi-Faktoren-Authentifizierung geht von unterschiedlichen Quellen aus, die nicht von der selben Art sind. Aber: Hilft nicht gegen Trojaner oder man-in-the-middle-Angriff! Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit 34

35 Authentifizierung Beispiel Unix Prozeßfolge:
Authentifizierung am Rechner Prozeßfolge: /etc/passwd : root:Igl6derBr45Tc:0:0:The Superuser:/:/bin/sh brause:ntkyb1ioøkk3j:105:12:&Brause:/user/user2/ASA:/bin/csh LoginName Paßwort PersonId GruppeId Name StartPfad ShellName /etc/group: staff:*:12:boris,peter,brause GruppenName GruppenPaßwort GruppenId Benutzerliste init Prozeß getty login sh Kommando 1 Kommando 2 Authentifizierung im Netz Dominoeffekt! rsh remote shell, rlogin remote login: basierend auf etc/hosts.equiv Autorisierung BenutzerProzeßRechte = ruid, rgid ProgrammErzeugerRechte = uid, gid effektive ProzeßRechte = euid, egid Laufzeit: euid  ruid, egid  rgid Aber: set userId/groupId: euid  uid, egid  gid Sicherheit

36 Authentifizierung Beispiel Windows NT Benutzerauthentifikation
lokale Anmeldung, bei der sich der Benutzer mit seinem lokalen Benutzernamen auf seinem Computer anmeldet (lokale ACL) Netzwerk-Anmeldung, um Zugriff auf die Dateien eines Dateiservers zu erhalten (Server-ACL) Anmeldung in einer Domäne, mit der der Zugriff auf die Rechner und die Dienste der Domäne geregelt wird primary domain controller (R/W), backup domain controller (R) Anmeldung in einem Domänennetz durch trust relationship = ACL Sicherheit

37 Trusted Computing Initiative, Programme kontrolliert HW-geprüft auszuführen Konzept: Vertrauenskette (chain of trust) Problem: Schützt nicht gegen Programmierfehler z.B. Secure Startup Windows Vista CPU boot BS-Lader Anwendung BIOS BS Messung Hash Hash Messung Messung Hash Messung Hash Trusted Computing Group founders: AMD Hewlett-Packard IBM ,Infineon ,Intel Corporation ,Microsoft ,Sun Microsystems, Inc. TPM erzeugen auch Kryptoschlüssel für andere Zwecke, etwa Zufallszahlen, Speicherverschlüsselung, … Problem: TPM kann “nichtgenehmigte Software” von Drittherstellern aussperren, DRM (digital rights management) einführen, Ist nicht gegen Programmierfehler geschützt (buffer overflow attack) Vergleich Vergleich Vergleich Vergleich platform configuration register Hash 0 Hash 1 Hash 2 Hash k Trusted Platform Module TPM chip Sicherheit

38 Zugriffsrechte und Authentifizierung
Sicherheit – Wozu? Einbruchsmöglichkeiten Zugriffsrechte und Authentifizierung Sicherheit im Netz Sicherheit

39 Sicherheit im Netz: Fire wall
fire wall router: IP-screening der Datenpakete, IP-Übersetzung (HW/SW) Problem: IP-Screening unzureichend (PortNr. wechselt, ex. mehrere Ports für 1 task, Rückantwort an unbekannten Sender nötig) relay host oder Gateway: Netz-Programme und –Dienste, kontrolliert mit positiv/negativ-Liste (ACL) „Wer darf was“. Billiglösung dual homed host: external router & relay host & fire wall router andere Netze fire wall router external LAN Internet router relay host Sicherheit

40 Computerbetrug: Phishing
Prinzip: Vorspiegeln falscher Anfragen ( ) Speziell: Spear-Phishing Beispiel Postbank-Anfrage Abhilfe: I-TAN M-TAN Bank Kunde Anfrage SMS Spear Phishing bezieht sich auch auf den Betrug von Personen, die bestimmte Produkte oder Websites verwenden. Die Datendiebe verwenden alle verfügbaren Informationen, um ihre betrügerischen s so gut wie möglich auf die jeweilige Zielgruppe auszurichten. Beispiel: Alle Mitglieder einer Firma oder Institution. Pseudo-Absender: Das IT-Zentrum. Indizierte TAN Dynamische TAN Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit 40

41 Netzgestützter Angriff
Problem: Man-in-the-middle Angriff Anfrage Angreifer Bank Kunde verändert Antwort Problem: key logger Angriff Kunde Bank Key logger Angreifer Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit

42 Abhilfe: Isolierung der Prozesse
Beispiel Qubes OS Joanna Rutkowska Isolierung aller Prozesse von einander durch individuelle, leichte VMs Isolierung auch der grafischen Benutzeroberflächeninstanzen! (trusted window manager) Isolierung auch der benötigten Bs-Kernfunktionen (im Unterschied zu VirtualBox etc.) Abgesicherte Arbeit auf gemeinsamen Dateien Mikrokern-Basis: Xen Hypervisor, Typ 1 (HW-basiert) Quelle: Qubes-os.org Sicherheit

43 Abhilfe: Verschlüsselung
Sender Empfänger Kodier-schlüssel „inverser“ Schlüssel Alice Bob Ver-schlüsselungs-Algorithmus Ent-schlüsselungs-Algorithmus Original verschlüsselt Original = symmetrische Schlüssel  asymmetrische Schlüssel öffentlich privat public key - Systeme Sicherheit

44 Abhilfe: Verschlüsselung
Public key – Systeme Asymmetrische Systeme Verschlüsselte Nachricht = f(Nachricht, Schlüssel_1) = y Entschlüsselte Nachricht (Schlüssel_2 = bekannt public) = g(verschlüsselte Nachricht, Schlüssel_2) = g(y, s2) = g( f(Nachricht, s1), s2 ) = gs2( fs1(Nachricht) ) Wähle Einwegfunktion f(.) (trap function) zur Verschlüsselung, wobei g(.) = f-1(.) nicht aus f(.) schließbar. z.B. RSA-Algorithmus Rivest, Shamir, Adleman (1978) pq = c, p, q prim, (p,q) private key, c public key Faktorisierung langsamer als Multiplikation ! (one way function) Symmetrische Systeme geheime Schlüssel f = g, s1= s2 z.B. DES data encryption standard Sicherheit

45 Abhilfe: Verschlüsselung
Beispiel einfache modulo-Verschlüsselung mit Primzahlen p = public key, q = private key mit pq mod n = 1 z.B. p = 7, q = 13, n = 90 Original: U B O O T ASCII: a = kodiert: x = x = ap mod n ASCII <FF> <CR> <CR> 0 Dekodiert a = a = qx mod n Problem: p, n gegeben – q kann durch Ausprobieren bestimmt werden, allgemein in log2(n)-Zeit. Lösung: RSA-Algorithmus (1978) Rivest, Shamir, Adleman pq = c, p,q prim, (p,q) private key, c public key Faktorisierung c  p,q langsamer als Multiplikation pq  c (one way function) Grundlagen der Programmierung 1 - Teil R.Brause: Sicherheit und Schutz Sicherheit

46 Kerberos-Authentifizierung
Die Kerberos-Authentifizierung Athena-Projekt (MIT 1988) Symmetrische Verschlüsselung durch DES Benutzerauthentifizierung login protocol Anfrage beim AS (Authentication Server) UserName Ergebnis: Sitzungsausweis valide ca. 8 h Schlüsselverteilung Single Sign on protocol Anfrage beim TGS (Ticket Granting Service) ServiceName, UserName, Authentification, Sitzungsausweis Ergebnis: Transaktionsausweis (Ticket) valide ca. 5 Min. Service-Einleitung Authentication protocol Anfrage beim Server: ServiceRequest,UserName, Authentifikation, Transaktionsausweis, Ergebnis: ServiceResultat Sicherheit

47 Kerberos-Authentifizierung
Benutzerauthentifizierung Sitzungs-Ausweis UserName A S UserName TGS Service UserName UserName, IP, Zeit Ticket Schlüsselverteilung Authenticator Service-Einleitung Service UserName, IP, Zeit Anfrage UserName Ergebnisse Das Schlüsselsystem - Der gelbe Schlüssel ist das Password. Da die Verschlüsselung symmetrisch ist, kann der User den grünen Sitzungsschlüssel auspacken, nicht aber den Sitzungsausweis. Nach Erhalt des grünen Schlüssels wird der gelbe zerstört und nicht mehr benutzt. - Um einen Dienst zu nutzen, muß die Erlaubnis (das Ticket) dazu bei der Zentrale geholt werden. Der TGS vergleicht entschlüsselten Ausweis und Authentifikator miteinander und sieht so, ob der Ausweis kopiert ist. Wenn alles in Ordnung ist, erzeugt und verpackt er den roten Transaktionsschlüssel und gibt das Ticket heraus. Der user entschlüsselt das erste Paket. Aus dem String „Service“ entnimmt er, daß a) er die Daten richtig dekodiert hat und b) der Sender auch wirklich der TGS ist, da nur er den grünen Schlüssel kennt. Den hellblauen Schlüssel (das Server-Passwort) kennt er nicht und kann deshalb auch das Ticket nicht fälschen. - Bei der Service-Einleitung entschlüsselt der Service das Anfrageticket mit seinem Standardschlüssel. Daraus entnimmt er, wer etwas will, und prüft dies durch Entschlüsseln des Authentifikators nach. - Die Ergebnisse werden mit diesem roten Schlüssel gesichert, etwa auch ein violetter Schlüssel für die nachfolgende Kommunikation (z.B. Textstrom bei rlogin) Frage: Wie könnte durch Abhören und Fälschen dieses System geknackt werden? Sicherheit

48 Kerberos-Authentifizierung
Vorteile Kopie der Ausweise oder Tickets möglich, aber für jede Anfrage fehlt der Authentikator. Eine Fälschung der Ausweise oder Tickets ist nicht möglich, da die Schlüssel von TGS und Dienst unbekannt sind. Alle Tickets und Authentifikatoren lassen sich auch vom Benutzer selbst nicht beliebig lange aufbewahren und verwenden: Benutzerrechte können dynamisch verändert werden. Da das Benutzerpasswort nur einmal eingegeben werden muss, bemerkt der Benutzer von dem ganzen Authentifikationsprotokoll nichts weiter – eine wichtige Voraussetzung für die Akzeptanz. Sicherheit

49 Kerberos-Authentifizierung
Probleme Ausdehnung auf gekoppelte Domänen-LANs (V.5) Anfrage für Nachbar-Domänentransaktion an RemoteTGS Ausdehnung auf Nachbarn vom Nachbarn, etc., iterativ bis zum Ziel Probleme Uhrensynchronität nötig für Zeitschranken. Aber: Zeitauthentizität benötigt selbst das Protokoll; Widerspruch! Feste Zeitschranken brechen Transaktionen ungewollt ab Schlüssel und Tickets können evtl. von anderen lokal gelesen werden Übergang zu abweichenden Systemen bietet Angriffsfläche  einheitliche Sicherheitsrichtlinien XBSS (X/Open Baseline Security Specifications) Sicherheit


Herunterladen ppt "Sicherheit."

Ähnliche Präsentationen


Google-Anzeigen