RFC8567: Customer Management DNS Resource Records

Download in PDF format Download in text format






Independent Submission                                            E. Rye
Request for Comments: 8567                                    R. Beverly
Category: Informational                                            CMAND
ISSN: 2070-1721                                             1 April 2019


                Customer Management DNS Resource Records

Abstract

   Maintaining high Quality of Experience (QoE) increasingly requires
   end-to-end, holistic network management, including managed Customer
   Premises Equipment (CPE).  Because customer management is a shared
   global responsibility, the Domain Name System (DNS) provides an ideal
   existing infrastructure for maintaining authoritative customer
   information that must be readily, reliably, and publicly accessible.

   This document describes four new DNS resource record types for
   encoding customer information in the DNS.  These records are intended
   to better facilitate high customer QoE via inter-provider cooperation
   and management of customer data.

Status of This Memo

   This document is not an Internet Standards Track specification; it is
   published for informational purposes.

   This is a contribution to the RFC Series, independently of any other
   RFC stream.  The RFC Editor has chosen to publish this document at
   its discretion and makes no statement about its value for
   implementation or deployment.  Documents approved for publication by
   the RFC Editor are not candidates for any level of Internet Standard;
   see Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc8567.














Rye & Beverly                 Informational                     [Page 1]

RFC 8567              Customer Management over DNS          1 April 2019


Copyright Notice

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

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://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.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   3
   2.  Customer Management Resource Records  . . . . . . . . . . . .   3
     2.1.  The PASSWORD Resource Record  . . . . . . . . . . . . . .   4
     2.2.  The CREDITCARD Resource Record  . . . . . . . . . . . . .   4
     2.3.  The SSN Resource Record . . . . . . . . . . . . . . . . .   6
     2.4.  The SSNPTR Resource Record  . . . . . . . . . . . . . . .   7
   3.  Related RR Types  . . . . . . . . . . . . . . . . . . . . . .   7
   4.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   8
   6.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   9
     6.1.  Normative References  . . . . . . . . . . . . . . . . . .   9
     6.2.  Informative References  . . . . . . . . . . . . . . . . .   9
   Acknowledgements  . . . . . . . . . . . . . . . . . . . . . . . .  11
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   A significant portion of today's Internet is comprised of residential
   access networks.  These access networks, and their providers, are now
   critical infrastructure, and significant research is devoted to
   measuring residential broadband speed and reliability [SAMKNOWS].

   Unfortunately, Customer Premises Equipment (CPE) is one of the
   weakest links in the chain of network equipment connecting consumers
   to the Internet.  Customers typically do not perform proactive
   maintenance, e.g., firmware updates, on their own CPE.  In many
   cases, CPE is even deployed with default authentication credentials,
   a fact that has been exploited by various Internet-wide denial-of-
   service attacks [MIRAI].

   A central observation motivating this document is that customers
   simply cannot be trusted to manage their own networks, much less the
   path-critical CPE.  Given the difficulty in maintaining the hygiene



Rye & Beverly                 Informational                     [Page 2]

RFC 8567              Customer Management over DNS          1 April 2019


   and resilience of broadband access, CPE maintenance should instead be
   treated as a shared global responsibility among Internet Service
   Providers (ISPs).

   Further complicating customer management is choice in ISP, which is
   currently available to nearly half of US households.  While customers
   may switch providers, their biographical, billing, and technological
   details remain constant.  Therefore, service providers need
   mechanisms to ensure that transitioning customers into and out of
   their network is as seamless as possible from both a technical and
   billing standpoint.

   Finally, service providers, advertisers, and law enforcement agencies
   have varying but important reasons to track unique users' behavior on
   the Internet.  While RFC 7043 [RFC7043] makes use of EUI48 and EUI64
   Resource Record (RR) types to uniquely identify CPE devices and
   better support third-party tracking, these mechanisms can be defeated
   by the customer simply purchasing new CPE.

   This document takes a holistic, end-to-end view of customer
   management with the aim of enhancing customer QoE and overall network
   security.  To enable shared CPE maintenance, this document leverages
   the Domain Name System (DNS), described in RFC 1034 [RFC1034] and
   RFC 1035 [RFC1035], and introduces new RR types to aid network
   management.

