Správa webserveru. Blok 9 Bezpečnost HTTP. 9.1 Úvod do šifrování a bezpečné komunikace. 9.1.1 Základní pojmy



Podobné dokumenty
SSL Secure Sockets Layer

Kryptografie, elektronický podpis. Ing. Miloslav Hub, Ph.D. 27. listopadu 2007

Bezpečnost internetového bankovnictví, bankomaty

Jen správně nasazené HTTPS je bezpečné

Šifrová ochrana informací věk počítačů PS5-2

Šifrování Autentizace Bezpečnostní slabiny. Bezpečnost. Lenka Kosková Třísková, NTI TUL. 22. března 2013

Šifrová ochrana informací věk počítačů PS5-2

Šifrování (2), FTP. Petr Koloros p.koloros [at] sh.cvut.cz.

Útoky na HTTPS. PV210 - Bezpečnostní analýza síťového provozu. Pavel Čeleda, Radek Krejčí

Asymetrická kryptografie a elektronický podpis. Ing. Mgr. Martin Henzl Mgr. Radim Janča ijanca@fit.vutbr.cz

Autentizace uživatelů

asymetrická kryptografie

Cryptelo je systém kompletně navržený a vyvinutý přímo naší společností. Aplikace šifrování do běžné praxe. Cryptelo chrání přímo vaše data

Co je Czech Point? Podací Ověřovací Informační Národní Terminál, zredukovat přílišnou byrokracii ve vztahu

Podpora šifrovaného spojení HTTPS

Identifikátor materiálu: ICT-2-04

Šifrová ochrana informací věk počítačů PS5-1

Postup pro vytvoření žádosti o digitální certifikát pro ověřovací a produkční prostředí Základních registrů

Moderní komunikační technologie. Ing. Petr Machník, Ph.D.

Informatika / bezpečnost

Y36PSI Bezpečnost v počítačových sítích. Jan Kubr - 10_11_bezpecnost Jan Kubr 1/41

C5 Bezpečnost dat v PC

Tel.: (+420)

Užitečné odkazy:

UKRY - Symetrické blokové šifry

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Základy kryptografie. Beret CryptoParty Základy kryptografie 1/17

Elektronický podpis. Základní princip. Digitální podpis. Podpis vs. šifrování. Hashování. Jednosměrné funkce. Odesílatel. Příjemce

Postup pro vytvoření žádosti o digitální certifikát pro produkční prostředí Základních registrů

Šifrování. Tancuj tak, jako když se nikdo nedívá. Šifruj tak, jako když se dívají všichni! Martin Kotyk IT Security Consultnant

Protokol pro zabezpečení elektronických transakcí - SET

Digitální podepisování pomocí asymetrické kryptografie

ElGamal, Diffie-Hellman

OpenSSL a certifikáty

Rozdělení šifer Certifikáty a jejich použití Podání žádosti o certifikát. Martin Fiala digri@dik.cvut.cz

Kryptografie - Síla šifer

Bezpečnost dat. Možnosti ochrany - realizována na několika úrovních

Bezpečnostní aspekty informačních a komunikačních systémů KS2

Inovace bakalářského studijního oboru Aplikovaná chemie

Šifrová ochrana informací věk počítačů KS - 5

Digitální podepisování pomocí asymetrické kryptografie

Informatika Ochrana dat

Bezpečnost vzdáleného přístupu. Jan Kubr

7. Aplikační vrstva. Aplikační vrstva. Počítačové sítě I. 1 (5) KST/IPS1. Studijní cíl. Představíme si funkci aplikační vrstvy a jednotlivé protokoly.

Bezpečnostní mechanismy


České vysoké učení technické v Praze FAKULTA INFORMAČNÍCH TECHNOLOGIÍ katedra počítačových systémů. Digitální důvěra. Jiří Smítka

Šifrování dat, kryptografie

KRYPTOGRAFIE VER EJNE HO KLI Č E

Projekt 2 - Nejčastější chyby. Ing. Dominik Breitenbacher

Protokol RSA. Tvorba klíčů a provoz protokolu Bezpečnost a korektnost protokolu Jednoduché útoky na provoz RSA Další kryptosystémy

