Transport Layer Security TLS SSL HTTPS Introducere HTTP
- Slides: 28
Transport Layer Security TLS, SSL, HTTPS Introducere HTTP si HTTPS Handshake protocol Record protocol
Introducere • • TLS – Transport Layer Security SSL – Secure Socket Layer HTTP - Hypertext Transfer Protocol HTTPS – Secure HTTP
• Necesitatea confidentialitatii, integritatii si autentificarii in tranzactiile Web • Prima solutie a fost SSL dezvoltata de Netscape • SSL a stat la baza standardului IETF TLS
• Necesitatea confidentialitatii, integritatii si autentificarii nu sunt specifice tranzactiilor Web • SSL si TLS sunt protocoale cu scop general pozitionate intre un protocol de nivel aplicatie si un protocol de nivel transport • Transport layer security – din perspectiva aplicatiei acest nivel al protocolului arata ca un protocol de nivel transport cu exceptia faptului ca este sigur • Ruland nivelul transport securizat deasupra TCP toate functiile acestuia sunt furnizate aplicatiei
• Protocoale TLS – Handshake protocol negociaza optiunile si stabileste master secret – Record protocol transfera datele • HTTPS – HTTP este neschimbat – Furnizeaza si primeste date de la SSL/TLS in loc de TCP – Portul TCP implicit 443 a fost asignat la HTTPS
HTTP si HTTPS • HTTP – Port 80 – Guverneaza modul in care interactioneaza un web server si un client – Bazat pe TCP – Are raspunsuri server specifice
• Pasi: – Clientul initiaza cererea HTTP spre server – HTTP returneaza codul pentru o pagina web – Browser-ul interpreteaza codul HTML si afiseaza pe pagina web
• Pasi: – Clientul initiaza cererea HTTP spre server – HTTP returneaza codul pentru o pagina web – Browser-ul interpreteaza codul HTML si afiseaza pe pagina web
• Pasi: – Clientul initiaza cererea HTTP spre server – HTTP returneaza codul pentru o pagina web – Browser-ul interpreteaza codul HTML si afiseaza pe pagina web
• HTTP URL poate de asemenea specifica portul pe server care ar trebui sa trateze metodele HTTP • In plus, poate specifica un “query string” si un fragment. • Query string – contine informatii care nu sunt tratate de procesul serverului HTTP – sunt tratate de alt proces care ruleaza pe server
• HTTP este un protocol request/response • Foloseste protocolul TCP, portul 80 • Cand un client transmite o cerere unui server web, va folosi una din cele sase metode specificate de protocolul HTTP – GET – POST – PUT – DELETE – OPTIONS – CONNECT
• Raspunsurile serverului HTTP sunt identificate cu diferite coduri de stare, organizate in 5 grupuri: – 1 xx - Informational – 2 xx - Success – 3 xx - Redirection – 4 xx - Client Error – 5 xx - Server Error
• Navigarea pe Web este probabil cel mai mare vector de atac – Malicious i. Frames – un i. Frame permite ca o pagină dintr-un domeniu diferit să fie deschisă în pagina curentă. IFrame poate fi folosit pentru a lansa cod malitios. – HTTP 302 cushioning – permite unei pagini web să redirecționeze și să se deschidă într-o altă adresă URL. Poate fi utilizat pentru redirecționarea către cod rău intenționat. – Domain shadowing – site-urile web rău intenționate sunt create din subdomenii create dintr-un domeniu deturnat.
• Toate informațiile transmise în HTTP sunt transmise în text de la calculatorul sursă la destinație pe Internet. • HTTP nu protejează datele de modificări sau interceptari • Amenințările bazate pe web constau în scripturi malware care au fost plantate pe servere web care direcționează browserele către serverele infectate prin încărcarea de cadre iframe.
• În cazul injectării i. Frame, un actor de amenințare compromite un server web și instalează un cod rău intenționat, care creează un i. Frame invizibil pe o pagină web vizitată frecvent. • Când se încarcă i. Frame, se descarcă malware.
• HTTPS adaugă un nivel de criptare protocolului HTTP utilizând secure socket layer (SSL) • SSL face ca datele HTTP să nu poată fi citite de cand părăsesc calculatorul sursă până când ajung la server • HTTPS nu este un mecanism pentru securitatea serverului web
• Traficul HTTPS criptat complica monitorizarea securitatii retelei • HTTPS adauga complexitate capturii de pachete
Handshake protocol • Handshake protocol negociaza optiunile si stabileste master secret • O pereche de participanti TLS negociaza criptografia – Hash-ul pentru integritatea datelor folosit pentru implementarea HMAC-urilor: MD 5 sau SHA – Algoritmul cu cheie simetrica pentru confidentialitate: DES, 3 DES sau AES – Abordarea stabilirii cheii de sesiune: Diffie-Hellman, fixed Diffie-Hellman sau protocoale de autentificare cu cheie publica folosind RSA sau DSS • Participantii pot negocia folosirea unui algoritm de compresie
• O sesiune TLS necesita 6 chei – Algoritmul de criptare pentru confidentialitate foloseste doua chei, una pentru fiecare directie – Doi vectori de initializare – HMAC-urile folosesc chei diferite pentru cei doi participanti • TLS deriva toate cele 6 chei dintr-un singur master secret comun • Master secret este o valoare pe 384 biti (48 octeti) derivata in parte din cheia de sesiune rezultata din protocolul de stabilire a cheii de sesiune
• Optiuni de stabilire a cheii de sesiune: – Certificate cu cheie publica – Diffie-Hellman • Optiuni de autentificare: – A ambilor participanti (mutuala) – Doar a unui participant – Fara autentificare (anonymous Diffie-Hellman)
• Clientul trimite o lista a combinatiilor de algoritmi criptografici suportati in ordinea descrescatoare a preferintelor • Serverul raspunde furnizand singura combinatie de algoritmi criptografici selectata din lista clientului
• Mesajele contin de asemenea clientnonce si respectiv server-nonce care vor fi folosite in generarea master secret • Nonce este un numar arbitrar folosit o singura data intr-o comunicatie criptografica • Mesajele de mai sus costituie faza de negociere
• Serverul transmite mesaje (de autentificare) pe baza protocolului de stabilire a cheii de sesiune negociat • Daca serverul doreste autentificarea clientului transmite un mesaj separat indicand aceasta
• Clientul raspunde cu mesaje (de autentificare) pe baza protocolului de schimb al cheii negociat • Cheia de sesiune schimbata in urma acestor mesaje se numeste premaster secret
• Master secret este calculata din premaster secret, client-nonce, servernonce • Folosind cheile derivate de master secret clientul transmite un mesaj care include un hash al tuturor mesajelor handshake precedente
• Folosind cheile derivate de master secret serverul transmite un mesaj care include un hash al tuturor mesajelor handshake precedente • Aceste mesaje permit detectarea discrepante intre mesajele handshake
Record protocol • Record protocol transfera datele • Adauga confidentialitate si integritate serviciului transport • Mesajele transmise de la nivelul aplicatie spre nivelul transport sunt: – – – Fragmentate sau fuzionate Comprimate optional Protejate (integritatea) folosind un HMAC Criptate folosind un algoritm cu cheie simetrica Trimise nivelului transport
• Fiecarui mesaj ii este asignat un numar de secventa inclus cand HMAC este calculat – Previne rejucarea (replay) si reordonarea mesajelor • Reluarea sesiunii: – Optimizare handshake – Poate fi negociata la crearea sesiunii – Clientul include ID-ul de sesiune din sesiunea stabilita initial – Serverul poate raspunde cu o indicatie de succes – Datele pot fi transmise folosind algoritmii si parametrii negociati initial
- Ssl osi
- Secure socket layer and transport layer security
- Secure socket layer and transport layer security
- Secure socket layer and transport layer security
- Secure socket layer and transport layer security
- Ssl traffic management
- Ssh ssl tls
- Suszi wszib
- Web security and ssl
- Wireless transport layer security
- Iup handshake
- Multiplexed transport layer security
- Introducere in noul testament
- Introducere in antropologie
- Repartitia normala
- Epocile
- Dispozitive periferice de iesire
- Introducere in scratch
- Higher layer ssl protocol
- Rfc ssl
- Security security security
- Web security using ssl
- Ssl information security
- Ssl architecture in network security
- Pigmented layer and neural layer
- Git layers
- Presentation layer functions
- Layer 2 e layer 3
- Layer-by-layer assembly