Network Working Group K. Fujiwara Internet-Draft JPRS Intended status: Best Current Practice July 04, 2019 Expires: January 5, 2020 Avoid IP fragmentation in DNS draft-fujiwara-dnsop-avoid-fragmentation-00 Abstract Path MTU discovery is vulnerable and IP fragmentation may cause protocol weakness. Currently, DNS is said to be the biggest user of IP fragmentation. However, it is possible to avoid IP fragmentation in DNS because TCP transport and truncation work well. This document proposes to avoid IP fragmentation in DNS. 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 January 5, 2020. 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. 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. Fujiwara Expires January 5, 2020 [Page 1]
Internet-Draft avoid-fragmentation July 2019 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2 3. Proposal to avoid IP fragmentation in DNS . . . . . . . . . . 3 4. Incremental deployment . . . . . . . . . . . . . . . . . . . 3 5. Considerations . . . . . . . . . . . . . . . . . . . . . . . 3 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 7. Security Considerations . . . . . . . . . . . . . . . . . . . 4 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 8.1. Normative References . . . . . . . . . . . . . . . . . . 4 8.2. Informative References . . . . . . . . . . . . . . . . . 5 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 5 1. Introduction DNS has EDNS0 [RFC6891] mechanism. It enables that DNS server can send large size response using UDP. Now EDNS0 is widely deployed, then DNS is said to be the biggest user of IP fragmentation. However, "Fragmentation Considered Poisonous" [Herzberg2013] proposed effective off-path DNS cache poisoning attack vectors using IP fragmentation. "IP fragmentation attack on DNS" [Hlavacek2013] and "Domain Validation++ For MitM-Resilient PKI" [Brandt2018] proposed that off-path attackers can intervene in path MTU discovery [RFC1191] to perform intentionally fragmented responses from authoritative servers. [RFC7739] stated security implications of predictable fragment identification values. As a result, we cannot trust fragmented UDP packets and path MTU discovery. By the way, TCP is considered resistant against IP fragmentation attacks because TCP has sequence number and acknowledgement number in each sequence. This document proposes to avoid IP fragmentation in DNS. 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 BCP14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here. Many of the specialized terms used in this document are defined in DNS Terminology [RFC8499]. Fujiwara Expires January 5, 2020 [Page 2]
Internet-Draft avoid-fragmentation July 2019 3. Proposal to avoid IP fragmentation in DNS The methods to avoid IP fragmentation in DNS are described below: o Full-service resolvers SHOULD set EDNS0 requestor's UDP payload size to 1220. (defined in [RFC4035] as minimum payload size) o Authoritative servers and full-service resolvers SHOULD choose EDNS0 responder's maximum payload size to 1220 (defined in [RFC4035] as minimum payload size) o Special consideration in small MTU network: If authoritative servers and full-service resolvers are located across the link with the MTU value less than 1280, choose EDNS0 requestor's and responder's maximum payload size fit to the smallest link MTU value. (the smallest MTU value minus IPv4 header size and UDP header size.) o Full-service resolvers MAY drop fragmented UDP responses derived from DNS before IP assembly. (It is a countermeasure against DNS cache poisoning attacks using IP fragmentation.) o And more, authoritative servers MAY send DNS responses with IP_DONTFRAG / IPV6_DONTFRAG options. When responses exceed specified EDNS0 size 1220 (or smaller value), servers return truncated responses, and clients retry by TCP. [RFC1035] 4. Incremental deployment The proposed method supports incremental deployment. When a full-service resolver implements the proposed method, the full-service resolver becomes to avoid IP fragmentation in DNS. When an authoritative server implements the proposed method, the authoritative server becomes to avoid IP fragmentation in DNS. 5. Considerations In past researches ([Fujiwara2018] / dns-operations mailing list discussions), there are some authoritative servers that ignore EDNS0 requestor's UDP payload size, and return large UDP responses. And it is known that there are some authoritative servers that do not support TCP transport. Fujiwara Expires January 5, 2020 [Page 3]
Internet-Draft avoid-fragmentation July 2019 6. IANA Considerations This document has no IANA actions. 7. Security Considerations 8. References 8.1. Normative References [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>. [RFC1191] Mogul, J. and S. Deering, "Path MTU discovery", RFC 1191, DOI 10.17487/RFC1191, November 1990, <https://www.rfc-editor.org/info/rfc1191>. [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>. [RFC4035] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, "Protocol Modifications for the DNS Security Extensions", RFC 4035, DOI 10.17487/RFC4035, March 2005, <https://www.rfc-editor.org/info/rfc4035>. [RFC6891] Damas, J., Graff, M., and P. Vixie, "Extension Mechanisms for DNS (EDNS(0))", STD 75, RFC 6891, DOI 10.17487/RFC6891, April 2013, <https://www.rfc-editor.org/info/rfc6891>. [RFC7739] Gont, F., "Security Implications of Predictable Fragment Identification Values", RFC 7739, DOI 10.17487/RFC7739, February 2016, <https://www.rfc-editor.org/info/rfc7739>. [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>. [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>. Fujiwara Expires January 5, 2020 [Page 4]
Internet-Draft avoid-fragmentation July 2019 8.2. Informative References [Brandt2018] Brandt, M., Dai, T., Klein, A., Shulman, H., and M. Waidner, "Domain Validation++ For MitM-Resilient PKI", Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security , 2018. [Fujiwara2018] Fujiwara, K., "Measures against cache poisoning attacks using IP fragmentation in DNS", OARC 30 Workshop , 2019. [Herzberg2013] Herzberg, A. and H. Shulman, "Fragmentation Considered Poisonous", IEEE Conference on Communications and Network Security , 2013. [Hlavacek2013] Hlavacek, T., "IP fragmentation attack on DNS", RIPE 67 Meeting , 2013, <https://ripe67.ripe.net/ presentations/240-ipfragattack.pdf>. Author's Address Kazunori Fujiwara Japan Registry Services Co., Ltd. Chiyoda First Bldg. East 13F, 3-8-1 Nishi-Kanda Chiyoda-ku, Tokyo 101-0065 Japan Phone: +81 3 5215 8451 Email: fujiwara@jprs.co.jp Fujiwara Expires January 5, 2020 [Page 5]