55

HTTPS: All you need to know

  • Upload
    ovh

  • View
    1.194

  • Download
    0

Embed Size (px)

Citation preview

Page 1: HTTPS: All you need to know
Page 2: HTTPS: All you need to know

HTTPSAll you need to know

Vincent Cassé @vcasse

Webhosting lead techOVH

Page 3: HTTPS: All you need to know

Why HTTPS?

Page 4: HTTPS: All you need to know

To protect your data

Page 5: HTTPS: All you need to know

To protect your data

Page 6: HTTPS: All you need to know

To protect your data

Page 7: HTTPS: All you need to know

To protect your data

Page 8: HTTPS: All you need to know

To protect your data

Page 9: HTTPS: All you need to know

To authenticate the source

Page 10: HTTPS: All you need to know

To authenticate the source

Page 11: HTTPS: All you need to know

Check integrity of the data Don’t change the HTTP protocol

Why HTTPS too?

Page 12: HTTPS: All you need to know

How HTTPSworks?

Page 13: HTTPS: All you need to know

Crypto basics: symmetric encryption

Page 14: HTTPS: All you need to know

Crypto basics: asymmetric encryption

Page 15: HTTPS: All you need to know

Crypto basics: asymmetric encryption

Page 16: HTTPS: All you need to know

Crypto basics: asymmetric encryption

Page 17: HTTPS: All you need to know

Crypto basics: asymmetric encryption

Page 18: HTTPS: All you need to know

Crypto basics: digital signature

Page 19: HTTPS: All you need to know

Crypto basics: digital signature

Page 20: HTTPS: All you need to know

Crypto basics: digital signature

$ echo "OVH" |  sha1sum3b4e44a27f4652afa4490c300e35b320f0849a96  ­

$ echo "OV H" | sha1sum7d916134d9c1ce2ecce3326ffb39ac1612535366  ­

$ curl "https://ovh.com/fr" | sha1sum479855683ee2249a9e6be690805ff29d04bdcb95  ­

Page 21: HTTPS: All you need to know

Crypto basics: digital signature with key

Page 22: HTTPS: All you need to know

Crypto basics: digital signature with key

Page 23: HTTPS: All you need to know

Crypto basics

Page 24: HTTPS: All you need to know

HTTPS: how does it work?

Page 25: HTTPS: All you need to know

HTTPS: how does it work?

Page 26: HTTPS: All you need to know

HTTPS: how does it work?

Page 27: HTTPS: All you need to know

HTTPS: how does it work?

openssl req  ­new ­sha256 \­newkey rsa:2048 \­keyout mydomain.com.key \­out mydomain.com.csr \­subj /countryName="FR"/commonName="mydomain.com"/

Page 28: HTTPS: All you need to know

HTTPS: how does it work?

Page 29: HTTPS: All you need to know

HTTPS: how does it work?

Page 30: HTTPS: All you need to know

CA: can you trust it?

Certification Authority can have issues (bugs / hacks) ~1800 CAs around the world (government, firms...) Each CA can generate certificates for all domains CA can cheat (StartSSL & SHA-1 certificate)

Page 31: HTTPS: All you need to know

DANE: solution for CA issues?

RFC 6698 Publish certificate into the DNS With DNSSEC, attack perimeter reduced

But: no browser check it

Page 32: HTTPS: All you need to know

Certificates types

Single: contains only one domain SAN: can contain multiple domains (subdomain or multidomain) Wildcard: can contain one domain and validate all their subdomains

Page 33: HTTPS: All you need to know

DV: Domain validation

Check ownership of domain Validation method: HTTP / DNS / email Green lock in browsers Doesn’t block typosquatting

Page 34: HTTPS: All you need to know

OV: Organisation validation

DV validation Check if your organization is real (siret) Same green lock as DV in browsers

Page 35: HTTPS: All you need to know

EV: Extended validation

DV validation + OV validation Contact multiple people inside your entreprise Green bar in browser Customer can trust this certificate to pay online

Page 36: HTTPS: All you need to know

How useHTTPS?

Page 37: HTTPS: All you need to know

SNI

RFC 6066 Allow multiple certificates by IP Some browsers don’t handle it

Android 2.xx Java 6 IE on Windows XP

Page 38: HTTPS: All you need to know

Protocol

Define exchange between server and browser From SSLv2 in 1994 to TLS1.3 (work in progress) SSLv2 and v3 are deprecated. TLS1.0 is end of life

Page 39: HTTPS: All you need to know

Protocol: browser compatibility

SSLv2, SSLv3, TLS1.0: all browser understand TLS1.1: All without IE ≤ 8 and Android ≤ 4.4.4 TLS1.2: All without IE ≤ 8 and Android ≤ 4.4.4 ChaCha20-Poly1305 : Only firefox, chrome and android > 5.0

Page 40: HTTPS: All you need to know

Protocol: hacking

SSLv3 vulnerable to POODLE attack TLS is attacked on weak algo : RC4 / SHA-1 TLS is attacked on renegotiation to SSLv2

Page 41: HTTPS: All you need to know

Cipher suites

TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_AES_256_CBC_SHA256 TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA TLS_ECDH_ECDSA_WITH_RC4_128_SHA TLS_ECDH_ECDSA_WITH_DES_CBC_SHA

Page 42: HTTPS: All you need to know

Cipher suites: hacking

DES / 3DES too weak RC4 / MD5 / SHA-1 too weak RSA < 2048bits too weak

https://wiki.mozilla.org/Security/Server_Side_TLS

Page 43: HTTPS: All you need to know

Mixed Content

Browser alerts about HTTP « passive content » (images/video…) Browser blocks HTTP « active content » (css/javascript)

Page 44: HTTPS: All you need to know

HSTS

Header set Strict­Transport­Security "max­age=10886400; includeSubDomains;" env=HTTPS

Page 45: HTTPS: All you need to know

Why do I needHTTPS?

Page 46: HTTPS: All you need to know

Protect your customers

No account thef No credit card thef Your customers trust you

Page 47: HTTPS: All you need to know

SEO

Google prefers HTTPS websites And other search engines too

Page 48: HTTPS: All you need to know

Browsers will kill HTTP

HTTP will be flagged as unsecure In the next years, customer will stop going to your website

Page 49: HTTPS: All you need to know

HTML5

Browsers had to use HTTPS to enable some HTML5 APIs

getUserMediaservice workersencrypted Media Extension

Page 50: HTTPS: All you need to know

HTTP2

Browsers had to use HTTPS to enable HTTP2 Multiplex HTTP requests and responses Compress TCP stream

Just fastest than HTTPS

Page 51: HTTPS: All you need to know

OVHcan help me?

Page 52: HTTPS: All you need to know

WebHosting

SSL included with all offers DV / EV validated by Comodo as an option

Validation / Type / Installation / Renew handled for you

Page 53: HTTPS: All you need to know

SSL gateway

Validation / Installation / Renew handled for your servers No more maintenance Just update your domain then add your server as backend and you

will be SSL compliant

Page 54: HTTPS: All you need to know

Some links

https://paulgreg.me/https-slides/?full#html5-seo https://www.feistyduck.com/ssl-tls-and-pki-history/ http://www.flaticon.com https://www.ssllabs.com/

Page 55: HTTPS: All you need to know

Vincent Cassé

@vcasse