Internet DRAFT - draft-ietf-dhc-v4-threat-analysis

draft-ietf-dhc-v4-threat-analysis





   Network Working Group                                    R. Hibbs 
   INTERNET-DRAFT                           Richard Barr Hibbs, P.E. 
   Category:  Informational                                 C. Smith 
   Expires:  December 15, 2006                        C & C Catering 
                                                             B. Volz 
                                                 Cisco Systems, Inc. 
                                                            M. Zohar 
                                    IBM T. J. Watson Research Center 
                                                       June 13, 2006 
                                  
                                  
                                  
          Dynamic Host Configuration Protocol for IPv4 (DHCPv4) 
                              Threat Analysis 
                                  
                                  
                                  
               <draft-ietf-dhc-v4-threat-analysis-03.txt> 
                 Saved: Tuesday, June 13, 2006, 12:56:25 
                                  
                                  
                                  

   Intellectual Property Rights 

      By submitting this Internet-Draft, each author represents that any 
      applicable patent or other IPR claims of which he or she is aware 
      have been or will be disclosed, and any of which he or she becomes 
      aware will be disclosed, in accordance with Section 6 of BCP 79. 

   Status of this Memo 

      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/1id-abstracts.html. 

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

      Comments are solicited and should be addressed to the working 
      group's mailing list at dhcwg@ietf.org and/or the author(s). 

   Copyright Notice  

      Copyright (C) The Internet Society (2006). 




   Hibbs, et al.        Expires: December 15, 2006            [Page 1] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   Abstract 

      DHCPv4 (RFC 2131) is a stable, widely used protocol for 
      configuration of host systems in a TCP/IPv4 network.  It did not 
      provide for authentication of clients and servers, nor did it 
      provide for data confidentiality.  This is reflected in the original 
      "Security Considerations" section of RFC 2131, which identifies a 
      few threats and leaves development of any defenses against those 
      threats to future work.  In about 1995, DHCP security began to 
      attract attention from the Internet community, eventually resulting 
      in the publication of RFC 3118 in 2001.  Although RFC 3118 was a 
      mandatory prerequisite for the DHCPv4 Reconfigure Extension, RFC 
      3203, it has had no known usage by any commercial or private 
      implementation since its adoption.  The DHC Working Group adopted a 
      work item for 2003 to review and modify or replace RFC 3118 to 
      afford a workable, easily deployed security mechanism for DHCPv4.  
      This memo provides a threat analysis of the Dynamic Host 
      Configuration Protocol for Ipv4 (DHCPv4) for use both as RFC 2131 
      advances from Draft Standard to Full Standard and to support our 
      chartered work improving the acceptance and deployment of RFC 3118. 

   Table of Contents 

   1 Introduction................................................4 
      1.1 Issues for Consideration...............................4 
      1.2 Exclusions.............................................4 
   2 Use of Key Words............................................5 
   3 Applicability...............................................5 
      3.1 Assumptions............................................5 
      3.2 Scope of this Memo.....................................5 
   4 General threats to DHCPv4...................................5 
      4.1 Denial-of-Service Attacks..............................5 
          4.1.1 Refusal to Configure Clients.....,...............5 
          4.1.2 Impersonating Clients.............,..............5 
          4.1.3 Flooding...........................,.............6 
      4.2 Client Misconfiguration................................6 
      4.3 Theft of Network Service...............................6 
      4.4 Packet Insertion, Deletion, or Modification............7 
   5 Weaknesses of RFC 3118......................................7 
      5.1 Key Exposure...........................................7 
      5.2 Key Distribution.......................................7 
      5.3 Replay attacks.........................................8 
      5.4 Protocol Agreement Difficulties........................8 
      5.5 DHCPv4 Relay Agents Excluded...........................8 
      5.6 Unanticipated Infrastructure Changes...................8 
   6 DHCPv4 Security Requirements................................9 
      6.1 Environments...........................................9 
      6.2 Capabilities..........................................10 
      6.3 Musings on the Key Distribution Problem...............10 
      6.4 Data Confidentiality..................................11 
          6.4.1 "Public" Data in DHCP Packets...................12 
          6.4.2 Protecting Data in DHCP Options.................12 
      6.5 Host versus User Authentication.......................12 
          6.5.1 Why do we make this distinction?................13 
          6.5.2 Is one mechanism sufficient?....................13 
   7 IANA Considerations........................................14 
   8 Security Considerations....................................14 
   9 Acknowledgements...........................................14 


   Hibbs, et al.        Expires: December 15, 2006            [Page 2] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   10 References................................................14 
      10.1 Normative References.................................14 
      10.2 Informative References...............................15 






















































   Hibbs, et al.        Expires: December 15, 2006            [Page 3] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
    
   1 Introduction 

      DHCPv4 as defined in [RFC1541] and [RFC2131] does not provide any 
      form of communication security, confidentiality, data integrity, or 
      peer entity authentication. 

      A design team was formed at IETF-55 in Atlanta in November 2002 to 
      look at DHCPv4 and [RFC3118] to document security requirements for 
      DHCPv4.  [RFC3118] defines the current security mechanisms for 
      DHCPv4. 

      Unfortunately, RFC 3118 has neither been implemented nor deployed to 
      date.  There is widespread feeling that its current restriction to 
      manual keying of clients limits its deployment.  The DHC Working 
      Group seeks to rectify this situation by defining security 
      mechanisms for DHCPv4 that have better deployment properties. 

   1.1 Issues for Consideration 

      Specific issues to be considered include: 

      O  Improved key management and scalability. 

      O  Security for messages passed between relay agents and servers. 

      O  The increased usage of DHCPv4 on insecure (e.g., wireless) and 
         public LANs. 

      O  The need for clients to be able to authenticate servers, without 
         simultaneously requiring client authentication by the server. 

      O  Does use of the Relay Agent Information Option imply the need 
         for authenticated messages between DHCP servers and relay 
         agents? 

   1.2 Exclusions 

      Excluded from our analysis are: 

      O  Securing messages between relay agents and servers:  work is 
         already underway on this, see [RFC4030] and [relay-ipsec]. 

      O  DHCP Reconfigure Extension (FORCERENEW) [RFC3203]:  the authors 
         believe it is appropriate to put the onus to provide the 
         analysis on those who are interested in moving that work forward.  
         [Editor's note:  despite repeated calls on the DHC Working Group 
         mailing list to identify even a single implementation of 
         FORCERENEW, we are unable to put forward an example of its use.] 

      O  DHCP Failover Protocol, as defined in [failover]:  the server-
         to-server protocol used differs significantly from DHCP, and 
         there has been no recent work on the [failover] draft. 

      O  DHCP-DNS Interaction, as defined in [fqdn]:  securing 
         communication between DHCP servers and DNS servers is a DNS 



   Hibbs, et al.        Expires: December 15, 2006            [Page 4] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
         update security issue and therefore out of scope for the DHC 
         working group. 

      O  DHCPv6, as defined in [RFC3315]: while we believe that 
         authentication techniques developed for DHCPv4 would generally 
         be applicable to DHCPv6, there are fundamental differences 
         between the two protocols and RFC 3118 specifies DHCPv4-style 
         message and options formats, so we have chosen to concentrate on 
         DHCPv4. 

      O  DHCP Lease Query, as defined in [RFC4388]:  because of lack of 
         maturity. 

   2 Use of Key Words 

      The key words "MUST," "MUST NOT," "REQUIRED," "SHALL," "SHALL NOT," 
      "SHOULD," "SHOULD NOT," "RECOMMENDED," "MAY," and "OPTIONAL" in this 
      document are to be interpreted as described in [RFC2119]. 

   3 Applicability 

   3.1 Assumptions 

      This document assumes that the reader is familiar with both the base 
      DHCPv4 protocol as defined in [RFC2131] and the DHCPv4 
      authentication extension as defined in [RFC3118], and does not 
      attempt to provide a tutorial on either. 

   3.2 Scope of this Memo 

      This document confines its analysis to DHCPv4, as defined in 
      [RFC2131] and [RFC2132] and DHCP Authentication, as defined in 
      [RFC3118]. 

   4 General threats to DHCPv4 

      These are the classes of threats to the base DHCPv4 protocol.  Not 
      all of these are DHCP-specific, nor can all the concerns listed be 
      addressed by DHCP authentication. 

   4.1 Denial-of-Service Attacks 

   4.1.1 Refusal to Configure Clients 

      A rogue DHCP server can refuse to configure clients by responding 
      with either partial information (i.e., missing the IP address, yet 
      containing other information), or a non-routable (or otherwise bad) 
      IP address, or the server may respond to DHCPDISCOVER messages (with 
      DHCPOFFER messages) but then ignore the subsequent client 
      DHCPREQUEST messages.  This may cause a client to repeatedly fail to 
      be configured, though clients could take steps to ensure that they 
      subsequently ignore such servers for some time. 

   4.1.2 Impersonating Clients 

      A rogue client can impersonate a client or many clients, by using 
      another client's client identifier (client identifier option) and/or 


   Hibbs, et al.        Expires: December 15, 2006            [Page 5] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      hardware address (chaddr) or by generating these identifiers.  This 
      may be done to: 

      O  Obtain addresses when hardware address or client identifier 
         restrictions (lists) are configured into the site's server 
         through some mechanism not described in RFC 2131.  Some sites 
         may use such a mechanism to restrict the clients that are 
         allowed addresses.  A rogue client listens to DHCPv4 traffic and 
         captures a few chaddrs or client identifiers and starts using 
         them. 

      O  Simulate many clients to consume all available addresses.  The 
         rogue client may either hold on to these addresses (until the 
         leases expire) or decline the addresses (by sending a 
         DHCPDECLINE) in the hopes that the server will remove the 
         declined address from use for a longer period. 

      O  Create havoc on the subnet by injecting fake messages on behalf 
         of other clients, prematurely releasing (DHCPRELEASE) or 
         declining (DHCPDECLINE) their addresses.  A rogue client listens 
         to DHCPv4 traffic and gleams client identity and address 
         information and uses this information to inject fake messages. 

   4.1.3 Flooding 

      A rogue client can flood the network with (near-) continuous DHCPv4 
      request messages thereby consuming processing resources and network 
      bandwidth. 

      We mention this attack only for completeness, as there is little or 
      nothing that a DHCP server can do to prevent such an attack and the 
      client could just as well send messages of other protocols, so we 
      will not discuss it further. 

   4.2 Client Misconfiguration 

      Rogue servers may give out bad configuration information (such as 
      fake gateways or DNS servers), or relay agents or other network 
      elements may alter packets between a client and server, to cause the 
      client to be misconfigured, or potentially worse cause future man-
      in-the-middle attacks.  This category is usually part of another 
      attack, be it theft of service, business espionage, or business 
      interruption including denial of service. 

   4.3 Theft of Network Service 

      By "theft of network service", we mean the taking of an unused 
      address for network access or the use of an assigned address not 
      belonging to the client, in contrast with "client masquerading" 
      (Section 2.1.2) which refers specifically to the use of a legitimate 
      client's chaddr or client identifier. 

      Instantiation of an unauthorized client for purposes of using 
      network resources or services is only partially preventable using 
      client-server authentication techniques.  We mention this attack 
      only for completeness, as there is little or nothing a DHCP server 
      itself can do to prevent such an attack.  Additional host and 


   Hibbs, et al.        Expires: December 15, 2006            [Page 6] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      application security is required to prevent theft of service, and 
      such layer 5 and higher functions are declared out of scope for this 
      analysis. 

   4.4 Packet Insertion, Deletion, or Modification 

      If a client (or server or relay agent) is known to crash or shut 
      down when invalid packets of some type are sent, this could be 
      simply another type of denial of service attack.  Likewise, simply 
      deleting certain packet types (DHCPREQUEST to renew or rebind a 
      lease) would eventually result in client lease expiration, a denial 
      of service attack.  A rogue relay agent or other host would 
      typically use packet insertion and deletion to interrupt service.  
      In a different vein, the modification of packets in the DHCP 
      exchange may be used to facilitate many different types of attacks 
      on either client or server.  For example, a DHCPACK could be 
      modified to a DHCPNAK, thereby denying the client a lease. 

   5 Weaknesses of RFC 3118 

      An authentication mechanism for DHCPv4 protocol messages was 
      developed in RFC 3118, proposing two basic authentication mechanisms 
      and the means for extending the repertoire of methods as needed.  
      The configuration token method (protocol 0) relies on exchanging 
      clear-text authentication tokens between unconfigured DHCPv4 clients 
      and DHCPv4 servers.  It is also vulnerable to message interception.  
      Delayed authentication (protocol 1) focuses on solving the 
      intradomain authentication problem where the out-of-band exchange of 
      a shared secret is feasible. 

   5.1 Key Exposure 

      The configuration token protocol, protocol 0, utilizes clear-text 
      authentication tokens (i.e., passwords), providing only weak entity 
      authentication and no message authentication.  This protocol is 
      vulnerable to interception and provides only the most rudimentary 
      protection against inadvertently instantiated DHCP servers.  It also 
      leaks the key before knowing whether the server supports protocol 0. 

   5.2 Key Distribution 

      Both protocols 0 and 1 suffer from the lack of a means to easily, 
      quickly, and reliably distribute authentication tokens used in the 
      protocols.  In many environments, some existing key distribution 
      mechanism is presumed to be trusted and reliable, with strong 
      administrative procedures and a security-conscious user population 
      in place, leaving only the selection and specification of an 
      appropriate cryptographic algorithm as a concern of the protocol 
      designer. 

      Relying on such out-of-band methods to distribute and manage tens or 
      hundreds of thousands of tokens is a significant barrier to the 
      widespread implementation of either protocol 0 or 1. 

      Key distribution presents a significant system management challenge 
      that is in marked contrast with DHCP itself, a protocol that has 
      been successfully deployed in environments that make few demands or 


   Hibbs, et al.        Expires: December 15, 2006            [Page 7] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      assumptions.  If we are to hope for similarly successful deployment 
      of authentication for DHCP, a means for mitigating (if not 
      eliminating) these difficulties must be offered. 

   5.3 Replay attacks 

      Since the configuration token protocol, protocol 0, passes a clear-
      text authentication token, the token would be visible to any host on 
      the same subnet.  Delayed authentication, protocol 1, is not 
      susceptible to replay attacks since it contains a nonce value 
      generated by the source and a message authentication code (MAC) 
      which provides both message and entity authentication. 

   5.4 Protocol Agreement Difficulties 

      An a priori agreement is presumed to have taken place between client 
      and server on the authentication protocol to use.  No mechanism is 
      provided to allow for the discovery of supported protocols, nor is 
      there a facility for negotiation.  The only way to express non-
      support of a protocol is by failing to respond. 

   5.5 DHCPv4 Relay Agents Excluded 

      [RFC3118] is defined exclusively for client-server communication.  
      The role of relay agents has expanded somewhat from their earliest 
      definition to include a DHCP option carrying relay agent information 
      via sub-options [RFC3046].  An authentication sub-option for the 
      relay agent information option has been defined by [RFC4030], though 
      it only defines a single protocol, symmetrical shared-secret keys, 
      to protect the contents of the messages between DHCP relay agents 
      and servers.  Work-in-progress to protect the interaction between 
      relay agents and servers using IPSEC [relay-ipsec] seems to have 
      halted, with no recent work. 

   5.6 Unanticipated Infrastructure Changes 

      Rapid commit, defined by [RFC4039], specifies how a two-message 
      exchange between client and server can dramatically decrease the 
      elapsed time for address assignment, a feature becoming significant 
      as more and more highly mobile devices desire an abbreviated address 
      assignment phase for short duration communications. 

      While a two-message exchange by itself does not affect the overall 
      security of the communications, it has two side effects.  First, the 
      delayed authentication protocol simply cannot be used as the 
      DHCPOFFER message required to return a nonce value to the client is 
      not present.  Second, as noted by the authors of [RFC4039], without 
      authentication it is considerably more likely to consume addresses, 
      increasing the risk of one type of denial of service attack. 

      CableLabs client configuration [RFC3495] adds another two-tier 
      option to the DHCPv4 options list, defining an initial set of sub-
      options for passing configuration information specific to CableLabs 
      VoIP and possible future services.  Although several of the sub-
      options contain potentially sensitive information regarding Kerberos 
      tickets to be used by cable modems and media terminal adapters.  The 
      option specification does not require used of DHCP authentication, 


   Hibbs, et al.        Expires: December 15, 2006            [Page 8] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      although it would seem to be necessary.  The authors of this memo do 
      not wish to go so far as to recommend that DHCP authentication be a 
      requirement for any or all DHCP options, but the CableLabs client 
      configuration option will likely not be the last option that could 
      benefit from a robust, workable authentication implementation. 

      Passive duplicate address detection [p-dad] is a relatively new 
      proposal to replace the use of ICMPECHO and ARP messages by DHCP 
      clients and servers to improve the duplicate address detection 
      process by passively listening to message traffic and developing a 
      table of matches between chaddr, DHCP client identifier, and IP 
      address that would be periodically transmitted to interested DHCP 
      servers.  The presence of an entry for a particular IP address would 
      signify that it is known to be in use, so a DHCP server could 
      exclude the address from its pool of addresses available for 
      assignment. 

      The address usage collector (AUC) defined by [p-dad] does not use 
      the DHCP client-server protocol, nor does it function by actively 
      handling DHCP messages, so its implementation would not affect 
      authenticated DHCP messages.  However, DHC Working Group discussion 
      of the [p-dad] draft raised the point that the AUC must capture the 
      client identifiers used in DHCP message exchanges.  If DHCP 
      authentication were enabled, an AUC of necessity would be required 
      to have the same authentication configuration data (protocol, 
      algorithm, and key) as the clients and servers, certainly a 
      consideration for scalability and risk assessment. 

   6 DHCPv4 Security Requirements 

      DHCPv4 was developed in an era when computers were primarily used in 
      business and university environments.  Security was either not a 
      concern or was addressed by controlling physical access stemming 
      from the belief that intrusion into critical systems was most likely 
      to come from an external source.  Now, with wireless access points 
      and ubiquitous networking, physical access control mechanisms are no 
      longer sufficient, and security and privacy issues are a major 
      concern. 

   6.1 Environments 

      The following environments can be expected for DHCPv4 
      implementations: 

      O  Network size, from a few hosts to hundreds of thousands of hosts. 

      O  Network topology, from a single subnet to Class-A networks. 

      O  Network location, from a single room to international dispersion. 

      O  Wired, broadcast wireless, and directional wireless media. 

      O  Movement between different media and networks. 

    




   Hibbs, et al.        Expires: December 15, 2006            [Page 9] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   6.2 Capabilities 

      The following are essential elements of DHCPv4 security: 

      1. Clients MUST be able to authenticate servers (to prevent 
         misconfigured clients and assure that the correct servers are 
         being contacted). 

      2. Servers MUST be able to authenticate clients (use of hardware 
         addresses and client-IDs provides no real security but is all 
         that is easily possible today).  Better mechanisms are needed 
         for servers to identify clients to whom they will offer service 
         (to prevent IP address pool depletion, for example). 

      3. Administrators MUST be able to choose between four 
         authentication paradigms: 

         a. No authentication required. 

         b. Mutual authentication required. 

         c. Client authenticates server. 

         d. Server authenticates client. 

      4. Integrity of DHCP packet exchanges MUST be assured. 

      Not all capabilities may be needed or desired in all situations. 

   6.3 Musings on the Key Distribution Problem 

      The authors believe that only by addressing scalability issues with 
      key distribution can RFC 3118 achieve wide deployment.  While it is 
      not our intention to describe solutions in this document, we admit 
      that we find several models used today by browsers and secure web 
      servers as well as token-based user authentication schemes such as 
      the RSA SecureID token to be attractive.  Trusted root certificates 
      are distributed with the client implementation (web browser); users 
      have the ability to extend the certificates that they will accept, 
      install their own certificates (should client identification be 
      required), and choose which certificate to present to servers 
      requesting the client's identity.  Security tokens that combine a 
      secure seed value with the current time of day using a cryptographic 
      algorithm to produce effectively a random one-time pad are 
      relatively inexpensive and widely available. 

      Analogously, DHCPv4 servers could make use of certificates just as 
      web servers do, while DHCPv4 clients could be distributed with 
      appropriate certificate authority certificates (trust anchors).  
      Self-signed certificates are, of course, a possibility should an 
      organization wish full control over its domain of trust. 

      Should this path be pursued, we believe that certificate revocation 
      will be a major problem to confront, just as it is in the 
      browser/web server environment today.  Revocation of client 
      certificates (which we believe would occur, on the whole, much more 



   Hibbs, et al.        Expires: December 15, 2006           [Page 10] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      frequently than revocation of server certificates) would require 
      only ordinary care in certificate validation by the DHCP server. 

      Revocation of server certificates is more complex because of the 
      difficulty updating client configurations, as well as the inability 
      of clients to rely on certificate revocation lists while in the 
      process of performing IP address and configuration management. 

      Using a security token device today is mostly to identify a person 
      requesting access to a private resource.  Key fobs, USB dongles, or 
      wallet cards are in the possession of a user, and in conjunction 
      with a user name, password, and possibly other information confirms 
      two of the three classic dimensions of provable identity (something 
      you know--user name and password, something you have--the security 
      token, and something you are--biometrics typically satisfy this 
      dimension.) 

      We envision a security token becoming part of the host system's 
      hardware complement in the near future, such that the token then 
      becomes not a user identity validator, but a host system validator.  
      It is common today to have a system service tag or serial number 
      that is machine-readable.  Some hardware configurations include 
      processors with readable serial numbers as well.  What we lack is a 
      secure means to generate a cryptographically random key that cannot 
      be easily defeated by software or component swapping. 

      Either of these approaches offers a simple way to avoid the classic 
      key distribution problem, though neither is totally without cost.  
      Somehow, somewhere, a token's identifiers (seed and algorithm) must 
      be recorded by the DHCP and other interested servers, or the 
      certificate infrastructure must be in place.  We see no way to 
      eliminate administrative issues associated with security, but we can 
      see an end to passwords written on a sticky note. 

      An interesting Internet-Draft by Alper Yegin et al. [eap-auth] 
      proposed the use of EAP for DHCP authentication using the delayed 
      method.  Their draft required modifications to several components of 
      an AAA solution, but illustrated how delayed authentication could be 
      "bootstrapped" using tools at our disposal. 

      That idea is also suggested by [RFC4014] Ralph Droms and John 
      Schnizlein, who define a DHCP option code for RADIUS information 
      provided by an NAS, similar to the mechanism in [eap-auth].  These 
      two documents taken together may provide a third solution to the key 
      distribution problem. 

   6.4 Data Confidentiality 

      Data Confidentiality was not provided for in the original DHCP 
      protocol as defined in RFC 2131 or any of the subsequent RFCs.  
      Historically, DHCP was mainly used to assign IP addresses and return 
      configuration options such as the local gateway and DNS information. 

      Over time the DHCP protocol has evolved, deployments are extending 
      beyond physically secure intranets to public networks in hotspots, 
      cafes, airports, and at home over broadband.  We are seeing an 
      accompanying proliferation of new configuration options. 



   Hibbs, et al.        Expires: December 15, 2006           [Page 11] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      DHCP has, in fact, become so successful that it is now used to 
      transport a great deal of configuration data that could be obtained 
      in a variety of other ways.  It is certainly possible that a client 
      or server will wish to reveal some of these data only to a properly 
      authenticated peer. 

   6.4.1 "Public" Data in DHCP Packets 

      We assume that any information that may be gleaned directly from the 
      network using, for example, Ethernet promiscuous mode is not 
      confidential.  It could be argued that over time more and more 
      communication will be switched, encrypted, or secured at the 
      physical layer, so that less information could easily be gleaned 
      from the network traffic. 

      Taking encryption into consideration, the IP packet payload might be 
      encrypted, but not the IP header itself since it is required for 
      packet routing.  As a result, none of the IP header fields are 
      confidential.  IP addresses included in the header are therefore not 
      confidential.  Similarly, the hardware addresses are also not 
      confidential. 

      Although the IP packet payload (which would include the UDP or TCP 
      header) might normally be encrypted, some protocols have made 
      explicit decisions not to encrypt their exchanges, declaring their 
      data public.  DNS is such a protocol [dns-threats].  Thus, we may 
      also treat DNS domain and server information as public. 

      Commonly used routing protocols such as BGP [RFC1771], RIP [RFC1721], 
      and router discovery [RFC1256] also normally send advertisements in 
      the clear and we therefore extend our treatment of public DHCP data 
      to routing information. 

   6.4.2 Protecting Data in DHCP Options 

      Some DHCP options (e.g., relay agent options, [RFC3046]) or option 
      families (site or vendor options) admit no analysis because the data 
      carried by them may be of unknown sensitivity.  Users must do their 
      own analysis of confidentiality. 

      Should some data require confidentiality, it may be possible to 
      exploit the "public" data above to allow a two-step configuration 
      process in which sufficient client configuration is first obtained 
      by the normal DHCPDISCOVER/OFFER/REQUEST/ACK exchange, and private 
      data subsequently transmitted over a secure communications channel 
      (such as IPsec) using DHCPINFORM. 

   6.5 Host versus User Authentication 

      [RFC3118] is concerned specifically with DHCP clients and servers 
      authenticating themselves to each other if required by an 
      administrative domain.  This is not the same thing as authenticating 
      users for establishing their Identity, access rights, permissions, 
      or other matters relating to what they can view or do once connected 
      to the network. 




   Hibbs, et al.        Expires: December 15, 2006           [Page 12] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   6.5.1 Why do we make this distinction? 

      Host authentication provides only assurance that the hosts 
      connecting to a network are recognized.  This may be for several 
      reasons, including: 

      O  Requirement to restrict network access from "foreign" hosts to 
         ensure consistent technical support or meet other regulatory 
         requirements such as double-insulation or non-sparking. 

      O  Requirement to restrict network access from "unsecured" (for 
         instance, non-TEMPEST compliant) hosts in a high security 
         network. 

      O  Requirement to restrict network access from unknown hosts whose 
         identity has not been recorded by existing administrative 
         procedures, saving troubleshooting and administrative effort. 

      User authentication focuses on the individual users of a host system, 
      seeking to uniquely identify someone to establish their rights to 
      view, print, add, alter, delete, edit, modify, copy, or manipulate 
      any data maintained by an organization, run software programs, or 
      affect changes in the environment.  This may be for such reasons as: 

      O  Requirement to be compliant with regulations such as HIPAA, SOX, 
         and GLBA designed to safeguard and protect confidentiality and 
         various reporting requirements. 

      O  Requirement to maintain reasonable controls over access to 
         certain critical systems such as utility power grids, water and 
         sewage treatment plants, the network infrastructure itself, and 
         life safety systems of all sorts. 

      O  Requirement to maintain administrative controls over certain 
         sensitive information such as trade secrets and personnel data 

   6.5.2 Is one mechanism sufficient? 

      Full discussion of this question is beyond the scope of this memo, 
      but the simple answer is, "probably not."  This has a significant 
      implication for the claims of certain techniques such as 
      "sandboxing" of unverified users, restricting their network access 
      to a user registration web site until their identity has been 
      established.  Simply put, limiting network access is not DHCP 
      authentication, although it does represent a very workable approach 
      to user authentication in many cases. 

      Recall that a user can be identified by "something they know," 
      "something they have," and "something they are."  While the same 
      could be said to be true of host systems, the authors point out that 
      while we do not pretend to understand all of the ways that future 
      developers might imbue hosts with the tools to independently create 
      attacks on our infrastructure, we will assert that users will be the 
      greatest risk for some time still. 

      DHCP Authentication addresses only host authentication from the 
      belief that other, existing mechanisms such as IPSEC, SSL, and VPN 


   Hibbs, et al.        Expires: December 15, 2006           [Page 13] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      can protect the content of communications, with Identity Management 
      and other technologies can protect applications and data. 

      A properly authenticated host could still launch a denial of service 
      attack, corrupt sensitive data, or wreak other havoc, which 
      underscores our point that host and user authentication are 
      different. 

      A well-secured network needs both. 

   7 IANA Considerations 

      None known. 

   8 Security Considerations 

      This entire memo presents a threat analysis of the DHCPv4 protocol. 

   9 Acknowledgements 

      This document is the result of work undertaken the by DHCP working 
      group, beginning at the 55th IETF meeting in Atlanta.  The authors 
      would also like to acknowledge contributions from others not 
      directly involved in writing this memo, including John Beatty and 
      Vipul Gupta of Sun Microsystems, Ralph Droms of Cisco Systems, 
      Bernard Aboba of Microsoft, and Mark Stapp of Cisco Systems for 
      their careful reviews and helpful suggestions. 

   10 References 

   10.1 Normative References 

      [RFC1256] Deering, S., "ICMP Router Discovery Messages," RFC 1256, 
          September 1991. 

      [RFC1541] Droms, R., "Dynamic Host Configuration Protocol," RFC 1541, 
          October 1993. 

      [RFC1721] Malkin, G., "RIP Version 2 Protocol Analysis," RFC 1721, 
          November 1994. 

      [RFC1771] Rekhter, Y. and T. Li, "A Border Gateway Protocol 4 (BGP-
          4)," RFC 1771, March 1995. 

      [RFC2131] Droms, R., "Dynamic Host Configuration Protocol," RFC 2131, 
          March 1997. 

      [RFC2132] Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor 
          Extensions", RFC 2132, March 1997. 

      [RFC3046] Patrick, M., "DHCP Relay Agent Information Option," RFC 
          3046, January 2001. 

      [RFC3118] Droms, R. and W. Arbaugh, "Authentication for DHCP 
          Messages," RFC 3118, June 2001. 




   Hibbs, et al.        Expires: December 15, 2006           [Page 14] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      [RFC4014] Droms, R. and J. Schnizlein, " Remote Authentication Dial-
          In User Service (RADIUS) Attributes Suboption for the Dynamic 
          Host Configuration Protocol (DHCP) Relay Agent Information 
          Option," RFC 4014, February 2005. 

   10.2 Informative References 

      [RFC2026] Bradner, S., "The Internet Standards Process -- Revision 
          3," RFC 2026, BCP 9, October 1996. 

      [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 
          Requirement Levels", BCP 14, RFC 2119, March 1997. 

      [RFC3203] T'Joens, Y., C. Hublet and P. De Schrijver, "DHCP 
          Reconfigure Extension," RFC 3203, December 2001. 

      [RFC3315] Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C. and 
          M. Carney, "Dynamic Host Configuration Protocol for IPv6 
          (DHCPv6)," RFC 3315, July 2003. 

      [RFC3495] Beser, B. and P. Duffy, "Dynamic Host Configuration 
          Protocol (DHCP) Option for CableLabs Client Configuration," RFC 
          3495, March 2003. 

      [RFC3594] Duffy, P., PacketCable Security Ticket Control Sub-Option 
          for the DHCP CableLabs Client Configuration (CCC) Option"," RFC 
          3594, September 2003. 

      [RFC3978] Bradner, S., "IETF Rights in Contributions," RFC 3978, BCP 
          78, March 2005. 

      [RFC3979] Bradner, S., "Intellectual Property Rights in IETF 
          Technology," RFC 3979, BCP 79, March 2005. 

      [RFC4030] Stapp, M. and T. Lemon, "The Authentication Suboption for 
          the DHCP Relay Agent Option," draft-ietf-dhc-auth-suboption-03), 
          RFC 4030, March 2005. 

      [RFC4039] Park, S., P. Kim and B. Volz, "Rapid Commit Option for the 
          Dynamic Host Configuration Protocol version 4 (DHCPv4)," RFC 
          4039, March 2005. 

      [RFC4388] Woundy, R., and Kinnear, K., "Dynamic Host Configuration 
          Protocol (DHCP) Leasequery," February 2006. 

      [dns-threats] Atkins, D. and R. Austein, "Threat Analysis Of The 
          Domain Name System," draft-ietf-dnsext-dns-threats-07 (work in 
          progress), April 2004. 

      [draft2223bis] Reynolds, J. and R. Braden, "Instructions to Request 
          for Comments (RFC) Authors," draft-rfc-editor-rfc2223bis-08.txt 
          (work in progress), August 2004. 

      [eap-auth] Yegin, A., H. Tschofenig and D. Forsberg, "Bootstrapping 
          RFC3118 Delayed DHCP Authentication Using EAP-based Network 
          Access Authentication," draft-yegin-eap-boot-rfc3118-02, (work 
          in progress), March 2006. 


   Hibbs, et al.        Expires: December 15, 2006           [Page 15] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      [failover] Droms, R. and K. Kinnear, "DHCP Failover Protocol," 
          draft-ietf-dhc-failover-12 (work in progress), December 2003.  
          [Editor's note:  at the time of publication of this memo, the 
          Failover Internet-Draft has expired.] 

      [fqdn] Stapp, M., Volz, B., and Y. Rekhter, "The DHCP Client FQDN 
          Option," draft-ietf-dhc-fqdn-option-13 (work in progress), March 
          2006. 

      [p-dad] Forte, A., S. Shin and H. Schulzrinne, "Passive Duplicate 
          Address Detection for Dynamic Host Configuration Protocol 
          (DHCP)," draft-forte-dhc-passive-dad-02 (work-in-progress), June 
          2006. 

      [relay-ipsec] Droms, R., "Authentication of DHCP Relay Agent Options 
          Using Ipsec," draft-ietf-dhc-relay-agent-ipsec-02 (work in 
          progress), May 2005.  [Editor's note:  at the time of 
          publication of this memo, the Relay IPSEC Internet-Draft has 
          expired.] 







































   Hibbs, et al.        Expires: December 15, 2006           [Page 16] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   Authors' Addresses 

      Richard Barr Hibbs 
      Richard Barr Hibbs, P.E. 
      952 Sanchez Street 
      San Francisco, California 94114-3362 
      USA 
       
      Phone: +1 415 648 3920 
      Fax:   +1 415 648 9017 
      E-Mail:  rbhibbs@pacbell.net 

      Carl Smith 
      C & C Catering 
      1121 Holly Street 
      Alameda, California 94502 
      USA 
       
      E-Mail:  islandia@alumni.ucsd.edu 

      Bernard Volz 
      Cisco Systems, Inc. 
      1414 Massachusetts Avenue 
      Boxborough, Massachusetts 01719 
      USA 
       
      Phone:  +1 978 936 0382 
      E-Mail:  volz@cisco.com 

      Mimi Zohar 
      IBM T. J. Watson Research Center 
      19 Skyline Drive 
      Hawthorne, New York 10532-2134 
      USA 
       
      Phone: +1 914 784 7606 
      E-Mail: zohar@us.ibm.com 

   Full Copyright Statement 

      Copyright (C) The Internet Society (2006).  All rights reserved. 

      This document is subject to the rights, licenses and restrictions 
      contained in BCP 78, and except as set forth therein, the authors 
      retain all their rights. 

      This document and the information contained herein are provided on 
      an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE 
      REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE 
      INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR 
      IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 
      THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 
      WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 






   Hibbs, et al.        Expires: December 15, 2006           [Page 17] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   Intellectual Property 

      The IETF takes no position regarding the validity or scope of any 
      Intellectual Property Rights or other rights that might be claimed 
      to pertain to the implementation or use of the technology described 
      in this document or the extent to which any license under such 
      rights might or might not be available; nor does it represent that 
      it has made any independent effort to identify any such rights.  
      Information on the procedures with respect to rights in RFC 
      documents can be found in BCP 78 and BCP 79. 

      Copies of IPR disclosures made to the IETF Secretariat and any 
      assurances of licenses to be made available, or the result of an 
      attempt made to obtain a general license or permission for the use 
      of such proprietary rights by implementers or users of this 
      specification can be obtained from the IETF on-line IPR repository 
      at http://www.ietf.org/ipr. 

      The IETF invites any interested party to bring to its attention any 
      copyrights, patents or patent applications, or other proprietary 
      rights that may cover technology that may be required to implement 
      this standard.  Please address the information to the IETF at ietf-
      ipr@ietf.org. 

   Acknowledgement 

      Funding for the RFC Editor function is provided by the IETF 
      Administrative Support Activity (IASA). 






























   Hibbs, et al.        Expires: December 15, 2006           [Page 18] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
   APPENDIX:  NOTES 

      This appendix will be removed in its entirety before the memo goes 
      to Working Group Last Call. 

   ISSUES LIST 

      This section summarizes issues raised in this memo that require 
      resolution by the DHC Working Group. 

      1. Because of the specific exception for inclusion of the Relay 
         Agent Information Option [RFC3046] in cases where it does not 
         fit in the main payload portion of a DHCP response packet, 
         should the use of DHCP Authentication be mandated in place of 
         the Relay Agent Authentication suboption? 

      2. Does the CableLabs Client Configuration option [RFC3495] require 
         the use of DHCP Authentication to protect sensitive information 
         about Kerberos domains and keys? 

      3. Should the DHC Working Group promote the development of a new 
         authentication protocol based on the use of certificates? 

      4. Should the DHC Working Group solicit an update from the authors 
         of the EAP-based authentication protocol [eap-auth] and develop 
         it as a new authentication protocol? 

      5. Should the DHC Working Group promote the development of a new 
         authentication protocol based on hardware security tokens? 

   CHANGE LOG 

      This section summarizes the changes made to this memo as it has 
      evolved. 

   "-01" Draft 

      No significant changes were made from initial ("-0") version: 

      O  Updated author information. 

      O  Removed unused references. 

      O  Added the Change Log section. 

   "-02" Draft 

      The following changes were made: 

      O  Updated author information. 

      O  Added text to 1.3 to exclude security for messages passed 
         between relay agents and servers, as there are two Internet-
         Drafts on this subject. 

      O  Reworded several sections in section 2. 



   Hibbs, et al.        Expires: December 15, 2006           [Page 19] 


   Internet-Draft         DHCPv4 Threat Analysis         June 13, 2006 
    
      O  Revised and renamed section 2.1.2.  Now includes more attacks. 

      O  Revised section 2.1.3. 

      O  Minor revisions to section 3, 3.2, and 3.2. 

      O  Other minor insertions, deletions, and modifications based on 
         comments from Bernard Aboba and Mark Stapp and to otherwise 
         improve the document. 

   "-03" Draft 

      The draft was updated, correcting minor spelling, grammatical, and 
      typographical errors, and modified in the following ways: 

      O  Removed Section 8, "Change Log," to APPENDIX and added an issues 
         list section. 

      O  Replaced all Internet-Draft boilerplate with the most current 
         versions. 

      O  Renumbered document sections. 

      O  Updated author information. 

      O  Updated references for I-Ds advanced to RFCs. 

      O  Added normative and informative references. 

      O  Added discussion of Relay Agents (section 3.5.) 

      O  Added section 3.6, discussing the side effects of infrastruture 
         changes from the Rapid Commit and CableLabs configuration 
         options, and the newly proposed Address Usage Collector (AUC) 
         for passive duplicate address detection. 

      O  Expanded section 4.3, "Musings on the Key Distribution Problem" 
         to include description of hardware-based key generation tokens. 

      O  Added section 4.5, "Host versus User Authentication," to help 
         clarify the problem [RFC3118] is intended to address. 

      O  Added discussion of the RADIUS-based authentication proposal 
         described in [RFC4014]. 

      O  Added discussion of the EAP-based authentication protocol 
         proposed by A. Yegin et al. 

      O  Inserted Intellectual Property Rights statement on first page. 

      O  Performed general spelling, grammar, and typography update of 
         entire memo text. 

      O  Reviewed all drafts used as references, updated as necessary. 

    



   Hibbs, et al.        Expires: December 15, 2006           [Page 20]