Skip to main content

Network policy to use Network-designated DNS Resolvers
draft-reddy-add-enterprise-policy-00

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft whose latest revision state is "Expired".
Authors Tirumaleswar Reddy.K , Dan Wing , Kevin Smith
Last updated 2021-09-21
RFC stream (None)
Formats
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-reddy-add-enterprise-policy-00
ADD                                                             T. Reddy
Internet-Draft                                                    Akamai
Intended status: Standards Track                                 D. Wing
Expires: March 25, 2022                                           Citrix
                                                                K. Smith
                                                                Vodafone
                                                      September 21, 2021

         Network policy to use Network-designated DNS Resolvers
                  draft-reddy-add-enterprise-policy-00

Abstract

   This document specifies a mechanism to inform endpoints about any
   network policy mandating the use of network-designated DNS resolvers.

Status of This Memo

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

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on March 25, 2022.

Copyright Notice

   Copyright (c) 2021 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.  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.

Reddy, et al.            Expires March 25, 2022                 [Page 1]
Internet-Draft       Network policy to use Resolvers      September 2021

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  PvD NetworkDNSOnly and ErrorNetworkDNSOnly Keys . . . . . . .   4
   4.  Scope of NetworkDNSOnly Key . . . . . . . . . . . . . . . . .   5
   5.  An Example  . . . . . . . . . . . . . . . . . . . . . . . . .   7
   6.  Security Considerations . . . . . . . . . . . . . . . . . . .   7
   7.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   7
   8.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   7
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   7
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .   7
     9.2.  Informative References  . . . . . . . . . . . . . . . . .   8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  10

1.  Introduction

   Historically, an endpoint would utilize network-designated DNS
   servers upon joining a network (e.g., DHCP OFFER, IPv6 Router
   Advertisement).  While it has long been possible to configure
   endpoints to ignore the network's suggestions and use a (public) DNS
   server on the Internet, this was seldom used because some networks
   block UDP/53 (in order to enforce their own DNS policies).  Also,
   there has been an increase in the availability of "public resolvers"
   [RFC8499] which DNS clients may be pre-configured to use instead of
   the default network resolver for a variety of reasons (e.g., offer a
   good reachability, support an encrypted transport, provide a claimed
   privacy policy, (lack of) filtering).  With the advent of DoT and
   DoH, such network blocking is more difficult.  The network is unable
   to express its policy to use network-designated resolvers to the
   endpoints and the endpoint is unable to identify the reason why the
   public DNS server is not reachable.

   If DNS resolvers not signaled by the network (e.g., DNS-over-TLS
   (DoT) [RFC7858] or DNS-over-HTTPS (DoH) [RFC8484]) are used instead
   of using network-designated DNS servers, it can adversely impact
   Enterprise network-based security features.  Indeed, various network
   security services are provided by Enterprise networks to protect
   endpoints (e.g., laptops, printers, IoT devices) and to enforce
   enterprise-specific policies.  These policies may be necessary to
   protect employees, customers, or enterprise network.  It is out of
   the scope of this memo to characterize such policies nor assess that
   they achieve the claimed intent.  Nevertheless, network-designated
   DNS servers in place for these purposes act on DNS messages involving
   endpoints connected to the Enterprise network to enforce these
   policies.  Therefore, if an endpoint uses a DNS resolver not signaled
   by the network, the desired enterprise protection level and
   enforcement will be bypassed and thus nullified.