1.1.  Terminology

   This document uses capitalized keywords such as MUST and MAY to
   describe the requirements for using the registered RR types.  The
   intended meaning of those keywords in this document are the same as
   those described in RFC 2119 [RFC2119] and RFC 8174 [RFC8174].
   Although these keywords are often used to specify normative
   requirements in IETF Standards, their use in this document does not
   imply that this document is a standard of any kind.

2.  Customer Management Resource Records

   The ubiquity of residential broadband Internet service affords myriad
   benefits to consumers, but also poses a daunting challenge for
   Internet Service Providers -- how to best manage sensitive customer
   identifiers and billing details, while ensuring the resilience and
   security of CPE devices on their network?

   This document introduces four new RRs to assist in the management of
   customer data by ISPs.





Rye & Beverly                 Informational                     [Page 3]

RFC 8567              Customer Management over DNS          1 April 2019


   This section describes the purpose and wire format of the new DNS
   RRs.

2.1.  The PASSWORD Resource Record

   The PASSWORD RR facilitates remote management of CPE devices by
   providing the login credentials for the CPE in a single RR.  These
   credentials are used by authorized service providers to authenticate
   to the CPE.  Authenticated users can then install important software
   and configuration updates to benefit the security and health of the
   provider's network.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                            USERNAME                           |
   |                                                               |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                            PASSWORD                           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                      Figure 1: PASSWORD RDATA Format

   Where:

   USERNAME
      The <character-string> username of the account holder located at
      the CPE.  In order to limit gratuitous expressions of
      individuality, usernames MUST be 16 or fewer ASCII characters and
      MUST NOT include punctuation.

   PASSWORD
      The <character-string> password associated with the USERNAME.  In
      order to keep the RR size to a minimum, passwords longer than 32
      bits are NOT supported.

   Hosts on which multiple accounts exist SHOULD have separate PASSWORD
   RRs for each account.

2.2.  The CREDITCARD Resource Record

   The CREDITCARD RR stores the billing details of the primary account
   holder located at the hostname associated with the CPE.  Upon gaining
   a new subscriber, an ISP enters their billing details in a CREDITCARD
   RR so that it MAY be queried as needed for automated billing
   purposes.  In addition, any outside entity with whom the customer



Rye & Beverly                 Informational                     [Page 4]

RFC 8567              Customer Management over DNS          1 April 2019


   develops a recurring payment plan MAY query this RR for payment
   details as well.  Storing payment information in an RR, rather than
   in the databases of disparate organizations with varying data
   security postures, helps reduce attack vectors available to malicious
   actors seeking this data.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                         CARDNUMBER                            |
   |                                                               |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         EXPIRE                                |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                         CHECKSUM                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 2: CREDITCARD RDATA Format

   Where:

   CARDNUMBER
           The <character-string> 16-digit credit card number used for
           billing by the host's service provider.  This field MUST NOT
           contain punctuation or spaces; only numeric digits
           represented in ASCII are allowed.  Because this field is 16
           digits in length, users MUST NOT use American Express cards.

   EXPIRE
           A <character-string> specifying the two-digit month and two-
           digit year in which the credit card expires.  This field MUST
           NOT contain punctuation or spaces; only numeric digits
           represented in ASCII are allowed.

   CHECKSUM
           In order to protect against bit errors occurring in the
           CARDNUMBER field, this RR type MUST use error checking as
           follows: Luhn's algorithm is employed as a simple checksum to
           validate that none of the 16 digits were corrupted in
           transit.  Starting with the leftmost digit, we add this
           digit's value to a running total; for every second digit
           (beginning with the second-from-left digit), we add twice its
           value to the running total.  This algorithm continues until
           all 16 digits have been exhausted.  With this partial sum in





