Internet DRAFT - draft-malbrain-tls-strong-authentication

draft-malbrain-tls-strong-authentication



Internet Draft                                        K. Malbrain
Intended status: Informational               Petz Enterprises LLC
Expires: December 31, 2013                     September 23, 2013


     Problem Statement: Deployment of TLS Strong Authentication
            draft-malbrain-tls-strong-authentication-01


Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before
   November 10, 2008. The person(s) controlling the copyright in
   some of this material may not have granted the IETF Trust the
   right to allow modifications of such material outside the IETF
   Standards Process.  Without obtaining an adequate license from
   the person(s) controlling the copyright in such materials,
   this document may not be modified outside the IETF Standards
   Process, and derivative works of it may not be created outside
   the IETF Standards Process, except to format it for
   publication as an RFC or to translate it into languages other
   than English.

   Internet-Drafts are working documents of the Internet
   Engineering Task Force (IETF), its areas, and its working
   groups.  Note that other groups may also distribute working
   documents as Internet-Drafts.

   Internet-Drafts are draft documents valid for a maximum of six
   months and may be updated, replaced, or obsoleted by other
   documents at any time.  It is inappropriate to use Internet-
   Drafts as reference material or to cite them other than as
   "work in progress."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt

   The list of Internet-Draft Shadow Directories can be accessed
   at http://www.ietf.org/shadow.html

   This Internet-Draft will expire on December 31, 2013.

Copyright Notice

   Copyright (c) 2013 IETF Trust and the persons identified as
   the document authors. All rights reserved.



Malbrain              Expires December 31, 2013         [Page 1]

Internet-Draft            TLS Authentication       September 2013


This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document.  Please review these documents
carefully, as they describe your rights and restrictions with
respect to this document.  Code Components extracted from this
document must include Simplified BSD License text as described in
Section 4.e of the Trust Legal Provisions and are provided without
warranty as described in the Simplified BSD License.

Abstract

   The security provided by authenticated TLS connection between
   clients and servers should protect both parties from "Man-in-
   the-Middle" (MITM) attacks.  Clients should be authenticating
   that their server connection is to the server they requested.

   Servers that act as client agents need to authenticate that
   the connection is directly to their client secure against
   eavesdropping or account/password hacking.

   An extension to the Domain Name System (DNS), The DNS-Based
   Authentication of Named Entities (DANE) (RFC 6698), allows TLS
   servers to publish their public certificates for use by TLS
   clients to authenticate the server connection.

Table of Contents

   1. Introduction..............................................2
   2. Server Authentication.....................................3
   3. Client authentication.....................................3
   4. Thwarting MITM and Login attacks..........................3
   5. Why TLS authentication is not working.....................4
   5.1. Browser acceptance of DANE .............................4
   5.2. Client Certificates ....................................4
   5.3. Client Authentication ..................................5
   6. Certificate Notaries......................................5
   7. References................................................5
   7.1. Normative References ...................................5
   8. Acknowledgments...........................................5


  1. Introduction

   TLS strong authentication by clients of their servers relies
   on comparison by the client of public certificates
   authenticated by TLS session negotiations [RFC 5246 Appendix


Malbrain              Expires December 23, 2013         [Page 2]

Internet-Draft            TLS Authentication       September 2013


   F] with a trusted copy of the certificate.  DANE is a database
   of public key certificates published by the Domain Name owners
   in the DNS database, and made available by appropriate DNS
   queries.

   On the server side there is currently only client certificate
   signing by Certificate Authorities (CA) under current TLS
   strong authentication of clients by servers [RFC 5246 Appendix
   D]. Of servers maintaining personal information on behalf of
   non-anonymous clients, few demand TLS strong authentication
   because of the lack in general of signed client certificates.

  2. Server Authentication

   The global network of DNS servers stores and makes available
   via query the public key certificates (or their hash values)
   and IP addresses submitted and maintained by Domain Owners
   [RFC 6698 Section 1.1].

   Whenever a client application needs an authenticated TLS
   connection to a Domain Server, DNS supplies the Domain's IP
   address and either a copy of a certificate placed by the
   server or its hash value [RFC 6698 Section 2.1.3].

  3. Client authentication

   At the end of TLS session negotiation, the TLS implementation
   optionally makes available the client's public certificate if
   requested during TLS negotiations.  This currently must be a
   certificate signed by one of the CA which is used by the
   server to authenticate an established client that the server
   recognizes.

   If the server desires strong authentication and is open to
   connections from new clients, and in lieu of storing the
   entire client certificate, it should save a hash of the client
   certificate as part of the account data for authentication in
   future client logins.



  4. Thwarting MITM and Login attacks

   Making use of the server certificates, TLS strong
   authentication includes both a verification that the server
   holds the private key for the certificate, and a comparison of
   that public certificate against a trusted third party version.