Reddy, et al.            Expires March 25, 2022                 [Page 2]
Internet-Draft       Network policy to use Resolvers      September 2021

   In order to act on DNS messages involving endpoints connected to an
   Enterprise network, network security services can be configured to
   block DoT traffic by dropping outgoing packets to destination port
   number 853.  Identifying DoH traffic is far more challenging than
   identifying DoT traffic.  Network security services may try to
   identify the well-known DoH resolvers by their domain name and DoH
   traffic can be blocked by dropping outgoing packets to these domains.
   However, DoH traffic can not be fully identified without acting as a
   TLS proxy.

   With the advent of DoT and DoH, the network is unable to express any
   such policy to the endpoints, and if the network is blocking
   alternative resolvers, endpoints are unable to identify the reason
   why their choice of public DNS resolver is not reachable.  This
   results in incompatibilities with the privacy profiles discussed in
   [RFC8310]:

   o  If an endpoint has enabled strict privacy profile (Section 5 of
      [RFC8310]), the endpoint cannot resolve DNS names.

   o  If an endpoint has enabled opportunistic privacy profile
      (Section 5 of [RFC8310]), the endpoint will either fallback to an
      encrypted connection without authenticating the DNS server
      signaled by the local network or fallback to clear text DNS, and
      cannot exchange encrypted DNS messages.

      The fallback adversely impacts security and privacy as internal
      attacks are possible within Enterprise networks.  For example, an
      internal attacker can modify the DNS responses to re-direct a
      client to malicious servers or pervasively monitor the DNS
      traffic.

   This document describes a mechanism for informing endpoints of
   network policy related to network-designated DNS servers, such as
   those DNS servers signaled using [I-D.ietf-add-dnr] and
   [I-D.ietf-add-ddr].

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119][RFC8174] when, and only when, they appear in all
   capitals, as shown here.

   This document makes use of the terms defined in [RFC8499].  The terms
   "Private DNS", "Global DNS" and "Split DNS" are defined in [RFC8499].

Reddy, et al.            Expires March 25, 2022                 [Page 3]
Internet-Draft       Network policy to use Resolvers      September 2021

   'Encrypted DNS' refers to a DNS protocol that provides an encrypted
   channel between a DNS client and server (e.g., DoT, DoH, or DoQ).

   The term "enterprise network" in this document extends to a wide
   variety of deployment scenarios.  For example, an "enterprise" can be
   a Small Office, Home Office or Corporation.  The clients that connect
   to a enterprise network can securely authenticate that network and
   the client is sure that it has connected to the network it was
   expecting.

3.  PvD NetworkDNSOnly and ErrorNetworkDNSOnly Keys

   Provisioning Domains (PvDs) are defined in [RFC7556] as sets of
   network configuration information that clients can use to access
   networks, including rules for DNS resolution and proxy configuration.
   [RFC8801] defines a mechanism for discovering multiple Explicit PvDs
   on a single network and their Additional Information by means of an
   HTTP-over-TLS query using a URI derived from the PvD ID.  This set of
   additional configuration information is referred to as a Web
   Provisioning Domain (Web PvD).

   This document defines two PvD Key:

   The NetworkDNSOnly PvD Key:  which determines if network will block,
      or attempt to block, DNS queries sent to DNS servers that were not
      signaled by the network.  This key has the value True or False
      (case insensitive).

   The ErrorNetworkDNSOnly PvD Key:  which contains a human-friendly
      description of the reason for the NetworkDNSOnly block.  This key
      is only present if NetworkDNSOnly is True.

   Some enterprise networks require clients to query the network-
   designated DNS servers, it sets the PvD NetworkDNSOnly key to True,
   otherwise sets NetworkDNSOnly to False.  If NetworkDNSOnly is set to
   True, it implies the network will block, or attempt to block, DNS
   queries sent to DNS servers that were not signaled by the network.
   If NetworkDNSOnly is True, the ErrorNetworkDNSOnly key MUST contain a
   human-friendly description for this block.  This information is
   intended for human consumption (not automated parsing).  The
   ErrorNetworkDNSOnly key is useful when the client does not use DNS
   resolution by the network-designated DNS server to reach the DNS
   servers not signaled by the network.  For example, the client can be
   pre-configured with both the domain name and IP addresses of the DNS
   server not signaled by the network (Section 7.1 in [RFC8310]) or the
   client can be pre-configured with the IP address of the resolver, and
   it uses IP address in the certificate as identifier (see [RFC8738]).
   In this case, the extended error code "Blocked" defined in [RFC8914]

