23
TLS, lite status Patrik Wallström, .SE & DFRI

TLS, lite status från #MeraKrypto

  • Upload
    pawal

  • View
    297

  • Download
    1

Embed Size (px)

Citation preview

TLS, lite statusPatrik Wallström, .SE & DFRI

X.509 (PKIX) CertifikatX.509 är en ITU-standard för en publik nyckelinfrastruktur (PKI) • Format för publika certifikat • Certifikat-förfrågningar • Revokeringslistor • Certifikatsvalideringsalgoritmer !

X.509 är utvecklat för att hantera X.500-strukturen (katalogtjänster för OSI), och passar ganska dåligt in på det “nya” Internet. !PKIX inom IETF om du vill följa det löpande öppna arbetet…

ASN.1

ASN.1, Abstract Syntax Notation One är ett standardiserat formellt språk (ISO-IEC 8824) som används för att representera data på ett implementationsoberoende sätt, och därmed möjliggöra informationsutbyte mellan olika applikationer, exempelvis via SNMP. !Källa: Wikipedia

Abstract Syntax Notation OneCertificate!■ Version!■ Serial Number!■ Algorithm ID!■ Issuer!■ Validity!■ Not Before!■ Not After!

■ Subject!■ Subject Public Key Info!■ Public Key Algorithm!■ Subject Public Key!

■ Issuer Unique Identifier (optional)!■ Subject Unique Identifier (optional)!■ Extensions (optional)!■ ...!

Certificate Signature Algorithm!Certificate Signature

SSL/TLS-versioner

SSL!Version 1.0 togs fram av Netscape Version 2.0 - 1995 Version 3.0 - 1996 !TLS!Version 1.0, RFC 2246 januari 1999 Version 1.1, RFC 4346 april 2006 Version 1.2, RFC 5246 augusti 2008

Certifikatutfärdare

CA CA CA CA

ICA1

ICA1

CertFalskt cert

Var används TLS?Transport Layer Security HTTP, SMTP, IMAP, XMPP, Tor och SIP !Network layer security (VPN) IPSEC med IKE, SSL-VPN !Data link layer security 802.11i och 802.1AE, med EAP-TLS, EAP-TTLS och PEAP !Message level protection Cryptographic Message Syntax (CMS) för S/MIME, XML-DSig !Code signing Microsoft Authenticode, Apple, Java- och Javascript JAR och Mozilla NSS

Client Server

1: Send SSL version and known ciphers

1.1: Send SSL version and ciphers

1.2: Send identification

1.3: Send server public key

2: Create "pre-master" secret key

2.1: Encrypt "pre-master" with server public key

2.2: Send "pre-master" to server,along with client cert if requested

2.2.1: Decrypt "pre-master"with server private key

2.2.2: Generate mastersecret and session key

2.3: Generate master secret and session key

3: Send message "handshake complete"encrypted with session key

3.1: Send message "handshake complete",encrypted with session key

All subsequent communications are encryptedsymetrically using the session key

TLS Uppkoppling…SSL handshake has read 3704 bytes and written 369 bytes --- New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA Server public key is 1024 bit Secure Renegotiation IS supported Compression: zlib compression Expansion: zlib compression SSL-Session: Protocol : SSLv3 Cipher : DHE-RSA-AES256-SHA Session-ID: 957EFAD0005EBB32BD7ACBDEB725A93A205557D4B896A98E1CFF22DEB1E31D15 Session-ID-ctx: Master-Key: 6798E56776F96967C13791AAE5980709887A17AEDE19491F9257401151D6656BD8756C551BF1936BA1308D764F793721 Key-Arg : None PSK identity: None PSK identity hint: None Compression: 1 (zlib compression) Start Time: 1306589571 Timeout : 7200 (sec)

Prestanda på handskakning

Median: 296ms

Medel: 351ms

Webbserver MedelJetty 500msLotus-Domino 399msMicrosoft IIS 6.0 361msApache* 341mslighthttpd 326msMicrosoft IIS 7.* 322msngingx 293msBigIP 293ms

Användning i .se• 13283 hittade tjänster med

SSL på port 443.

• 10994 giltiga certifikat.

• Giltiga certifikat är gjorda av 72 stycken utfärdare.

Trasigheter

2200

0

200

400

600

800

1000

1200

1400

1600

1800

2000

Type of error

Cou

nt

Broken Chain

Not yet valid

Expired

Hostname mismatch

Revoced Bad common name

Self-signed

- Broken chain, saknar giltig utfärdare - Självsignerat - Utgånget - Hostname mismatch

Trasiga kedjor

Många köper certifikat som kräver konfiguration av “Intermediary CAs”. Att lägga in dessa i webbserverns konfiguration är viktigt, annars kan inte webbservern validera certifikatkedjan.

1000

0

100

200

300

400

500

600

700

800

900

Hos

ts

Unneded certificates

Incomplete chains

Wrong order

Global statistik

Källa, SSL Pulse, https://www.trustworthyinternet.org/ssl-pulse/ !

5:e april 2014

Källa, SSL Pulse, https://www.trustworthyinternet.org/ssl-pulse/ !

5:e april 2014

Hinder för deploymentKrångligt !Drar för mycket CPU… !SNI + XP !IPv4 !“Vi har inget skyddsvärt"

Poppis just nuTLSA (aka “DANE”) !HSTS - HTTP Strict Transport Security !Perfect Forward Secrecy !TLS 1.2 !Ignorera revokeringsuppslag !Att uppgradera OpenSSL och revokera certifikat och lösenord… !Laga OpenSSL

FramtidenGoogle ger högre rating för sajter med TLS !Certifikate pinning i HSTS? !TLS 1.3 !Certificate transparency (“TRANS wg”) !Gratis certifikat… !HTTP2 !Opportunistisk kryptering

TACK! Frågor?