Rye & Beverly                 Informational                     [Page 5]

RFC 8567              Customer Management over DNS          1 April 2019


           hand, we solve for the value x such that x added to our
           partial sum is congruent to 0 modulo 10, and store x in the
           CHECKSUM field.

           When a CREDITCARD RR is queried, the recipient simply
           computes Luhn's algorithm in the same manner as described
           above, and validates that their computed value of x matches
           that stored in the CHECKSUM field.

           Note that this novel use of Luhn's algorithm MAY have
           applications outside of the CREDITCARD RR.

2.3.  The SSN Resource Record

   The SSN RR maps hostnames to the US Social Security number and birth
   date of a user located at that host.  For CPE behind which multiple
   users reside, a separate SSN RR SHOULD be entered into the DNS for
   each user.  When residential broadband service becomes available
   outside of the United States, those countries SHOULD adopt
   identifiers that are compatible with the US SSN in order to ease
   administrative burden on the DNS and multinational service providers.

   During tax preparation season, the United States Internal Revenue
   Service WILL query the SSN RR to verify residency and proof of
   hostname ownership.  In addition, the SSN RR MAY be used in
   conjunction with the CREDITCARD RR to automate the collection of back
   taxes owed.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                          SOCIAL                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                          BIRTHDATE                            |
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                        Figure 3: SSN RDATA Format

   Where:

   SOCIAL
         The Social Security number of the user associated with the
         host, formatted as a 32-bit unsigned integer in network byte
         order.






Rye & Beverly                 Informational                     [Page 6]

RFC 8567              Customer Management over DNS          1 April 2019


   BIRTHDATE
         A 64-bit timestamp representing the number of seconds past the
         Unix Epoch that the individual described by this RR was born.
         Because the Unix Epoch predates the birth of all Internet
         users, this field provides a sufficient range of values for
         ISPs to describe their subscribers.  The 64-bit timestamp field
         is also "future proof", avoiding the Year 2038 problem and
         ensuring SSN RR applicability into the foreseeable future.

2.4.  The SSNPTR Resource Record

   The SSNPTR RR provides the reverse functionality of the SSN RR; it
   maps Social Security numbers to hostnames.  Every individual for whom
   an ISP provides service, not only primary account holders, SHOULD
   have an SSNPTR RR entry in the DNS.

   One benefit provided by the SSNPTR RR is the ability to conduct some
   population census functions remotely.  For example, consider a
   residential ISP with SSNPTR RRs for each of its subscribers.
   Performing SSNPTR queries for all of their SSNs returns the host at
   which those individuals are located, allowing for the trivial
   association of family members behind the same CPE device.  Further,
   these hosts can then be geolocated using an IP geolocation service or
   LOC RR [RFC1876], providing the ability to determine municipal
   populations and thereby inform decisions about appropriations and
   appropriate public policies.

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   /                            DNAME                              /
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                       Figure 4: SSNPTR RDATA Format

   Where:

   DNAME   A <domain-name> that points to a location in the domain name
           space.

3.  Related RR Types

   The practice of introducing new RR types to the DNS to support
   functionality that is either only tangentially related or wholly
   unrelated to name resolution is well established.






Rye & Beverly                 Informational                     [Page 7]