Asymetrická kryptografie

9. DSA, PKI a infrastruktura. doc. Ing. Róbert Lórencz, CSc.

8. RSA, kryptografie s veřejným klíčem. doc. Ing. Róbert Lórencz, CSc.

Úvod - Podniková informační bezpečnost PS1-2

2.1. Zásady bezpečného chování Asymetrické šifrování MD5 (Message Digest algorithm) SHA-1 (Secure Hash Algorithm)...

Michaela Sluková, Lenka Ščepánková

dokumentaci Miloslav Špunda

PA159 - Bezpečnostní aspekty

Analýza síťového provozu. Ing. Dominik Breitenbacher Mgr. Radim Janča

Diffieho-Hellmanův protokol ustanovení klíče

PSK2-16. Šifrování a elektronický podpis I

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

MINIMÁLNÍ POŽADAVKY NA KRYPTOGRAFICKÉ ALGORITMY. doporučení v oblasti kryptografických prostředků

Bezpečnost v sítích Cíl. Kryptografické funkce. Existují čtyři oblasti bezpečnosti v sítích. Každá úroveň se může podílet na bezpečnosti

Směry rozvoje v oblasti ochrany informací PS 7

Příručka pro dodavatele. Systém EZVR 1.1 Verze dokumentu 1.3 Datum vydání:

Seminární práce do předmětu: Bezpečnost informačních systémů. téma: IPsec. Vypracoval: Libor Stránský

Západočeská univerzita v Plzni Fakulta aplikovaných věd Katedra informatiky a výpočetní techniky. Diplomová práce

ERP-001, verze 2_10, platnost od

Bezpečnost a bezpečné programování

Správa přístupu PS3-2

ČESKÁ TECHNICKÁ NORMA

Použití čipových karet v IT úřadu

Základy počítačových sítí Šifrování a bezpečnost

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP TCP/IP.

StartSSL: certifikáty zdarma

Uživatel počítačové sítě

Digitální důvěra osnova přednášky

POPIS STANDARDU CEN TC278/WG4. Oblast: TTI. Zkrácený název: Zprávy přes CN 3. Norma číslo:

Obsah. Úroveň I - Přehled. Úroveň II - Principy. Kapitola 1. Kapitola 2

496/2004 Sb. VYHLÁŠKA Ministerstva informatiky ze dne 29. července 2004 o elektronických podatelnách

I.CA RemoteSeal. Ing. Filip Michl První certifikační autorita, a.s

Certifikační prováděcí směrnice

Postup pro vytvoření žádosti o digitální certifikát pro přístup k Základním registrům

Šifrování a bezpečnost. Bezpečnost. Definice. Úvod do počítačových sítí Lekce 12 Ing. Jiří ledvina, CSc.

VYHLÁŠKA. č. 18/2014 Sb., o stanovení podmínek postupu při elektronické dražbě. ze dne 24. ledna 2014

MFF UK Praha, 22. duben 2008

Odesílání citlivých dat prostřednictvím šifrovaného u s elektronickým podpisem standardem S/MIME

INFORMAČNÍ BEZPEČNOST

Postup získání certifikátu pro uživatele WEB aplikací určených pro Sběry dat pro IS VaV

Internet Information Services (IIS) 6.0

Počítačové sítě II. 20. Útoky na síť a její ochrana Miroslav Spousta, 2006 <qiq@ucw.cz>,

EXTRAKT z mezinárodní normy

Historie Kryptografie

POPIS STANDARDU CEN TC278/WG4. 1 z 5. Oblast: TTI. Zkrácený název: Zprávy přes CN 4. Norma číslo:

Přednáška 10. X Window. Secure shell. Úvod do Operačních Systémů Přednáška 10

ISMS. Autentizace ve WiFi sítích. V Brně dne 5. a 12. prosince 2013

Uživatelská dokumentace

Transkript:

