dprive H. Zhang
Internet-Draft P. Aras
Intended status: Standards Track Salesforce
Expires: September 12, 2019 W. Toorop
NLnet Labs
S. Dickinson
Sinodun IT
A. Mankin
Salesforce
March 11, 2019
DNS Zone Transfer over TLS
draft-hzpa-dprive-xfr-over-tls-01
Abstract
DNS zone transfers are transmitted in clear text, which gives
attackers the opportunity to collect the content of a zone by
eavesdropping on network connections. The DNS Transaction Signature
(TSIG) mechanism is specified to restrict direct zone transfer to
authorized clients only, but it does not add confidentiality. This
document specifies use of DNS-over-TLS to prevent zone contents
collection via passive monitoring of zone transfers.
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 http://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 September 12, 2019.
Copyright Notice
Copyright (c) 2019 IETF Trust and the persons identified as the
document authors. All rights reserved.
Zhang, et al. Expires September 12, 2019 [Page 1]
Internet-Draft XFR over TLS March 2019
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Zone Transfer Confidentiality Overview . . . . . . . . . . . 4
4. Zone Transfer with DoT - Authentication . . . . . . . . . . . 4
4.1. TSIG . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4.2. Mutual TLS . . . . . . . . . . . . . . . . . . . . . . . 4
5. Session Establishment and Closing . . . . . . . . . . . . . . 4
5.1. AXFR Sessions . . . . . . . . . . . . . . . . . . . . . . 4
5.2. IXFR Sessions . . . . . . . . . . . . . . . . . . . . . . 4
5.3. Policies for Both AXFR and IXFR . . . . . . . . . . . . . 5
5.4. Next Steps . . . . . . . . . . . . . . . . . . . . . . . 5
6. Performance Considerations . . . . . . . . . . . . . . . . . 5
7. Implementation Considerations . . . . . . . . . . . . . . . . 5
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 5
9. Security Considerations . . . . . . . . . . . . . . . . . . . 5
10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 6
11. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 6
12. Changelog . . . . . . . . . . . . . . . . . . . . . . . . . . 6
13. Normative References . . . . . . . . . . . . . . . . . . . . 6
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
DNS has a number of privacy vulnerabilities, as discussed in detail
in [I-D.bortzmeyer-dprive-rfc7626-bis]. Stub client to recursive
resolver query privacy has received the most attention to date.
There are now standards track documents for three encryption
capabilities for stub to recursive queries and more work going on to
guide deployment of specifically DNS-over-TLS (DoT) [RFC7858] and
DNS-over-HTTPS (DoH) [RFC8484].
[I-D.bortzmeyer-dprive-rfc7626-bis] established that stub client DNS
query transactions are not public and needed protection, but on zone
transfer [RFC1995] [RFC5936] it says only:
Zhang, et al. Expires September 12, 2019 [Page 2]
Internet-Draft XFR over TLS March 2019
"Privacy risks for the holder of a zone (the risk that someone gets
the data) are discussed in [RFC5936] and [RFC5155]."
In what way is exposing the full contents of a zone a privacy risk?
The contents of the zone could include information such as names of
persons used in names of hosts. Best practice is not to use personal
information for domain names, but many such domain names exist.
There may also be regulatory, policy or other reasons why the zone
contents in full must be treated as private.
Neither of the RFCs mentioned in [I-D.bortzmeyer-dprive-rfc7626-bis]
contemplates the risk that someone gets the data through
eavesdropping on network connections, only via enumeration or
unauthorised transfer as described in the following paragraphs.
[RFC5155] specifies NSEC3 to prevent zone enumeration, which is when
queries for the authenticated denial of existences records of DNSSEC
allow a client to walk through the entire zone. Note that the need
for this protection also motivates NSEC5 [I-D.vcelak-nsec5]; zone
walking is now possible with NSEC3 due to crypto-breaking advances,
and NSEC5 is a response to this problem.
[RFC5155] does not address data obtained outside zone enumeration
(nor does [I-D.vcelak-nsec5]). Preventing eavesdropping of zone
transfers (this draft) is orthogonal to preventing zone enumeration,
though they aim to protect the same information.
[RFC5936] specifies using TSIG [RFC2845] for authorization of the
clients of a zone transfer and for data integrity, but does not
express any need for confidentiality, and TSIG does not offer
encryption. Some operators use SSH tunnelling or IPSec to encrypt
the transfer data.
Because the AXFR zone transfer is typically carried out over TCP from
authoritative DNS protocol implementations, encrypting AXFR using
DNS-over-TLS [RFC7858] seems like a simple step forward. This
document specifies how to use DoT to prevent zone collection from
zone transfers, including discussion of approaches for IXFR, which
uses UDP or TCP.
Next steps: Work on open questions at DNS table during IETF 104
Hackathon, expand this draft, then solicit discussion on the DPRIVE
mailing list.
Zhang, et al. Expires September 12, 2019 [Page 3]
Internet-Draft XFR over TLS March 2019
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] and [RFC8174] when, and only when, they appear in all
capitals, as shown here.
Privacy terminology is as described in Section 3 of [RFC6973].
DNS terminology is as described in [RFC8499].
DoT: DNS-over-TLS as specified in [RFC7858]
DoH: DNS-over-HTTPS as specified in [RFC8484]
3. Zone Transfer Confidentiality Overview
4. Zone Transfer with DoT - Authentication
4.1. TSIG
4.2. Mutual TLS
5. Session Establishment and Closing
5.1. AXFR Sessions
The connection flow in AXFR is a NOTIFY from the primary server to
the secondary server, and then an AXFR request from the secondary to
the primary after which the data flows.
The connection for AXFR via DoT SHOULD be established using port 853,
as specified in [RFC7858]. If there is no response on port 853, the
connection MAY be attempted using port 443 in case the server offers
DoT service on this port.
TODO: diagram of connection flow for AXFR, without and with DoT
5.2. IXFR Sessions
[RFC1995] specifies that Incremental Transfer may use UDP if the
entire IXFR response can be contained in a single DNS packet,
otherwise, TCP is used.
QUESTION: Given this, how should confidentiality of IXFR be provided?
To discuss:
Zhang, et al. Expires September 12, 2019 [Page 4]
Internet-Draft XFR over TLS March 2019
o should IXFR have a mode in which TCP is mandatory?
o should IXFR have a mode in which TLS is mandatory?
o In workloads where there are frequent IXFRs, is the persistent
connection mode that TCP-Mode would enable (as well as the
retries) a benefit?
5.3. Policies for Both AXFR and IXFR
In order to assure the confidentiality of the zone information,
entire group of servers involved in XFR (the primary and all
secondaries) MUST have a consistent policy of requiring
confidentiality. If any do not, this is a weak link for attackers to
exploit. How to do this is TBD.
Additionally, the entire group of servers involved in XFR (the
primary and all secondaries) MUST have a consistent policy of
requiring Strict or Opportunistic DoT [RFC8310]. How to do this is
TBD.
5.4. Next Steps
Upcoming IETF Hackathon experiments will feed into this Session
Establishment and Closing section, as much about this needs
exploration as well as discussion on the mailing list.
6. Performance Considerations
The details in [RFC7858] and [RFC8310] about e.g. using persistent
connections and TLS Session Resumption [RFC5077] are fully applicable
to DNS Zone Transfer over DoT as well.
7. Implementation Considerations
TBA
8. IANA Considerations
TBD
9. Security Considerations
This document specifies a security measure against a DNS risk: the
risk that an attacker collects entire DNS zones through eavesdropping
on clear text DNS zone transfers. It presents a new Security
Consideration for DNS. Some questions to discuss are: should DoT in
Zhang, et al. Expires September 12, 2019 [Page 5]
Internet-Draft XFR over TLS March 2019
this new case be required to use only TLS 1.3 and higher to avoid
residual exposure? How should padding be used (if it should)?
10. Acknowledgements
The authors thank Benno Overeinder, Shumon Huque and Tim Wicinski for
review and discussions.
11. Contributors
The following contributed significantly to the document:
12. Changelog
draft-hzpa-dprive-xfr-over-tls-01
o Editorial changes, updates to references.
draft-hzpa-dprive-xfr-over-tls-00
o Initial commit
13. Normative References
[I-D.bortzmeyer-dprive-rfc7626-bis]
Bortzmeyer, S. and S. Dickinson, "DNS Privacy
Considerations", draft-bortzmeyer-dprive-rfc7626-bis-02
(work in progress), January 2019.
[I-D.vcelak-nsec5]
Vcelak, J., Goldberg, S., Papadopoulos, D., Huque, S., and
D. Lawrence, "NSEC5, DNSSEC Authenticated Denial of
Existence", draft-vcelak-nsec5-08 (work in progress),
December 2018.
[RFC1995] Ohta, M., "Incremental Zone Transfer in DNS", RFC 1995,
DOI 10.17487/RFC1995, August 1996, <https://www.rfc-
editor.org/info/rfc1995>.
[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>.
[RFC2845] Vixie, P., Gudmundsson, O., Eastlake 3rd, D., and B.
Wellington, "Secret Key Transaction Authentication for DNS
(TSIG)", RFC 2845, DOI 10.17487/RFC2845, May 2000,
<https://www.rfc-editor.org/info/rfc2845>.
Zhang, et al. Expires September 12, 2019 [Page 6]
Internet-Draft XFR over TLS March 2019
[RFC5077] Salowey, J., Zhou, H., Eronen, P., and H. Tschofenig,
"Transport Layer Security (TLS) Session Resumption without
Server-Side State", RFC 5077, DOI 10.17487/RFC5077,
January 2008, <https://www.rfc-editor.org/info/rfc5077>.
[RFC5155] Laurie, B., Sisson, G., Arends, R., and D. Blacka, "DNS
Security (DNSSEC) Hashed Authenticated Denial of
Existence", RFC 5155, DOI 10.17487/RFC5155, March 2008,
<https://www.rfc-editor.org/info/rfc5155>.
[RFC5936] Lewis, E. and A. Hoenes, Ed., "DNS Zone Transfer Protocol
(AXFR)", RFC 5936, DOI 10.17487/RFC5936, June 2010,
<https://www.rfc-editor.org/info/rfc5936>.
[RFC6973] Cooper, A., Tschofenig, H., Aboba, B., Peterson, J.,
Morris, J., Hansen, M., and R. Smith, "Privacy
Considerations for Internet Protocols", RFC 6973,
DOI 10.17487/RFC6973, July 2013, <https://www.rfc-
editor.org/info/rfc6973>.
[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>.
[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>.
[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>.
[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>.
Authors' Addresses
Zhang, et al. Expires September 12, 2019 [Page 7]
Internet-Draft XFR over TLS March 2019
Han Zhang
Salesforce
San Francisco, CA
United States
Email: hzhang@salesforce.com
Pallavi Aras
Salesforce
Herndon, VA
United States
Email: paras@salesforce.com
Willem Toorop
NLnet Labs
Science Park 400
Amsterdam 1098 XH
The Netherlands
Email: willem@nlnetlabs.nl
Sara Dickinson
Sinodun IT
Magdalen Centre
Oxford Science Park
Oxford OX4 4GA
United Kingdom
Email: sara@sinodun.com
Allison Mankin
Salesforce
Herndon, VA
United States
Email: allison.mankin@gmail.com
Zhang, et al. Expires September 12, 2019 [Page 8]