ssl, https en ssh johnny schaap. inhoud tcp en udp het osi model secure socket layer(ssl) massage...

31
SSL, HTTPS en SSH Johnny Schaap

Upload: mathilda-bos

Post on 08-Jun-2015

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL, HTTPS en SSH

Johnny Schaap

Page 2: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Inhoud• TCP en UDP• Het OSI model

• Secure Socket Layer(SSL)• Massage Authentication Code(MAC)• Certificates

• Hyper Text Transfer Protocol Secure(HTTPS)

• Secure Shell (SSH)

Page 3: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

TCP/IP model en OSI model

http://www.netwerkinstellen.nl/het-osi-model/

Page 4: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

UDP en TCP

• UDP is niet connectie georiënteerd. o Is sneller dan TCP

• TCP is wel connectie georiënteerd.o Heeft veel minder packet loss dan UDPo Moet eerst opgezet worden.

TCP-verbinding opzetten

http://nl.wikipedia.org/wiki/Transmission_Control_Protocol

Page 5: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL/TLS• Geschiedenis

o 1993: Netscape ontwikkeld SSL 1.0o 1995: Netscape publiceert SSL 2.0o 1996: Netscape publiceert SSL 3.0o 1999: IETF doopte SSL om tot TLS 1.0o 2006: TLS 1.1 met protectie tegen CBC attacks (d.m.v. padding

en initialisatie vectoren)o 2008: TLS 1.2 tegen andere aanvallen.

• Transport Layer Security(TLS)

Page 6: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL API en Sockets• SSL zit tussen de Applicatie en Transport laag

• Kurose J.F. & Ross K.W. (2009) “Computer Networking: A top down approach”, Addison-Wesley.

Page 7: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL verbinding

• 3 FasesoHand-shake faseo Key derivation faseoData transfer fase

Page 8: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL Hand shake• Hand-shake fase bestaat uit 3 fases

o Hand-shakeo Authenticatieo Sleuteluitwisseling

Page 9: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL Key Derivation• Alice(cliënt) en Bob(server) genereren beide:

o EA = Encryptie/Decryptie van het bericht naar Alice

o EB = Encryptie/Decryptie van het bericht naar Bob

o MA = Integriteit check op Alice’s berichten.

o MB = Integriteit check op Bob’s berichten.

o Indien Cipher Block Chaining wordt gebruikt, genereren beiden 2 initialisatie vectoren.

Page 10: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL Data Transfer• Data wordt in stukjes geknipt.• Data, MAC(+Nonce) worden versleuteld.• Header bevat type, versie en lengte.

Page 11: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL verbinding verbreken

• TCPFIN is niet versleuteld.

• Voor TCPFIN moet er een SSL Closure komen.

Page 12: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Massage Authentication Code(MAC)

• We hebben bericht b en een sleutel MA.

• Hash b en MA met bijvoorbeeld SHA-1.

• MAC = SHA-1(b, MA)

• Versleutel bericht: (b, MAC) = y

• Ontcijfer: y = (b, MAC)• Controleer integriteit: SHA-1(b, M A) == MAC

Page 13: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Certificaten(PKI)

• Naam eigenaar• Public key• Geldigheidsduur• Uitgever (CA)• Locatie van Certificate Revocation List• Versleuteling met private key van

Hash(bovenstaand)

• Ontsleutel met public key en controleer.

Page 14: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL Zwakheden• Bestemming kan niet worden versleuteld.

• Elk domein met certificaat kan eigen certificaat uitgeven.

• Bool om te bepalen of dat mag.• Eerdere implementaties van SSL checkte deze

niet.

Page 15: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

HTTPS• HTTP met een SSL verbinding.

• HTTPS kan niet uit cache laden.o HTTP kan dit wel en is dus sneller

• Alleen bij hoog risico pagina’s.

• 1994: Ontwikkeld door Netscape voor de Netscape Navigator web browser.

Page 16: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Valide HTTPS pagina’s• Te herkennen aan de https:// URL.

• Authenticatie d.m.v. certificaten.

• Browser geeft waarschuwing wanneer vals certificaat af wordt gegeven.

• Positieve feedback door browser d.m.v. iconen en kleuren.

• Positieve feedback op pagina d.m.v. iconen en kleuren.

Page 17: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Negatieve Feedback

Page 18: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Positieve Browser Feedback

Page 19: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Positieve Pagina feedback

Page 20: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Zwakheden en aanvallen

• Bekend tussen wie en hoe lang er wordt gecommuniceerd.

• Een vals certificaat afgeven in de hoop dat mensen toch doorklikken.

• SSLStrip• Homograph Attack

Page 21: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSL Strip• Mensen bereiken HTTPS via buttons.• Na HTTPS request, HTTP versie terug sturen.• Cookies na zoveel tijd verwijderen.

Page 22: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

HTTP versus HTTPS

Page 23: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

HTTP versus HTTPS

Page 24: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Homograph Attack• Vraag een certificaat aan voor een domein die

zelfde oogt.• paypai.com => paypaI.com (hoofdletter i)

• Beter: vervang ‘/’ door een van de vele tekens die er hetzelfde uitzien.

• Voordeel: krijgt positieve feedback van browser.

Page 25: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Combinatie SSLStrip en Homograph

• Nadeel homograph: valse button op een eigen pagina.

• Nadeel SSLStrip: Geen positieve feedback.

• Combinatie: MitM attack, wanneer HTTPS request voorbij komt, door verwijzen naar eigen homograph webpagina.

• Bescherming?

Page 26: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Oscar is blij!• Alle verbindingen over HTTPS.

o Kost te veel processing tijd dus wordt niet gedaan.

• Deze aanval blijft effectief.• Kinderwerk met de SSLStrip applicatie.

• (Dit is Succes kidOscar -------->)

Page 27: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSH• Commando’s over netwerk naar ander apparaat.

• 1995: SSH 1.0 Password sniffing tegen gaan.

• 2000: OpenSSH

• 2006: SSH 2.0 MAC en Diffie-helman om zwakheden tegen te gaan.

Page 28: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

SSH Werking• Transport Laag:

o Authentiseert server d.m.v. asymmetrische crypto.o Verstuurd en vernieuwd sleutels

• User Authenticatie laag:o Authenticatie van cliënt d.m.v. wachtwoorden, sleutels, keyboard

interactie etc.

• Connectie laag:o Direct-tcpip, forwarded-tcpip en shell

Page 29: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Zwakheid• Man-in-the-middle attack. • Doet zich voor als server.• Vraagt om password.• Heeft password onderschept en kan inloggen op

server.

• Werkt alleen bij servers die passwords als user authenticatie gebruikt en nooit eerder communicatie tussen server en cliënt heeft plaats gevonden.

Page 30: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Conclusie• SSL, HTTPS en SSH worden wereldwijd gebruikt.

• SSL wordt als erg veilig gezien wanneer goed geïmplementeerd.

• HTTPS heeft een ernstige zwakheid.

• SSH is ook veilig wanneer user authenticatie wordt gedaan op een andere manier dan Passwords.

Page 31: SSL, HTTPS en SSH Johnny Schaap. Inhoud TCP en UDP Het OSI model Secure Socket Layer(SSL) Massage Authentication Code(MAC) Certificates Hyper Text Transfer

Nog vragen?