T1 Vybrané kapitoly počítačových sítí
C6 Bezpe čnost dat v Internetu Bezpečnost 1. 2. 3. 4.
Počítačová bezpečnost HTTP komunikace HTTPS komunikace Statistiky
2
C6 Bezpečnost dat v Internetu
Cíle cvičení 1. Charakterizovat počítačovou bezpečnost. 2. Objasnit HTTP komunikaci. 3. Objasnit HTTPS komunikaci.
3
Počítačová bezpečnost
Kritéria bezpečnosti Důvěrnost (Confidentiality) Bráníme neautorizovanému čtení dat.
Integrita (Integrity) Bráníme neautorizované modifikaci dat.
Dostupnost (Availability) Zajišťujeme oprávněnému uživateli přístup k datům v okamžiku jejich potřeby.
Důvěrnost Bezpečnost Integrita
Dostupnost
4
Počítačová bezpečnost
Autentizace a autorizace Autentizace
1001011011010000111111000011111101
Ověření totožnosti subjektu (uživatele, počítače, …).
Autorizace Přístupové právo pro přístup k určitému souboru nebo pro provedení určité akce.
5
HTTP komunikace
Protokol HTTP Obecně definuje pravidla pro komunikaci mezi klientem a serverem. Definuje tvar přenášených informací, možnosti a náležitosti dotazu a odpovědi.
Verze 0.9
Velmi jednoduchá, sloužila pouze k posílání dat po Internetu bez dalších informací o jejich obsahu.
Verze 1.0 (RFC 1945)
Doplněna o hlavičky, popisující typ a atributy přenášených dat, další hlavičky obsahují pomocné informace či parametry předávané mezi klientem a serverem.
Verze 1.1 (RFC 2616)
Řeší další požadavky, jako jsou hierarchická struktura proxy, využívání cache, trvalé spojení mezi klientem a serverem, nebo požadavky na virtuální servery.
6
HTTP komunikace
Činnost protokolu HTTP HTTP 1.0
Klient pošle požadavek na server, server klientovi odpoví a komunikace se uzavírá. Pro získání dalších dat musí klient navázat nové spojení.
HTTP 1.1
Zavádí možnost trvalého spojení (klient posílá
všechny své požadavky na server a server mu po tomto spojení posílá své odpovědi). Trvalé spojení je chápáno jako implicitní (klient může předpokládat, že server udržuje trvalé spojení a naopak).
Spojení zůstává otevřeno, dokud klient, nebo server spojení neukončí.
7
HTTP komunikace
Formát dotazu a odpovědi Dotaz (request)
Obsahuje dotazový řádek, hlavičky (blíže popisují dotaz), prázdný řádek a tělo dotazu (může být prázdné): metoda cesta verze_HTTP hlavičky
[CRLF]
tělo
Odpověď (response)
Obsahuje stavový řádek, hlavičky a obsah odpovědi: verze_HTTP stavový_kód popis hlavičky
[CRLF]
obsah odpovědi
8
HTTP komunikace
Ukázka komunikace Dotaz GET / HTTP/1.1 Host: www.seznam.cz
dotazový řádek hlavičky
Connection: close User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1) Accept-Encoding: gzip Accept-Charset: ISO-8859-1,UTF-8;q=0.7,*;q=0.7 Cache-Control: no-cache Accept-Language: de,en;q=0.7,en-us;q=0.3 Referer: http://web-sniffer.net/
[CRLF]
prázdný řádek
9
Odpověď HTTP/1.1 200 OK Server: nginx/0.7.65 Date: Mon, 21 Mar 2011 18:41:40 GMT
stavový řádek hlavičky
ContentContent-Type: text/html; charset=UTF charset=UTF--8
HTTP komunikace
TransferTransfer-Encoding: chunked Connection: close CacheCache-Control: maxmax-age=0, nono-cache, mustmust-revalidate SetSet-Cookie: city=Mw==; Domain=.seznam.cz Domain=.seznam.cz;; expires=Tue, 2222-MarMar-2011 18:41:40 GMT; Path=/ Set==; Domain=.seznam.cz Set-Cookie: hint=MTMwMDczMjkwMCwwOw hint=MTMwMDczMjkwMCwwOw==; Domain=.seznam.cz;; expires=Wed, 2525-FebFeb-2111 18:41:40 GMT; Path=/ X-XRDSXRDS-Location: http://id.seznam.cz/yadis http://id.seznam.cz/yadis Expires: Mon, 21 Mar 2011 18:41:40 GMT Pragma: Pragma: nono-cache ContentContent-Encoding: gzip [CRLF] xmlns:fb="http://www.facebook.com/2008/fbml"> <meta httphttp-equiv="Contentequiv="Content-Type" content="text/html; charset=utf charset=utf--8" /> <meta httphttp-equiv="Xequiv="X-UAUA-Compatible" content="IE=8" /> <meta name="application" /> name="application-name" content="Seznam.cz content="Seznam.cz"
Seznam Seznam – Najdu tam, co hledá hledám --> §
prázdný řádek obsah odpovědi
HTTP komunikace
10
Standardně nejsou HTTP požadavek ani odpověď serveru nijak šifrované. To se týká i: uživatelských jmen a hesel, osobních údajů vkládaných do formulářů adresa, datum narození, rodné číslo.
Pokud má někdo přístup k síťové infrastruktuře, kudy data procházejí, může je odposlouchávat. To se týká i hackerů, kteří se dostali k přepínačům, směrovačům apod. po cestě…
11
HTTP komunikace
Příklad HTTP komunikace Start|Spustit…|cmd GET /
12
Protokol HTTPS
HTTPS komunikace
(HyperText Transport Protocol Secure) Nadstavba protokolu HTTP. Komunikace je zabezpečena protokolem SSL (Secure Sockets Layer) nebo TLS (Transport Layer Security).
SSL/TLS zajišťuje: Důvěrnost přenášených dat Data jsou symetricky šifrována.
Integritu přenášených dat Data jsou zabezpečena pomocí MAC (Message Authentication Code).
Autentizaci Jako výchozí je povinná autentizace serveru.
13
HTTPS komunikace
Průběh SSL/TLS Client Hello
Client/Browser
Server Hello
Key Exchange
Cipher Suite Negotiation
HTTP GET
Data Transfer
Server
14
HTTPS komunikace
Autentizace v HTTPS Standardně je povinná autentizace serveru. Když se klient (např. webový prohlížeč) připojuje k (webovému) serveru má jistotu, že se připojil ke správnému serveru. To je důležité při zadávání hesel, čísel platebních karet apod. Phishing…
HTTPS komunikace
15
Server posílá certifikát serveru. Certifikát uvádí jméno serveru a veřejný klíč serveru.
Protokol SSL/TLS dále ověří, zda server má k dispozici soukromý klíč odpovídající certifikovanému veřejnému klíči. Data se šifrují veřejným klíčem serveru, jen správný server bude umět dešifrovat.
16
HTTPS komunikace
Certifikát Certifikát serveru je podepsán vydávající certifikační autoritou (CA). Tato podepisující CA musí být považována za důvěryhodnou. Její certifikát musí být uložen v seznamu důvěryhodných CA.
17
HTTPS komunikace
Seznam důvěryhodných CA Seznamy jsou uloženy v prohlížečích. Internet Explorer bere seznam z OS.
Seznamy je možné konfigurovat. Na počátku jsou v seznamu i desítky CA, o kterých jste nikdy neslyšeli… Těm všem automaticky důvěřujete ☺.
18
HTTPS komunikace
Seznam důvěryhodných CA ve WIE
19
HTTPS komunikace
Seznam důvěryhodných CA v Google Chrome
20
HTTPS komunikace
Seznam důvěryhodných CA v Mozilla Firefox
21
HTTPS komunikace
Certifikát není podepsaný důvěryhodnou CA
HTTPS komunikace
22
Pokud přesto pokračujete: Ve WIE červená výplň panelu Adresa, oznámení, že certifikát je chybný.
23
HTTPS komunikace
Přidání CA mezi důvěryhodné
24
HTTPS komunikace
Certifikát je v pořádku Ve WIE bílá výplň panelu Adresa, znak zámku.
25
HTTPS komunikace
EV (Extended Validation) certifikát podepsaný důvěryhodnou CA Má vyšší míru důvěry ve shodu vlastníka domény s webovým serverem. Technicky ten stejný standard X.509 (s drobnou poznámkou). CA si více žadatele o EV certifikát „proklepne“. Ve WIE zelená výplň panelu Adresa, informace o organizaci vlastnící tento certifikát.
26
HTTPS komunikace
Důvěra, nebo nedůvěra Pokud certifikát není podepsán důvěryhodnou CA, nemusí to automaticky znamenat špatnou stránku. Naopak certifikát podepsaný důvěryhodnou CA nemusí znamenat, že na webové stránce nemůže být nějaký malware. Jednoduché řešení/návody pro uživatele neexistují.
27
HTTPS komunikace
Jak zjistit, jaká CA podepsala certifikát serveru?
28
HTTPS komunikace
Zobrazení certifikátů
29
HTTPS komunikace
Verze protokolů SSL a TLS Existuje několik verzí protokolů:
SSL 1.0, 2.0, 3.0; TLS 1.0, 1.1, 1.2.
Dnes se považují za bezpečné:
SSL 3.0; TLS 1.0 nebo novější.
Nastavení ve WIE
Nástroje|Možnosti Internetu|Upřesnit| Zabezpečení
30
Statistiky
Analýza aktivity na portech 80 a 443
31
Statistiky
Platné SSL certifikáty
32
Statistiky
Kontrola certifikátu Jméno počítače, časová platnost od-do, platný podpis, podpis vytvořen důvěryhodnou CA, …
33
Statistiky
Chyby při ověření certifikátů
2010
Statistiky
34
2011
35
C6 Bezpečnost dat v Internetu
Úkoly do samostudia 1. Charakterizovat počítačovou bezpečnost. 2. Objasnit HTTP a HTTPS komunikaci. 3. Vyhledat důvěryhodné certifikační autority a prohlédnout si certifikáty.