Blok 9 Bezpečnost HTTP Studijní cíl Devátý blok kurzu je věnován Identifikaci, autentizaci a bezpečnosti Hypertext Transfer Protokolu. Po absolvování bloku bude student ovládat partie týkající se zabezpečení protokolu http a konfigurace SSL v prostředí webového serveru. Doba nutná k nastudování 2-3 hodiny Průvodce studiem Pro studium tohoto bloku jsou u studentů předpokládány pokročilé znalosti HTTP protokolu a základní povědomí o šifrování počítačových sítí. 9.1 Úvod do šifrování a bezpečné komunikace 9.1.1 Základní pojmy Šifrovací algoritmus - je funkce, obvykle sestavená na nějakém matematickém základě, která provádí samotné šifrování a dešifrování dat. Šifrovací klíč - říká šifrovacímu algoritmu, jak má data šifrovat nebo dešifrovat. Klíče se podobají počítačovým heslům: jakmile informaci zašifrujete, musíte k jejímu dešifrování zadat správný klíč. Šifrovací algoritmus používá klíč při transformaci zašifrovaného textu zpět do nezašifrované podoby. Délka klíče - Stejně jako hesla, i klíče mají nějakou předem určenou délku. Delší klíče jsou bezpečnější než kratší klíče, protože při použití útoku hrubou silou skýtají více kombinací. Různé šifrovací systémy umožňují použití klíčů různých délek, některé dovolují použití klíčů s proměnnou délkou. Výsledná kvalita ochrany dat spočívá ve zvolené šifrovací metodě, typem užitého algoritmu, jeho aplikací, a délkou šifrovacího klíče. KIT/ISPWE 9-1 Lukáš Čegan

9.1.2 Principy bezpečné komunikace Důvěrnost informací - Systém musí zabezpečit, že neautorizované subjekty nebudou mít možnost přístupu k důvěrným informacím Integrita - Systém musí zabezpečit informace proti neautorizované modifikaci Neodmítnutelnost odpovědnosti - Systém musí zabezpečit prevenci proti ztrátě schopnosti přesvědčit třetí nezávislou stranu o přímé odpovědnosti subjektu za odeslání, případně přijetí zprávy. 9.1.3 Šifrovací metody Symetrické šifrování - K šifrování a dešifrování dat se používá pouze jeden klíč. Tento klíč proto musí znát obě strany. Obrázek 1: Symetrické šifrování Asymetrické šifrování - Data se zašifrují veřejným klíčem a mohou být dešifrovány pouze klíčem soukromým Obrázek 2: Přenos adresované, zašifrované (důvěrné), ale nepodepsané (neautorizované) zprávy KIT/ISPWE 9-2 Lukáš Čegan

Obrázek 3: Přenos adresované, zašifrované (důvěrné) a podepsané (autorizované) zprávy 9.1.4 Šifrovací algoritmy Šifrovací systémy se soukromým klíčem DES, 3DES - Data Encryption Standard (DES) je šifrovací algoritmus, vyvinutý v 70. letech Národním úřadem pro standardy a technologie (dnes National Institute of Standards and Technology, NIST) a firmou IBM. DES používá klíč o délce 56 bitů. RC2, RC4 - Blokové šifry původně vyvinuté Ronaldem Rivestem a uchovávané jako obchodní tajemství firmy RSA Data Security. RC5 - Bloková šifra vyvinutá Ronaldem Rivestem, publikovaná v roce 1994. RC5 umožňuje uživateli definovat délku klíče, délku bloku dat a počet šifrovacích průchodů. IDEA - International Data Encryption Algorithm (IDEA), vyvinutý Jamesem L. Massey a Xuejia Lai v Curychu, publikovaný v roce 1990. Skipjack - Algoritmus s klasifikací Tajný, vyvinutý Národní bezpečnostní agenturou (NSA). Šifrovací algoritmy s veřejným klíčem Diffie-Hellman - Systém pro výměnu kryptografických klíčů mezi dvěma stranami. Nejedná se vlastně o šifrovací algoritmus, ale o metodu pro výměnu sdíleného privátního klíče přes veřejné komunikační kanály. RSA - Známý kryptografický systém s veřejným klíčem, vyvinutý (tehdejšími) profesory MITu Ronaldem Rivestem a Adi Shamirem a profesorem USC Leonardem Adlemanem. RSA je možno použít jednak KIT/ISPWE 9-3 Lukáš Čegan