Reddy, et al.            Expires March 25, 2022                 [Page 4]
Internet-Draft       Network policy to use Resolvers      September 2021

   cannot be returned to the client to provide additional information
   about the cause for the block.  Further, the ErrorNetworkDNSOnly key
   is useful when the network security service fails to block access to
   the DNS server not signaled by the network but successfully filters
   traffic from the endpoint to IP addresses not conveyed to the
   endpoint as part of DNS resolution by the network-designated DNS
   server.

   The NetworkDNSOnly set to True is an internal security policy
   expression by the operator of the network but is not a policy
   prescription to the endpoints to disable its use of its other
   configured DNS servers; that is, the endpoint can ignore
   NetworkDNSOnly set to True.  If joining an un-trusted network (e.g.,
   coffeeshop, hotel, airport network), a True value of NetworkDNSOnly
   MUST be ignored.  The mechanism the client uses to determine 'trusted
   network' to assist the user MUST involve authenticated identity of
   the network (not merely matching SSID in the case of WiFi), such as
   802.1X or confirming the network-designated encrypted resolver name
   is pre-configured in the Operating System and TLS handshake with it
   succeeds.  For example, the client can determine "Open" (unencrypted)
   wireless networks are untrusted networks, notify the user that using
   a shared and public Pre-Shared Key (PSK) for wireless authentication
   is a untrusted network.  If the pre-shared-key is the same for all
   clients that connect to the same WLAN, the shared key will be
   available to all nodes, including attackers, so it is possible to
   mount an active on-path attack (e.g., [Evil-Twin], [Krack],
   [Dragonblood]).  For example, coffee shops and air ports use PSK and
   are unwilling to perform complex configuration on their networks.  In
   addition, customers are generally unwilling to do complicated
   provisioning on their devices just to obtain free Wi-Fi.  This type
   of networks can be tagged as "untrusted networks" with minimal human
   intervention.  In such cases the endpoint MAY choose to use an
   alternate network (e.g., cellular) to resolve the global domain
   names.

4.  Scope of NetworkDNSOnly Key

   If a device is managed by an enterprise's IT department, the device
   can be configured to use a specific encrypted DNS server.  This
   configuration may be manual or rely upon whatever deployed device
   management tool in an enterprise network.  For example, customizing
   Firefox using Group Policy to use the Enterprise DoH server is
   discussed in [Firefox-Policy] for Windows and MacOS, and setting
   Chrome policies is discussed in [Chrome-Policy] and [Chrome-DoH].

   If mobile device management (MDM) (e.g., [MDM-Apple]) secures a
   device, MDM can configure OS/browser with a specific encrypted DNS
   server.  If an endpoint is on-boarded, for example, using Over-The-

Reddy, et al.            Expires March 25, 2022                 [Page 5]
Internet-Draft       Network policy to use Resolvers      September 2021

   Air (OTA) enrollment [OTA] to provision the device with a certificate
   and configuration profile, the configuration profile can include the
   authentication domain name (ADN) of the encrypted DNS server.  The
   OS/Browser can use the configuration profile to use a specific
   encrypted DNS server.  In this case, MDM is not installed on the
   device.

   Provisioning IT-managed devices, BYOD devices with MDM or
   configuration profile with network-designated DNS server is outside
   the scope of this document.

   Typically, Enterprise networks do not assume that all devices in
   their network are managed by the IT team or MDM, especially in the
   quite common BYOD scenario.  The endpoint can use the discovered
   network-designated DNS server to only access DNS names for which the
   Enterprise network claims authority and use another public DNS server
   for global domains or use the discovered network-designated DNS
   server to access both private domains and global domains.

   The scope of NetworkDNSOnly key is restricted to unmanaged BYOD
   devices without a configuration profile on explicitly trusted
   networks.  In this use case, the user has authorized the client to
   override local DNS settings for a specific network.  It is similar to
   the way users explicitly disable VPN connection in specific networks
   and VPN connection is enabled by default in other networks for
   privacy.  The unmanaged BYOD devices use mutual authentication of the
   client and the enterprise network.  The client is typically
   authenticated with their user credentials (e.g., username and
   password).  The network is typically authenticated with a certificate
   (e.g., PEAP-MSCHAPv2 [PEAP]) or a mutually-authenticated key exchange
   which is well-defended from offline attacks (e.g., EAP-pwd [RFC8146],
   EAP-PSK [RFC4764]).  Importantly, WPA-PSK and WPA2-PSK are not well-
   defended from offline attacks and MUST NOT be used in conjunction
   with NetworkDNSOnly set to True.

   Note:   Many users have privacy and personal data sovereignty
      concerns with employers installing MDM on their personal devices;
      they are concerned that admin can glean personal information and
      could control how they use their devices.  When users do not
      install MDM on their devices, IT admins do not get visibility into
      the security posture of those devices.  To overcome this problem,
      a host agent can cryptographically attest the security status
      associated with device, such as minimum pass code length,
      biometric login enabled, OS version etc.  This approach is fast
      gaining traction especially with the advent of closed OS like
      Windows 10 in S mode [win10s] or Chromebook [Chromebook], where
      applications are sandboxed (e.g., ransomware attack is not
      possible) and applications can only be installed via the OS store.

