Bezpieczeństwo WWW. Plan prezentacji. WWW a protokoły TCP/IP; URL. Czym jest WWW?



Podobne dokumenty
Systemy internetowe. Wykład 5 Architektura WWW. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

Technologie internetowe

Bezpieczne protokoły Materiały pomocnicze do wykładu

Programowanie w Internecie

Protokół HTTP 1.1 *) Wprowadzenie. Jarek Durak. rfc2616 źródło

Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)

Elektroniczne płatnoÿci z wykorzystaniem bezpiecznego WWW


Sieci komputerowe. Wykład 8: Warstwa zastosowań: FTP i HTTP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Technologie Internetu. Protokół HTTP. Aleksander Denisiuk.

Programowanie Sieciowe 2 Protokoły komunikacyjne: HTTP

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II

SSL (Secure Socket Layer)

Protokół HTTP. 1. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

Wykład 4. komputerowych Protokoły SSL i TLS główne slajdy. 26 października Igor T. Podolak Instytut Informatyki Uniwersytet Jagielloński

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

ZiMSK. Konsola, TELNET, SSH 1

HTTP W 5-CIU PYTANIACH MICHAŁ KOPACZ

Języki programowania wysokiego poziomu WWW

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

Wybrane działy Informatyki Stosowanej

Stos TCP/IP. Warstwa aplikacji cz.2

systemów intra- i internetowych Platformy softwarowe dla rozwoju Architektura Internetu (2) Plan prezentacji: Architektura Internetu (1)

I.Wojnicki, Tech.Inter.

Podstawy Secure Sockets Layer

FTP co to takiego? FTP File Transfer Protocol (Protokół Przesyłania Plików) RFC 114,959

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Protokół SSL/TLS. Algorytmy wymiany klucza motywacja

Wykład 3 / Wykład 4. Na podstawie CCNA Exploration Moduł 3 streszczenie Dr inż. Robert Banasiak

Aplikacje WWW. Wykład 4. Protokół HTTP. wykład prowadzi: Maciej Zakrzewicz. Protokół HTTP

ZESZYTY ETI ZESPOŁU SZKÓŁ W TARNOBRZEGU Nr 2 Seria: Teleinformatyka 2013

Lab5 - Badanie protokołów pocztowych

MODEL WARSTWOWY PROTOKOŁY TCP/IP

Protokół SSL/TLS. Patryk Czarnik. Bezpieczeństwo sieci komputerowych MSUI 2009/10. Wydział Matematyki, Informatyki i Mechaniki Uniwersytet Warszawski

TCP/IP. Warstwa aplikacji. mgr inż. Krzysztof Szałajko

Plan wykładu. 1. Protokół FTP. 2. Protokół HTTP, usługi www, model request-response (żądanie-odpowiedź), przekazywanie argumentów, AJAX.

I.Wojnicki, Tech.Inter.

Serwery WWW. Konfiguracja. Zadania serwera. NCSA httpd 1.5

Ataki na aplikacje WWW. Łomem, czy wytrychem? Jak dobrać się do aplikacji WWW

1. Model klient-serwer

Zdalne logowanie do serwerów

Architektura bezpiecznych aplikacji internetowych na platformie Java Enterprise Edition. Jakub Grabowski Warszawa,

Zastosowania informatyki w gospodarce Wykład 8

Sieci komputerowe Warstwa aplikacji

Uwierzytelnianie HTTP

JĘZYK PYTHON - NARZĘDZIE DLA KAŻDEGO NAUKOWCA. Marcin Lewandowski [ mlew@ippt.gov.pl ]

I.Wojnicki, JiTW. Języki i Technologie Webowe. Protokół HTTP, Przegladarki. Igor Wojnicki

Adres IP

I.Wojnicki, Tech.Inter.

Warstwa aplikacji. część 1. Sieci komputerowe. Wykład 8. Marcin Bieńkowski

HTTP. literatura:

Protokoły Internetowe

Sieci komputerowe i bazy danych

Technologie sieciowe Sprawozdanie z labolatorium. Lista 5

PSI Protokół HTTP + wstęp do przedmiotu. Kraków, 10 październik 2014 mgr Piotr Rytko Wydział Matematyki i Informatyki UJ

Bezpieczeństwo Systemów Komputerowych. Wirtualne Sieci Prywatne (VPN)

XML-RPC: Zdalne wykonywanie procedur

System operacyjny UNIX Internet. mgr Michał Popławski, WFAiIS

Protokoły internetowe

Sieci komputerowe. Zajęcia 3 c.d. Warstwa transportu, protokoły UDP, ICMP

Bezpieczeństwo systemów informatycznych

Model warstwowy Warstwa fizyczna Warstwa łacza danych Warstwa sieciowa Warstwa transportowa Warstwa aplikacj. Protokoły sieciowe