jako šifrovací algoritmus a také jako základ pro systém digitálních podpisů. ElGamal - Algoritmus založený na exponenciální a modulární aritmetice. Podobně jako RSA algoritmus se dá použít k šifrování a digitálním podpisům. DSA - Digital Signature Algorithm, vyvinutý v NSA a převzatý NISTem jako federální standard pro zpracování informací (FIPS). Přestože algoritmus DSA může používat klíče libovolné délky, podle FIPS je možno použít pouze klíče o délce 512 a 1024 bitů.jak vyplývá z názvu, DSA slouží pouze pro digitální podpisy, dá se však upravit i pro potřeby šifrování. 9.1.5 Digitální certifikát Certifikát je zašifrovaná informace, která spojuje veřejný klíč s pravou identitou subjektu. Vydavatel certifikátu se označuje jako certifikační autorita. Certifikát v základní formě obsahuje veřejný klíč, jméno a další údaje zajišťující nezaměnitelnost subjektů. V rozšířené formě potom datum počátku a datum ukončení platnosti, jméno certifikační autority, která certifikát vydala a sériové číslo. Certifikační autorita Komerční vydávají certifikát na základě prověření zákonných záznamů. Např.: www.verisign.com Soukromá (samocertifikační) vydává si certifikáty sama k vlastní potřebě. Nepředpokládají se klienti, kteří by ji nevěřili. Certifikační autority české První certifikační autorita a.s. - http://www.ica.cz/home_cs/ CZ Czechia - http://www.caczechia.cz/ TrustPort - http://www.trustport.cz/ zahraniční VeriSign - http://www.verisign.com/ GeoTrust - http://www.geotrust.com/ Comodo - http://www.instantssl.com/ CACert - https://www.cacert.org/ KIT/ISPWE 9-4 Lukáš Čegan

9.2 SSL(Secure Sockets Layer) SSL vyvinula firma Netscape Commmunications pro zajištění bezpečné komunikace mezi klientem a serverem. SSL je komunikační protokol, který zajišťuje šifrování dat, autentizaci serveru, datovou integritu a autentizaci klienta pro komunikaci na bázi protokolu TCP/IP. Obrázek 4: SSL 9.2.1 Verze SSL Verze 2.0 první verze uvolněná pro používání, měla poměrně dost slabých míst a byla snadno napadnutelná Verze 3.0 - významná úprava bezpečnostních vlastností verze 2.0 TLS (Transaction Layer Security) někdy označován jako SSL 3.1, vznikl v rámci IETF jako internetový standard pro nahrazení 3.0 Protokol TLS je založen na specifikaci protokolu SSL 3.0 publikované firmou Netscape. Rozdíly mezi TLS 1.0 a SSL 3.0 nejsou dramatické, ale jsou natolik významné, že spolu protokoly nespolupracují (ačkoliv TLS 1.0 obsahuje mechanismus pro zpětnou kompatibilitu se SSL 3.0). 9.2.2 Sub-protokoly SSL SSL Handshake Protokol SSL Change Cipher Spec Protocol SSL Alert Protocol SSL Record Protocol SSL Handshake Protocol 1. Klient odešle verzi SSL, informace o šifrách, které používá a náhodně generovaná data KIT/ISPWE 9-5 Lukáš Čegan