Reddy, et al.            Expires March 25, 2022                 [Page 6]
Internet-Draft       Network policy to use Resolvers      September 2021

5.  An Example

   The following example shows how the JSON keys defined in this
   document can be used:

      {
        "identifier": "cafe.example.com.",
        "expires": "2020-05-23T06:00:00Z",
        "prefixes": ["2001:db8:1::/48", "2001:db8:4::/48"],
        "NetworkDNSOnly": True,
        "ErrorNetworkDNSOnly": "example.com malware blocking service"
      }

   The JSON keys "identifier", "expires", and "prefixes" are defined in
   [RFC8801].

6.  Security Considerations

   The content of NetworkDNSOnly and ErrorSplitDNSBlocked may be passed
   to another (DNS) program for processing.  As with any network input,
   the content SHOULD be considered untrusted and handled accordingly.
   The security considerations discussed in Section 3 and Section 4 need
   to be considered to restrict the scope of NetworkDNSOnly and
   ErrorSplitDNSBlocked PvD Keys to explicitly trusted networks.  The
   NetworkDNSOnly and ErrorSplitDNSBlocked PvD Keys assigned by an
   anonymous or unknown network (e.g., coffee shops) MUST be ignored by
   the client.

7.  IANA Considerations

   IANA is requested to add NetworkDNSOnly and ErrorSplitDNSBlocked PvD
   Keys to the Additional Information PvD Keys registry
   (https://www.iana.org/assignments/pvds/pvds.xhtml).

8.  Acknowledgements

   Thanks to Mohamed Boucadair, Jim Reid, Ben Schwartz, Tommy Pauly,
   Paul Vixie, Ben Schwartz, and Vinny Parla for the discussion and
   comments.

9.  References

9.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>.

Reddy, et al.            Expires March 25, 2022                 [Page 7]
Internet-Draft       Network policy to use Resolvers      September 2021

   [RFC7858]  Hu, Z., Zhu, L., Heidemann, J., Mankin, A., Wessels, D.,
              and P. Hoffman, "Specification for DNS over Transport
              Layer Security (TLS)", RFC 7858, DOI 10.17487/RFC7858, May
              2016, <https://www.rfc-editor.org/info/rfc7858>.

   [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>.

   [RFC8484]  Hoffman, P. and P. McManus, "DNS Queries over HTTPS
              (DoH)", RFC 8484, DOI 10.17487/RFC8484, October 2018,
              <https://www.rfc-editor.org/info/rfc8484>.

   [RFC8801]  Pfister, P., Vyncke, E., Pauly, T., Schinazi, D., and W.
              Shao, "Discovering Provisioning Domain Names and Data",
              RFC 8801, DOI 10.17487/RFC8801, July 2020,
              <https://www.rfc-editor.org/info/rfc8801>.

9.2.  Informative References

   [Chrome-DoH]
              The Unicode Consortium, "Chrome DNS over HTTPS (aka DoH)",
              <https://www.chromium.org/developers/dns-over-https>.

   [Chrome-Policy]
              The Unicode Consortium, "Chrome policies for users or
              browsers", <https://support.google.com/chrome/a/
              answer/2657289?hl=en>.

   [Chromebook]
              Microsoft, "Chromebook security",
              <https://support.google.com/chromebook/
              answer/3438631?hl=en>.

   [Dragonblood]
              The Unicode Consortium, "Dragonblood: Analyzing the
              Dragonfly Handshake of WPA3 and EAP-pwd",
              <https://papers.mathyvanhoef.com/dragonblood.pdf>.

   [Evil-Twin]
              The Unicode Consortium, "Evil twin (wireless networks)",
              <https://en.wikipedia.org/wiki/
              Evil_twin_(wireless_networks)>.

   [Firefox-Policy]
              "Policy templates for Firefox",
              <https://github.com/mozilla/policy-templates/blob/master/
              README.md#dnsoverhttps>.

Reddy, et al.            Expires March 25, 2022                 [Page 8]
Internet-Draft       Network policy to use Resolvers      September 2021

   [I-D.ietf-add-ddr]
              Pauly, T., Kinnear, E., Wood, C. A., McManus, P., and T.
              Jensen, "Discovery of Designated Resolvers", draft-ietf-
              add-ddr-02 (work in progress), July 2021.

   [I-D.ietf-add-dnr]
              Boucadair, M., Reddy, T., Wing, D., Cook, N., and T.
              Jensen, "DHCP and Router Advertisement Options for the
              Discovery of Network-designated Resolvers (DNR)", draft-
              ietf-add-dnr-02 (work in progress), May 2021.

   [Krack]    The Unicode Consortium, "Key Reinstallation Attacks",
              2017, <https://www.krackattacks.com/>.

   [MDM-Apple]
              Apple, "Mobile Device Management",
              <https://developer.apple.com/documentation/
              devicemanagement>.

   [OTA]      Apple, "Over-the-Air Profile Delivery Concepts", <https://
              developer.apple.com/library/archive/documentation/Networki
              ngInternet/Conceptual/iPhoneOTAConfiguration/OTASecurity/
              OTASecurity.html>.

   [PEAP]     Microsoft, "[MS-PEAP]: Protected Extensible Authentication
              Protocol (PEAP)", <https://docs.microsoft.com/en-
              us/openspecs/windows_protocols/ms-peap/5308642b-90c9-4cc4-
              beec-fb367325c0f9>.

   [RFC4764]  Bersani, F. and H. Tschofenig, "The EAP-PSK Protocol: A
              Pre-Shared Key Extensible Authentication Protocol (EAP)
              Method", RFC 4764, DOI 10.17487/RFC4764, January 2007,
              <https://www.rfc-editor.org/info/rfc4764>.

   [RFC7556]  Anipko, D., Ed., "Multiple Provisioning Domain
              Architecture", RFC 7556, DOI 10.17487/RFC7556, June 2015,
              <https://www.rfc-editor.org/info/rfc7556>.

   [RFC7626]  Bortzmeyer, S., "DNS Privacy Considerations", RFC 7626,
              DOI 10.17487/RFC7626, August 2015,
              <https://www.rfc-editor.org/info/rfc7626>.

   [RFC8146]  Harkins, D., "Adding Support for Salted Password Databases
              to EAP-pwd", RFC 8146, DOI 10.17487/RFC8146, April 2017,
              <https://www.rfc-editor.org/info/rfc8146>.

Reddy, et al.            Expires March 25, 2022                 [Page 9]
Internet-Draft       Network policy to use Resolvers      September 2021

   [RFC8310]  Dickinson, S., Gillmor, D., and T. Reddy, "Usage Profiles
              for DNS over TLS and DNS over DTLS", RFC 8310,
              DOI 10.17487/RFC8310, March 2018,
              <https://www.rfc-editor.org/info/rfc8310>.

   [RFC8499]  Hoffman, P., Sullivan, A., and K. Fujiwara, "DNS
              Terminology", BCP 219, RFC 8499, DOI 10.17487/RFC8499,
              January 2019, <https://www.rfc-editor.org/info/rfc8499>.

   [RFC8738]  Shoemaker, R., "Automated Certificate Management
              Environment (ACME) IP Identifier Validation Extension",
              RFC 8738, DOI 10.17487/RFC8738, February 2020,
              <https://www.rfc-editor.org/info/rfc8738>.

   [RFC8914]  Kumari, W., Hunt, E., Arends, R., Hardaker, W., and D.
              Lawrence, "Extended DNS Errors", RFC 8914,
              DOI 10.17487/RFC8914, October 2020,
              <https://www.rfc-editor.org/info/rfc8914>.

   [win10s]   Microsoft, "Windows 10 in S mode",
              <https://www.microsoft.com/en-us/windows/s-mode>.

Authors' Addresses

   Tirumaleswar Reddy
   Akamai
   Embassy Golf Link Business Park
   Bangalore, Karnataka  560071
   India

   Email: kondtir@gmail.com

   Dan Wing
   Citrix Systems, Inc.
   4988 Great America Pkwy
   Santa Clara, CA  95054
   USA

   Email: danwing@gmail.com

Reddy, et al.            Expires March 25, 2022                [Page 10]
Internet-Draft       Network policy to use Resolvers      September 2021

   Kevin Smith
   Vodafone Group
   One Kingdom Street
   London
   UK

   Email: kevin.smith@vodafone.com

Reddy, et al.            Expires March 25, 2022                [Page 11]