13.06.00 - 04.07.00 - Institut für Informatik
Transcrição
13.06.00 - 04.07.00 - Institut für Informatik
RPC - Remote Procedure Call o Dynamische Anmeldung neuer Dienste å Vorgänger von DCE, CORBA, RMI, DCOM o Sicherheitsapekte anfangs ignoriert o Synchroner Funktionsaufruf o portmap / rpcbind auf TCP port 111 o Meist sehr schwache Authentisierung: å keine å Benutzernummer und Benutzergruppennummer(n) å Authentisierung: Kontaktaufnahme verschlüsselt mit Diffie-Hellman å Authentisierung durch Kerberos Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-1 NIS - Network Information Service o Früher: yp - yellow pages o Zentraler Server für Verzeichnisse, die von einer Menge von Rechnern gemeinsam genutzt werden å /etc/passwd, /etc/group, /etc/services, /etc/hosts, … o Diese Menge von Rechner bildet eine domain. o Domains werden durch Namen identifiziert. o Einbindung in /etc/passwd durch root:sFr4RtfgHzjU7:0:1:admin:/:/bin/sh -keller::2001:102::: +::0:0::: [ +:*:0:0::: ] Vorlesung Datensicherheit Institut für Informatik 1 Freie Universität Berlin 1-2 NIS - Network Information Service o Freie Verbreitung von Benutzerinformationen und verschlüsselten Passwörter ist Grundsätzlich kritisch. o Syntax der Erweiterung von /etc/passwd ist fragwürdig. o Wie bei vielen anderen Verzeichnisdiensten: Einspeisen falscher Daten möglich. o Kommunikation über RPC o Verbesserung: NIS+ å nur verschlüsselte Authentisierung bei RPC å Für große Organisationen geeignet Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-3 Kerberos o Entwickelt am MIT, frei verfügbar o Server speichert Passwörter verschlüsselt, kann sie aber entschlüsseln. o Anmeldeprozedur für Version 4: å Host sendet Benutzernamen an Server. å Server antwortet mit einem Ticket Granting Ticket, verschlüsselt mit dem Passwort des Benutzers. å Host entschlüsselt Ticket mit eingegebenem Passwort. o Anmeldeprozedur für Version 5: å Host sendet Benutzernamen und Zeitstempel verschlüsselt mit eingegebenem Passwort an Server. å Server antwortet mit einem Ticket Granting Ticket, verschlüsselt mit dem Passwort des Benutzers, nur wenn das Passwort richtig war. å Host entschlüsselt Ticket mit eingegebenem Passwort. Vorlesung Datensicherheit Institut für Informatik 2 Freie Universität Berlin 1-4 Kerberos Ticket Granting Ticket o TGT enthält å Session key å Ticket für Ticket Granting Service verschlüsselt mit dem Session key und dem TGS key o Mit dem TGT können beim TGS tickets für verschiedene Dienste angefordert werden, z.B. für entfernten Dateizugriff. o Ein Dateizugriffsticket enthält verschlüsselt den Benutzernamen, seine Gruppenrechte, seine Internetadresse und ein Ablaufdatum. o Bei jedem Zugriff auf entfernte Dateien muss das Ticket mitgeliefert werden. Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-5 Eigenschaftten von Kerberos o Passwörter werden nur auf dem Server gespeichert und nicht über das Netz übertragen. o Der Server ist ein Sicherheitsrisiko, das er die gespeicherten Passwörter entschlüsselt kann und muss. o Installationsaufwand ist hoch, da alle sicherheitsrelevanten Dienste modifiziert werden müssen. Vorlesung Datensicherheit Institut für Informatik 3 Freie Universität Berlin 1-6 NFS - Network File System o Transparente Nutzung von Festplatten und anderen Datenspeichern über das Netz o Server bietet Datenspeicher an. o Client greift über NFS darauf zu. o Entwickelt von Sun, erste Version (2): 1985 o Version 3 seit 1996 Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-7 Eigenschaften von NFS o Server ist zustandslos å kann neu gebootet werden - Client wartet solange o Zugriff über File Handles å file system identifier å file identifier å generation count o Kombination von mount-Protokoll und dem eigentlichen NFS-Protokoll o Protokolle setzt auf RPC auf Vorlesung Datensicherheit Institut für Informatik 4 Freie Universität Berlin 1-8 mount-Protokoll o Server: mountd oder rpc.mountd o Anfragen: NULL MNT Tut gar nichts Liefert File Handle für Dateisystem, registriert Anfragenden DUMP Liefert Liste der gemounteten Dateisysteme UMNT Löscht Registrierung des Anfragenden UMNTALL dito für alle vom Anfragenden gemounteten Dateisysteme EXPORT Liefert die Exportliste des Servers Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-9 NFS-Protokoll o Dateioperationen: GETATTR SETATTR READLINK READ WRITE o Liefert Dateiattribute Setzt Dateiattribute Liest einen Symbolischen Link Liest Datei Schreibt Datei Verzeichnisoperationen: CREATE, LINK, LOOKUP, MKDIR, READDIR, REMOVE, RENAME, RMDIR, SYMLINK Vorlesung Datensicherheit Institut für Informatik 5 Freie Universität Berlin 1-10 NFS-Sicherheitsaspekte o Genauso unsicher wie zugrundeliegender RPC o Unverschlüsselte Übertragung von Dateien o Zugriffsschutz basiert auf Unix-Dateisystem o Sicherheit des Servers ist kritisch å Keine Benutzer-Accounts auf Server! o Authentisierung des Client beruht auf IP-Adresse, wenn sie überhaupt vorgenommen wird o Anfragen ganz ohne Authorisierung möglich o Keine Authentisierung des Servers Garfinkel/Spafford: “For real security, don’t use NFS.” Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-11 Serversicherheit o Konfigurationsdatei å /etc/exports oder /etc/dfs/dfstab å Je NFS-Dateisystem: • • • • • • • o Liste der zugelassenen Clients read only / read write root access anon uid setuid security: Secure RPC (Solaris) oder Secure Port (Linux) user squash (unter Linux) Besonders schützen: å Home-Verzeichnisse å Server-Programme Vorlesung Datensicherheit Institut für Informatik 6 Freie Universität Berlin 1-12 SSL - Secure Socket Layer o Setzt auf zuverlässigem Übertragungsprotokoll auf (TCP) o Aushandeln des Verschlüsselungsverfahrens zwischen Client und Server o Vertraulichkeit der Übertragung durch Verschlüsselung, z.B. mit DES oder RC4 o Optionale Authentisierung von Client und Serversystem o Integrität der Übertragung durch Message Authentication Code (MAC) o Zwei Installationen sind nicht notwendigerweise kompatibel o Offen für die Integration neuer Verschlüsselungsverfahren o Erträgliche Übertragungsrate Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-13 SSL Record Layer o Vertraulichkeit o Authentisierung o Replay Protection o Sicherheitscheck: å Schlüsselgeneration nicht vorhersagbar å Unabhängige Schlüssel für jede Datenrichtung å Neue Schlüssel für jede Verbindung SSL Handshake Protocol o Schlüsselaustausch å Initialisierung å Synchronisierung Vorlesung Datensicherheit Institut für Informatik 7 Freie Universität Berlin 1-14 ssh - Secure Shell o Vollständiger Ersatz für å telnet å rlogin å rsh å rcp å (ftp) o Client- und Server-Authentisierung o Verschlüsselte Passwort- und Datenübertragung o Direkte Unterstützung von verschlüsselter X11-Übertragung o Andere TCP-Protokolle können unterstützt werden Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-15 Sicherheit durch die Secure Shell o Die Secure Shell schützt vor å IP spoofing å Netzschnüfflern å Abhören von Passwörtern å Hijacking von Sitzungen å Abhören von X11 o Authentisierung durch RSA o Verschlüsselung durch verschiedene (wählbare) Methoden å IDEA, DES, triple-DES, blowfish Vorlesung Datensicherheit Institut für Informatik 8 Freie Universität Berlin 1-16 Protokoll der Secure Shell: Verbindungsaufbau 1. Client öffnet Verbindung zum Server. 2. Server sendet seinen public host key und public server key (stündliche Änderung). 3. Client prüft public host key. å /etc/ssh_known_hosts oder $HOME/.ssh/known_hosts o Client generiert session key und schickt ihn dem Server, verschlüsselt mit public host key und public server key. o Der Server entschlüsselt den session key. o Ab nun: verschlüsselte Übertragung Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-17 Protokoll der Secure Shell: Benutzeranmeldung o Passwortabfrage o RSA-Authentisierung des Benutzers å Privaten und öffentlichen Schlüssel mit ssh-keygen generieren. å Öffentlichen Schlüssel auf Server übertragen. å eventuell Abfrage einer Passphrase (ssh-Passwort) å Automatische Übergabe der Passphrase durch ssh-agent und sshadd o RSA-Authentisierung des Rechners å Analog zu rlogin und rsh å /etc/hosts.equiv (/etc/shosts.equiv) (nur bei gleichem Benutzernamen) å $HOME/.rhosts ($HOME/.shosts) å Server schickt Challenge an Client (verschlüsselt mit öffentlichem Schlüssel des Clients) å Client antwortet mit MD5-Prüfsumme des Challenge. Vorlesung Datensicherheit Institut für Informatik 9 Freie Universität Berlin 1-18 Benutzung der Secure Shell o ssh ssh ssh ssh ssh ssh o <entfernterRechner> <Benutzernamer>@<entfernterRechner> -l <Benutzername> <entfernterRechner> <entfernterRechner> <Kommando> <Benutzernamer>@<entfernterRechner> <Kommando> Optionen -c : Verschlüsselungsalgorithmus -C : Komprimierung bei Dateiübertragung -L : Port-Umleitung Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-19 Weitere Kommandos der Secure Shell o scp å wie rcp: Kopieren von oder nach entferntem Rechner å z.B. scp /home/quitte/datei quittek@hostx:/users/quittek/datei o ssh-keygen å erzeugt privaten und öffentlichen RSA-Schlüssel å $HOME/.ssh/identity å $HOME/.ssh/identity.pub o ssh-agent o ssh-add Vorlesung Datensicherheit Institut für Informatik 10 Freie Universität Berlin 1-20 Verlangsamung durch Verschlüsselung o Beispiel: scp-Aufrufe auf einem relativ langsamen Rechner in einem nur leicht belasteten Ethernet Verschlüsselung keine RC4 blowfish DES IDEA Triple-DES Vorlesung Datensicherheit Aufsetzzeit 2,4 s 2,0 s 2,3 s 2.1 s 2,3 s 1,9 s Institut für Informatik Datenrate 386 kB/s 318 kB/s 299 kB/s 219 kB/s 170 kB/s 118 kB/s Freie Universität Berlin 1-21 Nachteile der Secure Shell o (Noch) nicht standardisiert o (Noch) nicht fester Teil von Unix oder Windows o Installations- und Verwaltungsaufwand (host keys) o Reduzierter Durchsatz wegen Verschlüsselungsaufwand o Unterstützung weitere Dienste (z.B. ftp) umständlich o Die Sicherheit von Dateien in Home-Verzeichnis ist kritisch, besonders der private RSA-Schlüssel, aber auch die random seed für den Zufallsgenerator zur Generierung von Schlüsseln. Vorlesung Datensicherheit Institut für Informatik 11 Freie Universität Berlin 1-22 Weiteres zur Secure Shell o Geschätzt: 3 Millionen Benutzer o Geschütztes Markenzeichen å SSH Communications Security Corporation o Protokoll frei verfügbar å Standardisierung durch IETF im Gange o Neues Protokoll: ssh2 å neuer, saubererer Entwurf å bessere Integration von ftp å nicht kompatibel zu ssh1 å Implementationen mit ‘fall back’ zu ssh1 Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-23 E-mail o Zusammen mit WWW meist genutzter Internet-Dienst å 1997: 270 Milliarden E-mails o E-mail-Agenten å Benutzer-Agent å Transport-Agent å Filter-Agent å Speicher-Agent o SMTP - Simple Mail Transfer Protocol (RFC 821) å Adressierung und Versand o Formatierung der E-mail (RFC 822) o E-mail-Listen Vorlesung Datensicherheit Institut für Informatik 12 Freie Universität Berlin 1-24 Aufbau des E-mail-Systems o Benutzer-Agent å Sender und empfängt E-mail nach Benutzer-Interaktion o Transport-Agent å Ist zuständig für die Zustellung von E-mail o Speicher-Agent å Speichert E-mails bis sie vom Empfänger entgegengenommen und gelöscht werden o Filter-Agent å Verhindert Weiterleitung unerwünschter E-mail å Ändert Adressierung å Sendet automatische Antworten Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-25 Aufbau des E-mail-Systems BenutzerBenutzerAgent Agent BenutzerBenutzerAgent Agent FilterFilterAgent Agent SMTP POP, IMAP TransportTransportAgent Agent FilterFilterAgent Agent TransportTransportAgent Agent SMTP Vorlesung Datensicherheit FilterFilterAgent Agent SMTP Institut für Informatik 13 FilterFilterAgent Agent ? SpeicherSpeicherAgent Agent Freie Universität Berlin 1-26 SMTP Simple Mail Transfer Protocol o Definiert durch RFC 821 o Kommunikation zwischen einem Client, der eine E-mail zustellen möchte und einem Server, der dies tun soll. o Wichtige SMTP Kommandos: å HELO å MAIL FROM: å RCPT TO: å VRFY und EPND å DATA å QUIT Vorlesung Datensicherheit Identifizierung des Clients Identifizierung des Senders der E-mail Einer oder mehrere Empfänger der E-mail Zustellbarkeit einer Adresse prüfen Beginn der Übertragung der eigentlichen E-mail Beenden der Verbindung Institut für Informatik Freie Universität Berlin 1-27 Einige SMTP-Antworten 220 <domain> Service ready 221 <domain> Service closing transmission channel 250 Requested mail action okay, completed 251 User not local; will forward to <forward-path> 354 Start mail input; end with <CRLF>.<CRLF> 500 Syntax error, command unrecognized [This may include errors such as command line too long] 502 Command not implemented 503 Bad sequence of commands 550 Requested action not taken: mailbox unavailable [E.g., mailbox not found, no access] 571 (RFC 1893) Error when trying to forward a message [E.g. relaying is not allowed] Vorlesung Datensicherheit Institut für Informatik 14 Freie Universität Berlin 1-28 SMTP-Sitzung, Beispiel 1 telnet example.com 25 220 mail.example.de ESMTP Sendmail 8.10.1/8.10.1; Mon, 26 Jun 2000 08:10:00 +0200 (CEST) HELO test 250 mail.example.de Hello test [1.1.1.1], pleased to meet you VRFY kunz 250 kunz User [email protected] QUIT 221 mail.example.de closing connection VRFY kunz 550 kunz... User unknown VRFY kunz 252 Cannot VRFY user; try RCPT to attempt delivery Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-29 SMTP-Sitzung, Beispiel 2 telnet example.de 25 220 mail.example.de ESMTP Sendmail 8.10.1/8.10.1; Mon, 26 Jun 2000 08:11:00 +0200 (CEST) HELO test 250 mail.example.de Hello test [1.1.1.1], pleased to meet you MAIL FROM: <[email protected]> 250 [email protected] ok RCPT TO: <kunz> 250 [email protected] ok DATA 354 Enter mail, end with "." on a line by itself From: [email protected] To: kunz Subject: Hallo Hallo Kunz, bis bald. . 250 e5PL2kR19462 Message accepted for delivery QUIT 221 mail.example.com closing connection Vorlesung Datensicherheit Institut für Informatik 15 Freie Universität Berlin 1-30 SMTP-Sitzung, Beispiel 3 telnet example.de 25 220 mail.example.de ESMTP Sendmail 8.10.1/8.10.1; Mon, 26 Jun 2000 08:12:00 +0200 (CEST) HELO test 250 mail.example.de Hello test [1.1.1.1], pleased to meet you MAIL FROM: <[email protected]> 250 [email protected] ok RCPT TO: <[email protected]> 250 [email protected] denied QUIT 221 mail.example.com closing connection Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-31 Formatierung der E-mail (RFC 822) o Einige Felder des E-mail-Kopfes: To Cc Bcc From Sender Subject Date Received Reply-To Message-Id Vorlesung Datensicherheit E-mail Adressen und Optional Namen der Empfänger Durchschriftenempfänger Durchschriftenempfänger, unsichtbar für andere Empfänger Autor Absender Betreff Lokales Datum und lokale Uhrzeit Transportvermerk, eine Zeile je Transport-Agent Antwortadresse global eindeutige Identifikation dieser einzelnen E-mail Institut für Informatik 16 Freie Universität Berlin 1-32 Beispiel einer E-mail Return-Path: <[email protected]> Received: from tokyo.ccrle.nec.de ([email protected] [192.168.100.30]) by kyoto.berlin.ccrle.nec.de (8.9.3/8.9.3) with ESMTP id WAA05037 for <[email protected]>; Sun, 25 Jun 2000 22:59:33 +0200 From: [email protected] Received: from test (yamato1.berlin.ccrle.nec.de [192.168.100.29]) by tokyo.ccrle.nec.de (8.10.1/8.10.1) with SMTP id e5PL2kR19462 for <quittek>; Sun, 25 Jun 2000 23:03:19 +0200 (CEST) Date: Sun, 25 Jun 2000 23:03:19 +0200 (CEST) Message-Id: <[email protected]> To: [email protected] Subject: Tach Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-33 Standardformat des Received-Feldes Received: from H1 (H2 [A.B.C.D]) by H3 (V1/V2) with SMTP id MID; for <ADR>; DATE mit å H1 å H2 å H3 å V1 å V2 å SMTP å MID å ADR å DATE Identifikation, die mit dem HELO-Kommando gesendet wurde Name, der der Internet-Adresse A.B.C.D des Clienten entspricht Rechner, der diesen Eintrag vorgenommen hat Versionsnummer des Transport-Agenten Versionsnummer der Konfiguration des Transport-Agenten Benutztes Protokoll zum Transport der E-mail lokale eindeutige Identifikation der E-mail Adresse, die mit dem RCPT TO-Kommando angegeben wurde lokales Datum und Uhrzeit des Empfangs der E-mail Vorlesung Datensicherheit Institut für Informatik 17 Freie Universität Berlin 1-34 Gefälschte Absender o Alle Felder des E-mail-Kopfes können falsch sein. o Ausnahme: Die (oberen) Received-Felder der letzten als zuverlässig eingestuften Transport-Agenten. o Das Format der Received-Felder kann variieren. o Eine Übereinstimmung zwischen dem Adressaten im E-mailKopf und dem durch RCPT TO spezifizierten Empfänger muss nicht vorliegen. o Gleiches gilt für das From-Feld und den durch MAIL FROM spezifizierten Autor. o Authentisierung von E-mails z.B. durch PGP ist anzuraten. Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-35 Spam o Große Mengen unverlangt zugesandter E-mail. å Unsolicited Commercial Email (UCE) å Unsolicited Bulk Email (UBE) o Kostet den Empfänger Online-Zeit, Speicherplatz, Arbeitszeit. o Erster Fall in der Mitte der 70er Jahre. o 1994: Zwei Green Card-Anwälte verschickten Werbung an über 6000 news groups. o Große Mailing-Listen und beliebte News Groups ersparen dem Sender von Spam viel Zeit und Übertragungskosten o Gleiches gilt für Transport-Agenten, die als Relais arbeiten. Vorlesung Datensicherheit Institut für Informatik 18 Freie Universität Berlin 1-36 Typische Spam-Inhalte Untersuchung der Federal Trade Commission 1998 (Analyse von 250.000 E-mails) å Geschäftsgelegenheiten mit Gebühr (Pyramiden-Schema) å Making Money by Sending Bulk Emailings å Kettenbriefe å Heimarbeitsangebote å Gesundheits- und Diätenangebote å Pläne und Angebote für leicht verdientes Geld å Investitionsangebote å Kreditangebote å Touristikangebote Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-37 Verhaltensempfehlung beim Empfang von Spam o Nicht aggressiv über Belästigung beschweren. Das trifft oft den falschen. o Keine Anleitungen befolgen, die versprechen, daß man danach keine E-mails aus dieser Quelle erhält. Diese Bestätigen dem Sender den Empfang und die geweckte Aufmerksamkeit. o Berichten an den Administrator der Quelle. o Installation von Spam-Filtern. Vorlesung Datensicherheit Institut für Informatik 19 Freie Universität Berlin 1-38 Bekämpfung von Spam o Abschalten der Relais-Funktion in Transport-Agenten o Blacklisting und Blackholing von Spam-Quellen und offenen Relais å Mail Abuse Protection System (MAPS) å Realtime Blackhole List (RBL) o Installation und Benutzung von Mail-Filtern. å eingebaut in Benutzer-Agent å Unabhängiger Filter, z.B. procmail Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-39 Transport-Agent Sendmail o Von Eric Allman, UC Berkeley, seit 1980 o 90% aller Transport-Agenten sind Sendmail oder SendmailVarianten von Dritten. o Ständige Aktualisierung und Stopfen von Sicherheitslücken o Aktuelle Version: 8.10.0, 8.10.1, 8.10.2 je nach Betriebssystem o Alternativen: å qmail, exim, Post.Office, pmdf, smail o Konfiguration å sendmail.cf å /etc/aliases å $HOME/.forward Vorlesung Datensicherheit Institut für Informatik 20 Freie Universität Berlin 1-40 Weitere Sicherheitsaspekte von E-mail o Abhören von E-mails å Übertragung im Klartext o Abfangen von E-mails å gefälschte MX Records å Manipulation von Konfigurationsdateien der Transport-Agenten o Denial of Service-Angriffe durch Überlastung von TransportAgenten å Große E-mails å Große Mengen von E-mails å E-mail-Schleifen o Verstecken von Namen sendender Rechner durch sendmail Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-41 HTTP - Hypertext Transfer Protcol o Wird verwendet seit 1990 o 1996 erste öffentliche Spezifikation durch RFC 1945 å HTTP/1.0, frühere Version unter HTTP/0.9 bekannt. o Standardisiert in Version HTTP/1.1 durch RFCs 2068 und 2616 o Einfaches und schnelles Protokoll o Kommunikation zwischen Benutzeragenten (meist Browser), Proxies, Gateways und Servern o Anfrage-Antwort-Schema Vorlesung Datensicherheit Institut für Informatik 21 Freie Universität Berlin 1-42 HTTP-Anfragen o GET å Anfrage nach einer Datei å Erwarte diese geschickt zu bekommen å Angabe der Protokollversion å GET /dateien/123.html HTTP/1.0 o HEAD å wie get, jedoch ohne Dateitransfer o POST å Daten senden o PUT (HTTP/1.1) o DELETE (HTTP/1.1) Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-43 HTTP/1.0-Antworten Vorlesung Datensicherheit 200 201 202 204 301 302 304 400 401 403 404 500 501 502 OK Created Accepted No Content Moved Permanently Moved Temporarily Not Modified Bad Request Unauthorized Forbidden Not Found Internal server Error Not Implemented Bad Gateway 503 Service Unavailable Institut für Informatik 22 Freie Universität Berlin 1-44 HTTP-Nachrichtenköpfe o Der Kopf einer Anfrage darf folgende Felder enthalten: å Authorization - Übergabe eines Passworts o.ä. å From - Angabe der E-mailadresse des anfragenden Benutzers å If-Modified-Since - Macht get conditional å Referer - Angabe, woher der Link kam å User-Agent - Angabe von Produkt und Versionsnummer o Der Kopf einer Antwort darf folgende Felder enthalten: å Location - eine URL å Server - Angabe von Produkt und Versionsnummer å WWW-Authenticate - Aufforderung zur Authorisierung Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-45 HTTP-Datenübertragung o Felder des Kopfes eines Datenblocks å Allow - Liste der erlaubten Anfragen å Content-Encoding - Art der Kodierung des Datenblocks, z.B. x-gzip å Content-Length - Länge des Datenblocks in Byte å Content-Type - z.B. text/html å Expires å Last-Modified o Je nach Art der Nachricht können Felder erforderlich, optional oder nicht vorgesehen sein. Vorlesung Datensicherheit Institut für Informatik 23 Freie Universität Berlin 1-46 HTTP-Authentisierung o Nur Authentisierung des Client vorgesehen o Prozedur: å Server schickt auf eine Anfrage die Antwort 401 (Unauthorized). å Die Antwort enthält ein WWW-Authenticate-Feld mit einer “challenge”. å Client sendet mit der erneuten Anfrage ein Authorization-Feld, das eine gültige Antwort die “challenge” enthält. o Art der “challenge” ist nicht durch HTTP festgelegt. Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-47 HTTP-Sicherheitsprobleme o Persönliche Daten auf Web-Servern å Mißbrauch von Server Log-Dateien å Refer-, From- und User-Agent-Feld o Vertraulichkeit bei der Datenübertragung å Klartextübertragung å Passwörter in URI (URL) o Dateisicherheit auf Server å Pfadnamen außerhalb des Serverbereichs abblocken! o Große Abhängigkeit von DNS-Dienst o Falsche Proxies und Caches o Trennung unterschiedlicher logischer Server auf einem Physischen ist oft kritisch bei der Implementierung des Servers Vorlesung Datensicherheit Institut für Informatik 24 Freie Universität Berlin 1-48 S-HTTP: Secure HTTP o “SSL fuer HTTP” o HTTP-Erweiterung für å Vertraulichkeit durch Verschlüsselung (symmetrisch und unsymmetr.) å (Server-) Authentisierung å Digitalen Signatur o Kapselung von HTTP in S-HTTP å Zusätzliche Felder für Schlüsselaustausch oder Schlüsselindizierung å Integrität einer Nachricht und Authentisierung des Senders durch Message Authentication Code (MAC) å Auch HTTP-Anfragen und Felder der Köpfe werden verschlüsselt o Verhandlung der Kommunikationspartner über das Verschlüsselungsverfahren Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-49 Sicherheit von HTTP-Anwendungen o Geschützt werden soll å der Server (Webserver) å der Client (Browser) å die Datenübertragung o Gefahren drohen von å Server-Erweiterungen å Browser-Erweiterungen å der Datenübertragung über das Internet • auch: Unterbrechung von Verbindungen å Abhängigkeit von anderen Diesnten å Unterbrechung von Verbindungen å Geschwindigkeit des Fortschritts Vorlesung Datensicherheit Institut für Informatik 25 Freie Universität Berlin 1-50 Mögliche weitere Sicherheitsanforderungen o Authentisierung des Benutzer o Authentisierung des Servers o Sicherstellung einer maximalen Bearbeitungszeit o Protokollierung von Vorgängen o Lastverteilung zwischen mehreren Servern Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-51 Typische Angriffspunkte beim E-Commerce o Anschlussleitung des Benutzers zum Internet Service Provider o Systeme des Internet Service Provider o Internet Backbone o Anschlussleitung des Server-Betreibers o Der Server selbst o Das Datenbanksystem des Servers Vorlesung Datensicherheit Institut für Informatik 26 Freie Universität Berlin 1-52 Sicherheit des Servers o Allgemeine Systemsicherheit å sollte hoch sein, da Webserver ein beliebtes Angriffsziel sind o Sicherheit des eigentlichen Webservers å nur ausgereifte Webserver sollten verwendet werden å . . . das reicht oft jedoch nicht o Sicherheit der Erweiterungen å CGI, Servlets å ASP, JSP å. . . Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-53 Sicherheit des Client o Authentisierung des Servers wird selten angewandt o Größte Gefahren å Java Applets å Scripts (JavaScript) å Plug-ins o Java-Applets å Java Sicherheit • Kein Zugriff auf Dateien • Keine Netzwerkverbindung (Socket) zu anderen Systemen als dem Webserver, und dies nur aktiv • Erscheinungsbild der erzeugten Fenster ist eingeschränkt • kein Erzeugen eines neuen Security Manager oder Class Loader • Kein Starten von Systemprogrammen å Signierte Applets Vorlesung Datensicherheit Institut für Informatik 27 Freie Universität Berlin 1-54 JavaScript o Core JavaScript å Allgemeine Sprachdefinition o Client Side Java Script å Core JavaScript mit Objekten zur • Manipulation von HTML-Code • Interaktion mit dem Benutzer å Eingaben • HTML-Dokumente • Zustand des Browsers • Tastatur- und Mauseingaben o Server Side Java Script å Core JavaScript mit Erweiterungen • Generierung von HTML-Code • Anbindung and andere Serverapplikationen, z.B. Datenbanken Vorlesung Datensicherheit Institut für Informatik Freie Universität Berlin 1-55 Client Side JavaScript Security o Zugriffsschutz durch Sprachdefinition å Zugriff nur auf Dokumente von demselben Server å Kein Zugriff auf Browser Cache und Browser History å Dateiname für FileUpload kann nicht gesetzt werden å Versenden von E-mails und News nicht erlaubt å Schließen von Fenstern nur mit Benutzer-Interaktion å Keine versteckten Fenster oder getarnte Fenster erlaubt å Maus- und Tastatureingaben sind nur zugänglich, wenn das betreffende Dokument von demselben Server stammt å Zugriff auf Benutzereinstellungen (Preferences) verboten o Alle Schutzmechanismen sind abschaltbar! Vorlesung Datensicherheit Institut für Informatik 28 Freie Universität Berlin 1-56 Literatur zum Thema Netzwerksicherheit o Charles P. Pfleeger: “Security in Computing”, 2nd edition, Prentice-Hall, 1997. o Simon Garfinkel, Gene Spafford: “Practical UNIX and Internet Security”, 2nd edition, O’Reilly, 1996. o Andrew Tanenbaum: “Computernetzwerke“, Dritte Auflage, Prentice Hall, München, 1996. Vorlesung Datensicherheit Institut für Informatik 29 Freie Universität Berlin 1-57