2. Server odešle svoji verzi SSL, informace o šifrách, které používá, náhodně generovaná data a svůj certifikát 3. Klient pomocí získaného certifikátu ověří důvěryhodnost serveru, pokud tak nelze učinit, je o tom informován uživatel a spojení je ukončeno 4. Klient vytvoří z dat dosavadní komunikace tzv. premaster secret, zašifruje ho pomocí veřejného klíče serveru získaného z certifikátu a odešle ho serveru 5. Server použije svůj privátní klíč k dešifrování premaster secret a vytvoří z něj master secret, ze kterého si vygeneruje klíč sezení 6. Klient si rovněž vytvoří master secret a z něj vygeneruje klíč sezení 7. Klient zašle zprávu serveru, že další data budou šifrována klíčem sezení a odešle zašifrované sdělení, že fáze handshake byla u něj skončena 8. Server rovněž zašle, že další data budou šifrována klíčem sezení a odešle zašifrované potvrzení, že fáze handshake byla ukončena. SSL Change Cipher Spec Protocol Tento protokol je používán v poslední fázi činnosti SSL Handshake protokolu. Jeho účelem je umožnit účastníkům přesun z vyčkávacího do provozního stavu. To znamená, že účastníci ukončí použití algoritmus výměny klíčů a začnou používat šifrovací a ověřovací algoritmy, které byly definovány v předchozích fázích Handshake protokolu. SSL Alert Protocol Významem tohoto protokolu je předávání informací o chybách objevujících se v průběhu celého spojení (connection). Výstrahy (alerts) jsou dvou úrovní fatální a varovné. Pokud se objeví fatální výstraha, spojení je okamžitě ukončeno. Ostatní spojení používající stejnou cestu (session) mohou pokračovat, ale session ID bude označeno jako neplatné, takže na této cestě nebude možné navázat žádné nové spojení. SSL Record Protocol Přenášená data jsou v případě protokolu SSL balena do objektu nazývaného record. Record obsahuje hlavičku a data (formát přenášených dat). KIT/ISPWE 9-6 Lukáš Čegan

Praktické cvičení 1. Založte si na hostingovém serveru http://fei-hostingadmin.upceucebny.cz účet a vytvořte zabezpečenou zónu pomocí prostřednictvím HTTP autentizace. a. Zavedení modulu při startu Apache LoadModule ssl_module modules/mod_ssl.so b. Zavedení externího konfiguračního souboru Include conf/extra/httpd-ssl.conf c. Vytvoření soukromého klíče openssl req -config../conf/openssl.cnf -new -out myserver.csr Při vyplňování zadejte do Common Name přesné jméno domény pro kterou bude certifikát platný Výsledkem jsou soubory:.rnd soubor s náhodnými daty, podle kterých se vytvořil klíč my-server.csr certifikát privkey.pem soukromý klíč d. Vytvoření serverového šifrovacího klíče openssl rsa -in privkey.pem -out my-server.key Výsledkem je soubor my-server.key klíč kterým server šifruje komunikaci. e. Vytvoření certifikátu - na začátku komunikace obdrží klientův prohlížeč openssl x509 -in my-server.csr -out my-server.cert -req - signkey my-server.key -days 365 Výsledkem je certifikát s platností 365 dni my-server.cert f. Vytvoření samostatného certifikátu potřebný pro starší prohlížeče, do kterých se musí certifikát ručně stáhnout a nainstalovat. openssl x509 -in my-server.cert -out my-server.crt - outform DER Výsledkem je certifikát my-server.crt KIT/ISPWE 9-7 Lukáš Čegan

g. Konfigurace konfiguračního souboru http-ssl.conf SSLCertificateFile "C:/apache/conf/my-server.cert" SSLCertificateKeyFile "C:/apache/conf/my-server.key" Umístěte váš certifikát conf my-server.cert a klíč my-server.key do vámi určeného uložiště a upravte k nim cesty v http-ssl.conf h. Ošetření přístupu uživatelů na vaše stránky zabezpečeně. Lze zajistit pomocí přesměrování do zabezpečené zóny. Například v PHP <?php $SSL_Port=443; if ($_SERVER['SERVER_PORT']!=$SSL_Port) { header ("Location: https://localhost/index.php"); exit(); } phpinfo();?> 2. Připojte se na server http://fei-hostingadmin.upceucebny.cz a prostudujte certifikát spojení server. 3. Analyzujte zabezpečenou síťovou komunikaci prostřednictvím programu WhiteShark 1. Otázky k procvičení pasáže 1. Co je to Cookies a k čemu slouží? 2. Jaký je rozdíl mezi Basic a Digest autentizací? 3. K čemu slouží SSL? 4. Co obsahuje digitální certifikát? 5. Jaký je rozdíl mezi symetrickým a asymetrickým šifrováním? Odkazy na další studijní materiály http://www.openssl.org/ (Open SSL) http://www.ietf.org/rfc/rfc2818.txt (HTTP Over TLS) http://www.ietf.org/rfc/rfc2459.txt (Internet X.509 Public Key Infrastructure) 1 http://www.wireshark.org/ KIT/ISPWE 9-8 Lukáš Čegan