Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ION Sri Lanka - DANE: The Future of TLS

1,239 views

Published on

DANE: The Future of Transport Layer Security (TLS)

Dan York (Internet Society)

If you connect to a “secure” server using TLS/SSL (such as a web server, email server or xmpp server), how do you know you are using the correct certificate? With DNSSEC now being deployed, a new protocol has emerged called “DANE” (“DNS-Based Authentication of Named Entities“), which allows you to securely specify exactly which TLS/SSL certificate an application should use to connect to your site. DANE has great potential to make the Internet much more secure by marrying the strong integrity protection of DNSSEC with the confidentiality of SSL/TLS certificates. In this session, we will explain how DANE works and how you can use it to secure your websites, email, XMPP, VoIP, and other web services.

Published in: Technology
  • Be the first to comment

ION Sri Lanka - DANE: The Future of TLS

  1. 1. DANE: The Future of Transport Layer Security (TLS) ION Sri Lanka January 18, 2015 Dan York Senior Content Strategist Internet Society york@isoc.org
  2. 2. TLS vs SSL Secure Sockets Layer (SSL) originally developed by Netscape in the mid-1990s "Transport Layer Security (TLS)" evolved from SSL 3.0, although "SSL" remains commonly used term TLS version 1.3 in active development: • https://tools.ietf.org/html/draft-ietf-tls-tls13 • https://github.com/tlswg/tls13-spec 1/18/2015 1996 SSL 3.0 RFC 6101 1999 TLS 1.0 RFC 2246 2006 TLS 1.1 RFC 4346 2008 TLS 1.2 RFC 5246 2014/15? TLS 1.3 draft-ietf-tls-tls13
  3. 3. TLS – Not Just For Web Sites TLS / SSL originally developed for web sites Now widely used for many other services, including: • Email • Instant messaging • File transfer • Virtual Private Networks (VPNs) • Voice over IP (VoIP) • Custom applications
  4. 4. What Does TLS Do? • Creates an encrypted tunnel between two applications • Protects from eavesdropping • Can be used in client/server or peer-to-peer • Uses TCP (DTLS uses UDP) App 1 App 2 App 1 App 2 With TLS Without TLS
  5. 5. TLS and Certificates • How do you obtain the encryption keys? • Typically uses PKIX / X.509 certificate • Certificate signed by a Certificate Authority (CA) • The client application initiating the connection checks the certificate: • Does the certificate match the site/service being visited? • Does the app trust the CA who signed the cert?
  6. 6. The Problem With Certificate Authorities • There are too many of them! • Apps like web browsers may “trust” 1,300 Cas • Any CA can issue a certificate for any domain • Attackers can trick a CA into issuing a certificate • “Middleboxes” can issue certificates to intercept traffic • Ex. Gogo inflight WiFi service • Several different solutions being explored
  7. 7. A Quick Overview of DANE 1/18/2015
  8. 8. The Typical TLS (SSL) Web Interaction Web Server Web Browser https://example.com/ TLS-encrypted web page DNS Resolver example.com? 10.1.1.1231 2 5 6 DNS Svr example.co m DNS Svr .com DNS Svr root 3 10.1.1.123 4
  9. 9. The Typical TLS (SSL) Web Interaction Web Server Web Browser https://example.com/ TLS-encrypted web page DNS Resolver 10.1.1.1231 2 5 6 DNS Svr example.co m DNS Svr .com DNS Svr root 3 10.1.1.123 4 Is this encrypted with the CORRECT certificate? example.com?
  10. 10. Problems? Web Server Web Browser https://www.example.com/ TLS-encrypted web page with CORRECT certificate DNS Server www.example.com? 1.2.3.4 1 2 Firewall https://www.example.com/ TLS-encrypted web page with NEW certificate (re-signed by firewall)
  11. 11. DANE Web Server Web Browser w/DANE https://example.com/ TLS-encrypted web page with CORRECT certificate DNS Server 10.1.1.123 DNSKEY RRSIGs TLSA 1 2 Firewall (or attacker) https://example.com/ TLS-encrypted web page with NEW certificate (re-signed by firewall) Log files or other servers DANE-equipped browser compares TLS certificate with what DNS / DNSSEC says it should be. example.com?
  12. 12. DNS-Based Authentication of Named Entities (DANE) • Q: How do you know if the TLS (SSL) certificate is the correct one the site wants you to use? • A: Store the certificate (or fingerprint) in DNS (new TLSA record) and sign them with DNSSEC. An application that understand DNSSEC and DANE will then know when the required certificate is NOT being used. Certificate stored in DNS is controlled by the domain name holder. It could be a certificate signed by a CA – or a self- signed certificate.
  13. 13. DANE – Different operation modes ("certificate usage" field) • 0 – CA specification • The TLSA record specifies the Certificate Authority (CA) who will provide TLS certificates for the domain. Must be a valid CA included in browser/app. • 1 – Specific TLS certificate • The TLSA record specifies the exact TLS certificate that should be used for the domain. Note that this TLS certificate must be one that is issued by a valid CA. • 2 – Trust anchor assertion • The TLSA record specifies the “trust anchor” to be used for validating the TLS certificates for the domain. Allows for the use of a CA not included in application. • 3 – Domain-issued certificate (“End-Entity Certificate”) • The TLS record specifies the exact TLS certificate that should be used for the domain, BUT, in contrast to usage #1, the TLS certificate does not need to be signed by a valid CA. This allows for the use of self-signed certificates.
  14. 14. DANE – Not Just For The Web • DANE defines protocol for storing TLS certificates in DNS • Securing Web transactions is an obvious use case • Other uses also possible: • Email • VoIP • Jabber/XMPP • PGP • ?
  15. 15. DANE Success Stories SMTP  360+ SMTP servers with TLSA records  http://www.tlsa.info/ - testing service XMPP (Jabber)  255 servers  client-to-server & server-to-server  https://xmpp.net/reports.php#dnssecdane Advertisements!
  16. 16. 3 Steps To Use DANE On Your Server / Service 1. Use TLS on your application/service! 2. Generate and publish a TLSA record in DNS  Separate TLSA record for each specific service. For example: – _25._tcp.example.com. – _443._tcp.example.com.  Tools available (ex. hashslinger) to help generate records 3. Sign your domain with DNSSEC
  17. 17. 2 Steps To Use DANE In Your Client Application 1. Have access to a DNSSEC-validating DNS resolver  Security of DANE relies on DNSSEC validation  DNSSEC validation can be easily enabled on BIND, Unbound or Windows Server  Some developers have performed validation within actual application 2. Use a DNS application library that supports DNSSEC  GetDNS API – http://getdnsapi.net/ - C, python, node.js and java  http://www.internetsociety.org/deploy360/resources/dnssec-developer- libraries/
  18. 18. DANE Resources DANE Overview and Resources: • http://www.internetsociety.org/deploy360/resources/dane/ IETF Journal article explaining DANE: • http://bit.ly/dane-dnssec RFC 6394 - DANE Use Cases: • http://tools.ietf.org/html/rfc6394 RFC 6698 – DANE Protocol: • http://tools.ietf.org/html/rfc6698
  19. 19. DANE Resources DANE and email: • https://tools.ietf.org/html/draft-ietf-dane-smtp-with-dane • http://tools.ietf.org/html/draft-ietf-dane-smime DANE Operational Guidance: • https://tools.ietf.org/html/draft-ietf-dane-ops DANE and SIP (VoIP): • http://tools.ietf.org/html/draft-johansson-dispatch-dane-sip • https://tools.ietf.org/html/draft-ietf-dane-srv Other uses: • https://tools.ietf.org/html/draft-ietf-dane-openpgpkey • https://tools.ietf.org/html/draft-ietf-dane-rawkeys
  20. 20. Why Deploy DNSSEC and DANE? 1/18/2015
  21. 21. Reasons For Deploying DNSSEC/DANE • TRUST – You can be sure your customers are reaching your sites – and that you are communicating with their servers. • SECURITY – You can be sure you are communicating with the correct sites and not sharing business information with attackers, ex. email hijacking. • INNOVATION – Services such as DANE built on top of DNSSEC enable innovative uses of TLS certificates • CONFIDENTIALITY – DANE enables easier use of encryption for applications and services that communicate across the Internet
  22. 22. Email Hijacking – A Current Threat • CERT-CC researchers have identified that someone is hijacking email by using DNS cache poisoning of MX records • Could be prevented by DNSSEC deployment • CERT-CC (Sept 10, 2014): – https://www.cert.org/blogs/certcc/post.cfm?EntryID=206 • Deploy360 blog post (Sept 12, 2014): • http://wp.me/p4eijv-5jI
  23. 23. Resources 1/18/2015
  24. 24. Start Here Page http://www.internetsociety.org/deploy360/start/ Easy method of finding resources for specific audiences, including: • Network operators • Content providers (ex. web site owners) • Developers • Governments • Consumer electronics vendors • Enterprises and campus networks • Registrars • Internet exchange points (IXPs)
  25. 25. The Two Parts of DNSSEC Signing Validating ISPs Enterprises Applications DNS Hosting Registrars Registries
  26. 26. DNSSEC Signing - The Individual Steps Registry Registrar DNS Hosting Provider Domain Name Registrant • Signs TLD • Accepts DS records • Publishes/signs records • Accepts DS records • Sends DS to registry • Provides UI for mgmt • Signs zones • Publishes all records • Provides UI for mgmt • Enables DNSSEC (unless automatic)
  27. 27. DNSSEC Deployment Maps • DNSSEC deployment maps: • http://www.internetsociety.org/deploy360/dnssec/maps/ • Mailing list to receive weekly maps: • https://elists.isoc.org/mailman/listinfo/dnssec-maps
  28. 28. DNSSEC Deployment Maps – Asia Pacific
  29. 29. https://twitter.com/deploy360 https://www.facebook.com/Deploy360 http://gplus.to/deploy360 http://www.youtube.com/user/Deploy360 http://www.internetsociety.org/deploy360/feed/ http://soundcloud.com/deploy360/ Social Media Channels
  30. 30. Thank You! Dan York Senior Content Strategist york@isoc.org

×