RFC 8567              Customer Management over DNS          1 April 2019


   [RFC2539] describes the Diffie-Hellman KEY RR type, which is used to
   conveniently store public key parameters for a domain.  The SRV RR
   type [RFC2782] combines name resolution with transport- and
   application-layer details, providing a "no-fuss" way for network
   administrators to advertise the location of specific services.  The
   Name Authority PTR (NAPTR) RR [RFC2915] recognized and corrected the
   lack of POSIX Extended Regular Expression support in the DNS,
   allowing for DNS-based automobile parts identification systems
   [RFC3402] among other use cases.  Having established the DNS's role
   in encryption in [RFC2539], the IPSECKEY RR resurrected the since-
   obsoleted ability to store public key parameters for the purposes of
   IPsec encryption [RFC4025].  [RFC4255] codified the natural inter-
   dependency between the Secure Shell (SSH) protocol [RFC4253] and DNS
   by providing the SSHFP RR type, which is used to verify the host key
   of a server.

   Extending the idea of distributing public key parameters via DNS,
   [RFC4398] introduced the CERT RR type to publish X.509 and PGP
   certificates.  [RFC4701] introduces the DHCID RR type to solve the
   problem of Fully Qualified Domain Name (FQDN) collisions when Dynamic
   Host Configuration Protocol (DHCP) clients make DNS updates after
   obtaining a DHCP lease.  The TLSA RR type [RFC6698] is used to
   associate a TLS certificate with a domain, leveraging DNSSEC as the
   binding, and the CAA RR type [RFC6844] specifies the Certificate
   Authority allowed to issue certificates for a domain.  The EUI48 and
   EUI64 RR types specified in [RFC7043] seek to eliminate boundaries in
   the TCP/IP model by creating, in essence, A records for MAC
   addresses.

4.  IANA Considerations

   This document has no IANA actions.

5.  Security Considerations

   DNSSEC [RFC4033] SHOULD be used in conjunction with the PASSWORD,
   CREDITCARD, SSN, and SSNPTR RR types to provide data integrity.
   Employing DNSSEC ensures that the data contained in these RRs
   originates from an authoritative source and is not, for example, an
   attacker attempting to provide invalid login credentials in response
   to a legitimate request for a PASSWORD RR.










Rye & Beverly                 Informational                     [Page 8]

RFC 8567              Customer Management over DNS          1 April 2019


6.  References

6.1.  Normative References

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.