Oracle WebServer - architektura i administrowanie

TIN Techniki Internetowe zima

Sieciowe systemy informacyjne

Plan wykładu. 1. Sieć komputerowa 2. Rodzaje sieci 3. Topologie sieci 4. Karta sieciowa 5. Protokoły używane w sieciach LAN 6.

Typy przetwarzania. Przetwarzanie zcentralizowane. Przetwarzanie rozproszone

Problemy z bezpieczeństwem w sieci lokalnej

Bazy danych i usługi sieciowe

Usługi sieciowe systemu Linux

SSL VPN Virtual Private Network with Secure Socket Layer. Wirtualne sieci prywatne z bezpieczną warstwą gniazd

SIP: Session Initiation Protocol. Krzysztof Kryniecki 16 marca 2010

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Dostęp zdalny

Zaawansowany kurs języka Python

Sieci komputerowe. Wykład dr inż. Łukasz Graczykowski

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4

Wykład 5: Najważniejsze usługi sieciowe: DNS, SSH, HTTP, . A. Kisiel,Protokoły DNS, SSH, HTTP,

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Laboratorium nr 4 - Badanie protokołów WWW

Protokół HTTPS. Adam Danecki Informatyka gr. 1.4

Wojciech Dworakowski. Zabezpieczanie aplikacji. Firewalle aplikacyjne - internetowych

Sieci komputerowe. Wstęp

Protokoły zdalnego logowania Telnet i SSH

Tomasz Greszata - Koszalin

Java Enterprise Edition spotkanie nr 1 (c.d.) JavaMail

Sieci VPN SSL czy IPSec?

Zastosowania PKI dla wirtualnych sieci prywatnych

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Kierunek: Automatyka i Robotyka Studia stacjonarne I stopnia: rok I, semestr II

Sprawozdanie Sieci komputerowe i bazy danych Laboratorium nr 4 Wojciech Kaczmarski

Studium przypadku Case Study CCNA2-ROUTING. Warianty projektów

Wykaz zmian w programie SysLoger