Malbrain              Expires December 23, 2013         [Page 3]

Internet-Draft            TLS Authentication       September 2013


   A MITM attacker inserts a middle point between the client and
   server under a forged bogus certificate provided to the client
   during TLS session negotiations.  Since there is a second,
   reliable source of server's public certificates available
   through DANE, it is now possible for the client to recognize
   the forged certificate used by the bogus connection by
   comparison with the server certificate registered for the
   Domain Name with DNS.

   Likewise servers that hold personal data for non-anonymous
   clients should be utilizing the hash of the client's public
   certificate to recognize connections to previously established
   accounts even prior to requesting the account name and
   password.

  5. Why TLS authentication is not working

   The ability by TLS to perform for strong authentication by
   clients of server certificates during TLS negotiations is
   widely deployed. DANE provides the capability to post and
   retrieve IP addresses and public certificates for Domain Names
   in the DNS system. Servers could take the extra step to
   authenticate client certificates.

  5.1. Browser acceptance of DANE

   Browser vendors don't like using the DANE protocol because it
   requires an additional DNS request to obtain both the Domain
   IP address and public certificate for the DNS Server

   DNS requests and their response are normally made using a
   single UDP packet.  The size of the packet is limited by the
   DNS protocol to 512 bytes.

   Either by utilizing larger packet sizes, up to 65536 bytes in
   IPv4, or by utilizing tcp or QUIC connections, along with an
   ability to request and return both the Domain Name IP address
   and public certificate in a single request could solve this
   problem.

  5.2. Client Certificates

   The average internet user doesn't have a public certificate
   signed by a CA, despite its utility to both HTTPS and S/MIME
   applications.




Malbrain              Expires December 23, 2013         [Page 4]

Internet-Draft            TLS Authentication       September 2013


   Certificate generating software is freely available. Browser
   vendors could incorporate self-signed public/private key
   certificates on demand.

  5.3. Client Authentication

   Server software doesn't ask for a user certificate during TLS
   negotiations.  Server operators need to exercise due diligence
   in securing client connections beyond the traditional login
   account and password to guarantee that private information is
   not being revealed to third parties. Storing and comparing on
   each connection the hash of the user's public certificate for
   each server account would provide another layer of security
   for the internet against MITM or Account Hacking.

  6. Certificate Notaries

   A criticism of DANE holds that it is merely a substitution of
   trust in Certificate Authorities for trust in DNS servers.
   The Carnegie-Mellon project "PERSPECTIVES" establishes a
   network of Notaries for Server Certificates. A wide scale
   deployment of this technology could address this.

  7. References

  7.1. Normative References

   [RFC6698] Hoffman P. and Schlyter, J., "The DNS-Based
             Authentication of Named Entities (DANE)", RFC 6698,
             August 2012.

   [RFC5246] Dierks T. and Rescorla, E., "The Transport Layer
             Security (TLS) Protocol Version 1.2", RFC 5246,
             August 2008.

  8. Acknowledgments

   This document was prepared using 2-Word-v2.0.template.dot.

   Copyright (c) 2013 IETF Trust and the persons identified as
   authors of the code. All rights reserved.

   Redistribution and use in source and binary forms, with or
   without modification, is permitted pursuant to, and subject to
   the license terms contained in, the Simplified BSD License set
   forth in Section 4.c of the IETF Trust's Legal Provisions



Malbrain              Expires December 23, 2013         [Page 5]

Internet-Draft            TLS Authentication       September 2013


   Relating to IETF Documents (http://trustee.ietf.org/license-
   info).

   Copyright (c) 2013 IETF Trust and the persons identified as
   authors of the code. All rights reserved.

   Redistribution and use in source and binary forms, with or
   without modification, is permitted pursuant to, and subject to
   the license terms contained in, the Simplified BSD License set
   forth in Section 4.c of the IETF Trust's Legal Provisions
   Relating to IETF Documents (http://trustee.ietf.org/license-
   info).

Author's Address

   Karl Malbrain
   Petz Enterprises, LLC
   7575 W Linne Rd
   Tracy, CA 95377

   Email: Malbrain at Yahoo dot com




























Malbrain              Expires December 23, 2013         [Page 6]