6.2.  Informative References

   [CAMEL]    Hubert, B., "The DNS Camel", March 2018,
              <https://blog.powerdns.com/2018/03/22/
              the-dns-camel-or-the-rise-in-dns-complexit/>.

   [MIRAI]    Antonakakis, M., April, T., Bailey, M., Bernhard, M.,
              Bursztein, E., Cochran, J., Durumeric, Z., Halderman, J.,
              Invernizzi, L., Kallitsis, M., Kumar, D., Lever, C., Ma,
              Z., Mason, J., Menscher, D., Seaman, C., Sullivan, N.,
              Thomas, K., and Y. Zhou, "Understanding the Mirai Botnet",
              Proceedings of the 26th USENIX Security Symposium, August
              2017, <https://www.usenix.org/system/files/conference/
              usenixsecurity17/sec17-antonakakis.pdf>.

   [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
              STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
              <https://www.rfc-editor.org/info/rfc1034>.

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, DOI 10.17487/RFC1035,
              November 1987, <https://www.rfc-editor.org/info/rfc1035>.

   [RFC1876]  Davis, C., Vixie, P., Goodwin, T., and I. Dickinson, "A
              Means for Expressing Location Information in the Domain
              Name System", RFC 1876, DOI 10.17487/RFC1876, January
              1996, <https://www.rfc-editor.org/info/rfc1876>.

   [RFC2539]  Eastlake 3rd, D., "Storage of Diffie-Hellman Keys in the
              Domain Name System (DNS)", RFC 2539, DOI 10.17487/RFC2539,
              March 1999, <https://www.rfc-editor.org/info/rfc2539>.







Rye & Beverly                 Informational                     [Page 9]

RFC 8567              Customer Management over DNS          1 April 2019


   [RFC2782]  Gulbrandsen, A., Vixie, P., and L. Esibov, "A DNS RR for
              specifying the location of services (DNS SRV)", RFC 2782,
              DOI 10.17487/RFC2782, February 2000,
              <https://www.rfc-editor.org/info/rfc2782>.

   [RFC2915]  Mealling, M. and R. Daniel, "The Naming Authority Pointer
              (NAPTR) DNS Resource Record", RFC 2915,
              DOI 10.17487/RFC2915, September 2000,
              <https://www.rfc-editor.org/info/rfc2915>.

   [RFC3402]  Mealling, M., "Dynamic Delegation Discovery System (DDDS)
              Part Two: The Algorithm", RFC 3402, DOI 10.17487/RFC3402,
              October 2002, <https://www.rfc-editor.org/info/rfc3402>.

   [RFC4025]  Richardson, M., "A Method for Storing IPsec Keying
              Material in DNS", RFC 4025, DOI 10.17487/RFC4025, March
              2005, <https://www.rfc-editor.org/info/rfc4025>.

   [RFC4033]  Arends, R., Austein, R., Larson, M., Massey, D., and
              S. Rose, "DNS Security Introduction and Requirements",
              RFC 4033, DOI 10.17487/RFC4033, March 2005,
              <https://www.rfc-editor.org/info/rfc4033>.

   [RFC4253]  Ylonen, T. and C. Lonvick, Ed., "The Secure Shell (SSH)
              Transport Layer Protocol", RFC 4253, DOI 10.17487/RFC4253,
              January 2006, <https://www.rfc-editor.org/info/rfc4253>.

   [RFC4255]  Schlyter, J. and W. Griffin, "Using DNS to Securely
              Publish Secure Shell (SSH) Key Fingerprints", RFC 4255,
              DOI 10.17487/RFC4255, January 2006,
              <https://www.rfc-editor.org/info/rfc4255>.

   [RFC4398]  Josefsson, S., "Storing Certificates in the Domain Name
              System (DNS)", RFC 4398, DOI 10.17487/RFC4398, March 2006,
              <https://www.rfc-editor.org/info/rfc4398>.

   [RFC4701]  Stapp, M., Lemon, T., and A. Gustafsson, "A DNS Resource
              Record (RR) for Encoding Dynamic Host Configuration
              Protocol (DHCP) Information (DHCID RR)", RFC 4701,
              DOI 10.17487/RFC4701, October 2006,
              <https://www.rfc-editor.org/info/rfc4701>.

   [RFC6698]  Hoffman, P. and J. Schlyter, "The DNS-Based Authentication
              of Named Entities (DANE) Transport Layer Security (TLS)
              Protocol: TLSA", RFC 6698, DOI 10.17487/RFC6698, August
              2012, <https://www.rfc-editor.org/info/rfc6698>.





Rye & Beverly                 Informational                    [Page 10]

RFC 8567              Customer Management over DNS          1 April 2019


   [RFC6844]  Hallam-Baker, P. and R. Stradling, "DNS Certification
              Authority Authorization (CAA) Resource Record", RFC 6844,
              DOI 10.17487/RFC6844, January 2013,
              <https://www.rfc-editor.org/info/rfc6844>.

   [RFC7043]  Abley, J., "Resource Records for EUI-48 and EUI-64
              Addresses in the DNS", RFC 7043, DOI 10.17487/RFC7043,
              October 2013, <https://www.rfc-editor.org/info/rfc7043>.

   [SAMKNOWS]
              Crawford, S., "SamKnows: The Internet Measurement
              Standard", <https://samknows.com/>.

Acknowledgements

   We thank the US Federal Communications Commission for the repeal of
   network neutrality legislation, allowing ISPs to provide their
   customers with the level and type of service that ISPs have come to
   expect.

   We also thank Bert Hubert for identifying the dearth of DNS RR
   standards in his blog post and IETF lecture entitled The DNS Camel
   [CAMEL], so named for the drought of DNS-enabled functionality of the
   last several decades.

Authors' Addresses

   Erik C. Rye
   CMAND
   1 University Circle
   Monterey, CA  93943
   United States of America

   Email: rye@cmand.org


   Robert Beverly
   CMAND
   1 University Circle
   Monterey, CA  93943
   United States of America

   Email: rbeverly@cmand.org








Rye & Beverly                 Informational                    [Page 11]