27
Testy bezpieczeństwa SSL/TLS Mateusz Olejarka Test Well 2015, 21.04.2015

Testy bezpieczeństwa SSL/TLS

Embed Size (px)

Citation preview

Testy bezpieczeństwa SSL/TLS

Mateusz Olejarka

Test Well 2015, 21.04.2015

• Starszy specjalista ds. bezpieczeństwa IT, SecuRing

• Ocena bezpieczeństwa aplikacji webowych i mobilnych

• Trener

• (Były) programista

• OWASP Polska

O mnie

• Komunikacja z wykorzystaniem SSL/TLS• Trochę teorii• Co uznajemy za błąd?• Głośne podatności

• Testowanie• Narzędzia• DEMO

• Q&A

Agenda

KOMUNIKACJAZ wykorzystaniem SSL/TLS

• Kryptografia • Symetryczna • Asymetryczna– Klucz publiczny– Klucz prywatny

• Funkcje skrótu• Niezaprzeczalność

Trochę teorii

• Infrastruktura klucza publicznego (PKI)• Certyfikat cyfrowy– Składowe– Podpis cyfrowy– Generowanie

• Urząd certyfikacji (CA)• DEMO

Trochę teorii

• SSL, czyli Secure Socket Layer• SSL 1.0 • SSL 2.0 (1995)• SSL 3.0 (1996)

Trochę teorii

• TLS, czyli Transport Layer Security• TLS 1.0 (1999)• TLS 1.1 (2006)• TLS 1.2 (2008)

Trochę teorii

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Client hello

• Wspierane zestawy szyfrów• Wartość losowa• Wersja protokołu

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Client hello

• Wybrany zestaw szyfrów• Wartość losowa

Server hello

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Client hello

Server hello

Certificate

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Client hello

Server hello

Certificate

Server hello done

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Server hello done

Client key exchange

Przesłanie PreMasterSecret zaszyfrowanego kluczem publicznym serwera

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Server hello done

Client key exchange

Change cipher spec

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Server hello done

Client key exchange

Change cipher spec

Finished

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Finished

Change cipher spec

• Nawiązanie połączenia SSL/TLS

Trochę teorii

Klient Serwer

Finished

Change cipher spec

Finished

DEMOWireshark

• Klucz publiczny serwera wystawiony przez niezaufane CA

• Wykorzystanie kryptograficznie słabych algorytmów• RC4• SHA1

• Wsparcie dla komunikacji z wykorzystaniem• SSL2• SSL3

• Błędy konfiguracyjne innego rodzaju ;)• Wykorzystanie oprogramowania posiadającego

znane błędy bezpieczeństwa

Co uznajemy za błąd?

• BEAST

• CRIME & BREACH

• Heartbleed

• POODLE

• FREAK

Głośne podatności

TESTOWANIE

• SSL Server Test

• OpenSSL

Narzędzia

DEMOSSL Server Test

DEMOOpenSSL

Q&A

Dziękuję za uwagę, zapraszam do kontaktu:

[email protected]

http://en.wikipedia.org/wiki/Public-key_cryptography

http://en.wikipedia.org/wiki/X.509

http://en.wikipedia.org/wiki/Transport_Layer_Security

https://www.ietf.org/rfc/rfc2459

https://www.ssllabs.com/ssltest/

https://www.openssl.org/

http://heartbleed.com/

http://en.wikipedia.org/wiki/Secure_Hash_Algorithm

http://en.wikipedia.org/wiki/CRIME

http://en.wikipedia.org/wiki/POODLE

http://en.wikipedia.org/wiki/FREAK

Materiały