Dr Michał Tanaś(

Java wybrane technologie

Sieci komputerowe. Wykład 7: Warstwa zastosowań: DNS, FTP, HTTP. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

TelCOMM Wymagania. Opracował: Piotr Owsianko Zatwierdził: IMIĘ I NAZWISKO

HTTP, CGI, Perl. HTTP HyperText Transfer Protocol. CGI Common Gateway Interface. Perl Practical Extraction and Report Language

mgr inż. Michał Paluch

World Wide Web? rkijanka

Zadanie programistyczne nr 3 z Sieci komputerowych

Transkrypt:

Plan prezentacji Bezpieczeństwo WWW Krzysztof Szczypiorski, Piotr Kijewski Instytut Telekomunikacji Politechniki Warszawskiej e-mail: {K.Szczypiorski,P.Kijewski}@tele.pw.edu.pl Secure 98 - Zegrze, 2-3 kwietnia 1998 Wprowadzenie czym jest WWW? związek z protokołami rodziny TCP/IP, URL Architektura WWW MIME, HTTP, wymiana pomiędzy klientem a serwerem architektura usługowa Zagrożenia Bezpieczeństwo transportu (S-HTTP, SSL, ) po stronie serwera (konfiguracja, umiejscowienie serwera) po stronie klienta (Java, JavaScript, ActiveX) Szczypiorski, Kijewski Bezpieczeństwo WWW 2 Czym jest WWW? WWW, W3 - World Wide Web - World Wide Wait reakcja na frustracje związane: z ograniczeniami Internetu i z jego niekontrolowanym rozwojem (liczba dokumentów i ich rozmieszczenie) wprzeszłości każdy protokół (FTP, Gopher, NNTP, WAIS, Telnet, SMTP) wymagał: innego oprogramowania do obsługi (klienta) różnił się reprezentacją przechowywanych plików wymagał zaangażowania ludzi pomysł - unifikacja poprzez WWW (nowy protokół HTTP) najważniejsze fakty z 9. letniej historii 1989 Tim Bernes-Lee z grupą fizyków z European Laboratory for Particle Physics (CERN) proponuje stworzenie nowego systemu 1990 powstaje nazwa WWW dla pierwszej implementacji na maszynach NeXT; HTTP i HTML 1990 grudzień - pierwsze wersję oprogramowania dostępne poza CERN 1992 styczeń - pierwsza tekstowa przeglądarka z CERN rozumiejąca HTML 2.0 Szczypiorski, Kijewski Bezpieczeństwo WWW 3 WWW a protokoły TCP/IP; URL WWW TCP IP /MAN/WAN UDP Aplikacje Transport Sieć Transmisja URL Uniform Resource Locator http://www.tele.pw.edu.pl:8000/www/przyklad.html protokół nazwa maszyny HTTP/MIME FTP NNTP SMTP numer portu ścieżka Szczypiorski, Kijewski Bezpieczeństwo WWW 4

MIME Multipurpose Internet Mail Extensions typ pliku rozpoznawany po końcówce x dla eksperymentalnych typów MIME Idea działania HTTP HyperText Transfer Protocol -wersja1.0 TCP application/msword application/news-message-id application/postscript application/x-tex application/zip message/news message/rfc822 multipart/alternative multipart/mixed Żądanie: metoda, nagłówki, dane audio/basic audio/x-wav image/gif image/jpeg text/html text/plain video/mpeg video/x-msvideo Przeglądarka: nawiązanie Odpowiedź: kod statusu, nagłówki, dane Serwer: zakończenie Szczypiorski, Kijewski Bezpieczeństwo WWW 5 Szczypiorski, Kijewski Bezpieczeństwo WWW 6 HTTP - żądania klienta Żądanie: metoda GET pobierz zawartość danego dok. HEAD pobierz info. o nagłówku danego dok. POST potraktuj dokument tak jak - wyślij do niego dane PUT zamień zawartość danego dokumentu DELETE skasuj dany dokument From adres e-mail użytkownika User-Agent info. o przeglądarce Accept wspierane typy MIME Accept-Encoding wspierany typ kompresji Referer ostatnio wyświetlany URL Authorization kontrola dostępu Charge-To opłaty If-Modified-Since tylko jeśli modyfikacja po Pragma instrukcje wewn. serwera Content-Length długość danych w bajtach Żądanie: nagłówki Szczypiorski, Kijewski Bezpieczeństwo WWW 7 HTTP - odpowiedź serwera cz.1/2 2xx sukces 200 OK 202 Accepted 204 No response 3xx przekierowanie 4xx błąd po stronie klienta 400 Bad Request 403 Forbidden 404 Not Found 5xx bląd postronieserwera 500 Internal Error 501 Not Implemented Odpowiedź: kod statusu Przykłady Szczypiorski, Kijewski Bezpieczeństwo WWW 8

HTTP - odpowiedź serwera cz.2/2 Server info. o serwerze Odpowiedź: Date aktualna data (czas GMT) nagłówki Last-Modified ostatnia modyfikacja dokumentu Expires data ważności URI adres przekierowania MIME-Version wersja MIME Content-Length długość danych Content-Type typ danych Content-Encoding metoda kompresji Content-Language język dokumentu Content-Transfer-Encoding metoda kodowania (np. 7-bitowe, binarne) WWW-Authenticate kontrola dostępu Message-Id identyfikator wiadomości (tylko News) Cost koszt Link URL ojca dokumentu Title tytuł Allowed żadania żądającego użytk. mogą zostać wykonane Public żądania dowolnego użytk. mogą zostać wykonane Przykład wymiany HTTP >telnet www.tele.pw.edu.pl http Trying 148.81.65.117 Connected to bach.tele.pw.edu.pl. Escape character is ^]. GET /www/example.txt HTTP/1.0 From: lamer@any.site.pl Accept: text/plain Accept: text/html HTTP/1.0 200 OK Date: Monday, 2-Apr-98 12:34:56 GMT Server: WebServer/1.0 MIME-version: 1.0 Last-modified: Sunday, 1-Apr-98 11:11:11 GMT Content-length: 12 Udalo sie! Connection closed by foreign host. > Przeglądarka: 1. nawiązanie 2. żądanie Serwer: 3. odpowiedź 4. zakończenie Szczypiorski, Kijewski Bezpieczeństwo WWW 9 Szczypiorski, Kijewski Bezpieczeństwo WWW 10 WWW - architektura usługowa. Zagrożenia Programy uruchamiane po stronie przeglądarki Przeglądarka Przeglądarka Przeglądarka po stronie klienta (przeglądarki) Zagrożenia Obszary zabezpieczeń Sieć /MAN/WAN transportu Serwer Uruchamialne y serwera Szczypiorski, Kijewski Bezpieczeństwo WWW 11 Pliki Skrypt Skrypt Skrypt Inne serwery lub programy po stronie serwera S-HTTP/1.3 (Secure HTTP) 1995 - Enterprise Integration Technologies Corp. - E. Rescorola i A.Schiffman rozszerzenie HTTP shttp:// - ten sam port TCP co http:// szyfrowanie, integralność (MAC), podpis cyfrowy żądanie: Secure * Secure-HTTP/1.3 jedyna linia statusu: Secure-HTTP/1.3 200 OK. dwa typy nagłówków: nagłówki ogólne - definiują zastosowane mech. ochrony informacji - nie chronione nagłówki HTTP - chronione poprzez enkapsulację Szczypiorski, Kijewski Bezpieczeństwo WWW 12

