1 / 10

SSL ( Secure Sockets Layer )

tyson
Download Presentation

SSL ( Secure Sockets Layer )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Većina trgovine na Internetu se temelji na SSL protokolu. Zadatak ovog protokola je uspostavljanje sigurne komunikacije između klijenta i servera na primer, Web servera i Browsera. Zadatak SSL protokola je da ostvari zaštićeni prenos podataka kroz mrežu. SSL obezbeđuje mehanizme za identifikaciju servera, identifikaciju klijenta i šifrovanu razmenu podataka između njih. • SSL obezbeđuje tri svojstva zaštite: • Privatnost – Podaci šifrovani simetričnim algoritmom (DES, RC4) • Provera identiteta – Identitet se proverava javnim ključem koristeći RSA • Integritet – Za proveru primljenih podataka koristi se SHA ili MD5 SSL ( Secure Sockets Layer )

  2. SSL ( Secure Sockets Layer ) SSL je smešten iznad transportnog sloja, a ispod aplikacionog. Pošiljalac prima poruku sa aplikacionog sloja, rastavlja je na delove koji se šifruju, zatim dodaje kontrolni broj i eventualno komprimuje te delove. Na drugoj strani primalac prima delove poruke, po potrebi ih dekomprimuje, proverava kontrolne brojeve, dešifruje i šalje ih ka aplikacionom sloju. SSL protokol je nezavisan od aplikacionog sloja. SSL se sastoji od dva “podprotokola” • SSL Handshake – uspostavljanje sesije koja omogućava klijentu i serveru međusobnu identifikaciju i odabir algoritma i ključeva • SSL Record – šifrovanje i prenos poruka

  3. SSL ( Secure Sockets Layer ) Pri uspostavljenju zaštićenog prenosa SSL zahteva identifikaciju servera. To se događa pri uspostavljanju sesije slanjem sertifikata. Za identifikaciju se koristi javni ključ i digitalni potpis servera. Posle identifikacije razmena podataka odnosno šifrovanje se vrši uz upotrebu simetričnog algoritma. Sertifikaciono telo može da posluži za izdavanje sertifikata, ali komunikacija sa CA serverom nije deo protokola SSL. Uspostavljanje sesije između klijenta i servera može da se vrši i bez identifikacije između klijenta i servera, pri čemu je sigurnost podataka koji se prenose na znatno nižem nivou.

  4. SSL poruke Komunikacija između klijenta i servera se odvija uz pomoć poruka. Poruke odnosno njeni formati su unapred definisani: • Alert – obaveštava entitete u komunikaciji o mogućem sigurnosnom propustu ili grešci u komunikaciji • ApplicationData – podaci koje dve strane razmenjuju, šifrovani su, autentifikovani i verifikovani su od strane SSL-a • Certificate – poruka koja prenosi sertifikat sa javnim ključem • CertificateRequest – zahtev servera klijentu za klijentovim sertifikatom • CertificateVerify – poruka kojom klijent potvrđuje da ima tajni ključ koji odgovara javnom ključu u sertifikatu

  5. SSL poruke • ClientHello – poruka od strane klijenta kojom obaveštava server o sigurnosnim servisima koje želi i koje podržava • ClientKeyExchange – klijentova poruka koja sadrži kriptografske ključeve za komunikaciju • Finished – obaveštenje da su svi koraci pregovora gotovi i da je uspostavljena sigurna komunikacija • HelloRequest – zahtev servera klijentu za početak pregovora oko sigurnosnih parametara u komunikaciji • ServerHello – poruka kojom server javlja koji će sigurnosni servisi biti korišćeni • ServerHelloDone – obaveštenje servera da je poslao sve zahteve klijentu za uspostavljanje komunikacije • ServerKeyExchange – poruka servera koja sadrži kriptografske ključeve za komunikaciju

  6. Opis postupka • Klijent šalje ClientHello poruku predlažući parametre za SSL komunikaciju • Server odgovara sa ServerHello porukom i bira parametre • Server šalje svoj javni ključ u ServerKeyExchange poruci • Server zaključuje svoj deo pregovora sa ServerHelloDone porukom • Klijent šalje ključ šifrovan javnim ključem servera u ClientKeyExchange poruci • Klijent šalje ChangeCipherSpec poruku da bi aktivirao sigurnosne opcije za sve buduće poruke • Klijent šalje poruku Finished i javlja serveru da proveri nove opcije • Server šalje ChangeCipherSpec poruku kako bi aktivirao sigurnosne opcije za sve buduće poruke • Server šalje poruku Finished i javlja klijentu da proveri nove opcije

  7. SSL zapisi SSL protokol podatke prima sa višeg sloja u blokovima proizvoljnih dužina, šifruje i kao takve šalje drugom entitetu u komunikaciji. Primljeni podaci se dele na blokove. Svi delovi protokola za zapise se komprimuju sa algoritmom koji je dogovoren prilikom uspostave sesije. Podaci se ne smeju gubiti tokom kompresije. Podaci se zatim štite simetričnim algoritmom koji je opet dogovoren prilikom uspostave sesije. Posle šifrovanja i komprimovanja delova poruke dodaje se MAC vrednost. Tako šifrovani delovi poruke su spremni za slanje. Na drugoj strani primalac dešifruje delove poruke izračunava MAC vrednost i upoređuje je sa vrednostima koje je dobio od strane pošiljaoca. Ukoliko su vrednosti identične poruka se prihvata. U suprotnom poruka se vraća uz izveštaj o grešci.

  8. Moguće greške u SSL protokolu • Neispravna MAC vrednost – prekid veze, sumnja na napad • Greška prilikom dekomprimovanja delova poruke • Greška pri uspostavljanju sesije – neusklađeni predloženi atributi zaštite • Neočekivana poruka – prekid veze • Neodgovarajući parametri koji se odnose na sertifikate – nevažeći sertifikat, nepodržavanje sertifikata od strane protokola ili nepostojanje istog

  9. Man-in-the-middle Ova vrsta napada je oblik narušavanja sigurnosti u kome se napadač smesti između dve strane koje komuniciraju i zatim presreće i modifikuje podatke koji se šalju. Postoje dve vrste ovakvih napada. Jedna vrsta se odnosi na takozvane pasivne napade gde se karakteristika ovakvih napada ogleda u prisluškivanju. Drugi oblik i znatno opasniji se odnosi na uspešno presretanje sigurne komunikacije između dve osobe i izmena podataka koji se razmenjuju. Ovakvu vrstu napada opisaćemo na primru Boba i Alise koji žele tajno da razmenjuju informacije. U trenutku kada Bob šalje Alisi svoj javni ključ, napadač presreće poruku i Alisi dalje šalje svoj javni ključ. Alisa ne sluteći da se odvija napad uzima dobijeni ključ, za koji misli da je Bobov javni ključ, te u nastavku komunikacije nazad šalje svoj javni ključ. Napadač zatim ponovo presreće poruku i svoj javni ključ prosleđuje Bobu. Bob za dobijeni ključ predpostavlja da je Alisin i počinje komunikaciju koristeći taj ključ, ne sluteći da nije Alisin. Sve dalje poruke napadač presreće, dešifruje i po želji menja, a da ni Bob ni Alisa nisu svesni toga. U slučaju SSL protokola postoje mnoge mogućnosti za izvođenje napada sa čovekom u sredini. Korisnik koji želi da razmeni šifrovane fajlove može biti preusmeren raznim tehnikama. Primera radi može se izvršiti napad na privremeni sloj protokola za razreševanje IP adresa, zavaravanje DNS-a i sl.

  10. Primena SSL-a Najčešće se koristi pri plaćanju kreditnom karticom. Za ovakve transakcije SSL nudi zadovoljavajući nivo sigurnosti. SSL omogućava proveru integriteta pomoću sertifikata. Koristi asimetričnu i simetričnu kriptografiju. Za uspešnost SSL protokola važan je davaoc sertifikata, odnosno sertifikaciono telo. Korisnici veruju sertifikatima koji su najčešće izdati od strane poznatih kompanija koje se bave distribucijom istih. Atributi uspostavljeni tokom sesije se menjaju usled neaktivnosti sagovornika u zaštićenoj komunikaciji. SSL je relativno brzo postao standard za sigurnu komunikaciju.

More Related