SSL Secure Sockets Layer - wersja 3.0 Netscape Communications na popularność składa się: proste tworzenie aplikacji, łatwość wużyciu bezpieczeństwo (nie chroni jednak przed analizą ruchu) biblioteki (public domain SSL - SSLeay, SSLava - Java) https:// - port TCP 443 poufność, integralność, uwierzytelnienie ulepszenie wersji 2.0 przyszłość: Transport Layer Security 1.0 draft IETF z 12.11.97 (ważny do 12.05.98) http://www.ietf.org/internet-drafts/draft-ietf-tls-protocol-05.txt Change cipher spec SSL Alert SSL SSL 3.0 - architektura HTTP Record SSL TCP/IP Handshake SSL Application Data - zmiana kryptosystemów szyfrujących - protokół alarmów: +ostrzeżenia +błędy krytyczne - dane - protokół wstępnej negocjacji - fragmentacja -kompresja - ochrona kryptograficzna - niezawodny protokół transportowy Szczypiorski, Kijewski Bezpieczeństwo WWW 13 Szczypiorski, Kijewski Bezpieczeństwo WWW 14 Klient ClientHello Certificate* ClientKeyExchange* CertificateVerify* [ChangeCipherSpec] Finished ApplicationData SSL 3.0 - Handshake SSL ServerHello Certificate* CertificateRequest* ServerKeyExchange* [ChangeCipherSpec] Finished ApplicationData Serwer Najważniejsze problemy związane z SSL wg. Paula Kochera 1. Obciążenie obliczeniowe klienta i serwera. 2. Dodatkowy ruch w sieci (handshake). 3. Trudna migracja w stronę systemu symetrycznego. 4. Nie współpracuję dobrze z istniejącymi tokenami kryptograficznymi (Kerberos). 5. Zarządzanie kluczami kosztowne (często wymaga hardware u). 6. Wymaga urzędu ds. certyfikacji z określoną polityką. 7. Zaszyfrowane informacje nie dają się kompresować (modemy). 8. Międzynarodowe restrykcje na algorytmy kryptograficzne. Szczypiorski, Kijewski Bezpieczeństwo WWW 15 Szczypiorski, Kijewski Bezpieczeństwo WWW 16

Handshake Datagram v2.0 Private Communication Technology 1995 - Microsoft - wersja 1.0 mutacja SSL 2.0 HTTP Error Handling TCP/IP Key Management User Data Bezpieczeństwo po stronie serwera bezpieczna maszyna usunięcie zbędnych usług i użytkowników, rozszerzone logowanie, aktualne łaty bezpieczny serwer HTTP wybór bezpiecznego serwera (producent, produkt, wersja) konfiguracja: wyłączenie automatycznego listowania katalogów wyłączenie Symbolic Link Following katalogi użytkowników - szczególne restrykcje na symlinki i y y: serwer uruchomiony z prawami nobody anonimowe FTP bez możliwości zapisu ograniczenie praw na plikach konfiguracyjnych uruchomienie w środowisku chroot zablokowanie odczytu plików access-log i error-log kontrola dostępu na poziomie serwera bezpieczne y anonimowość Szczypiorski, Kijewski Bezpieczeństwo WWW 17 Szczypiorski, Kijewski Bezpieczeństwo WWW 18 1 2 3 GET /cgi-bin/ Bezpieczne CGI Common Gateway Interface 4 GET /cgi-bin/?name=asia 5 przeglądarka Asia ma 21 lat - wybór języka (Perl vs. C/C++) - czego należy unikać pisząc programy? - jak weryfikować ściągnięte y? serwer Serwer WWW a firewalle cz.1/2 bastion bastion i Serwer wewnętrzny Kozioł ofiarny Serwer na bastionie Szczypiorski, Kijewski Bezpieczeństwo WWW 19 Szczypiorski, Kijewski Bezpieczeństwo WWW 20

Serwer WWW a firewalle cz.2/2 Bezpieczeństwo po stronie przeglądarki bastion bastion wewnętrzny Serwer obok bastiona zewnętrzny (mirror) Chaining proxy prywatność żądań klienta problemy z: Java (Sun) JavaScript (Netscape) ActiveX (Microsoft) inne błędy w implementacjach przeglądarek: Microsoft Internet Explorer Netscape Navigator Szczypiorski, Kijewski Bezpieczeństwo WWW 21 Szczypiorski, Kijewski Bezpieczeństwo WWW 22 KONIEC Czy mają Państwo pytania? Krzysztof Szczypiorski, Piotr Kijewski Instytut Telekomunikacji Politechniki Warszawskiej e-mail: {K.Szczypiorski,P.Kijewski}@tele.pw.edu.pl