[Docs] [txt|pdf|xml|html] [Tracker] [Email] [Nits]



Internet Engineering Task Force                                 H. Zhang
Internet-Draft                                                    P. Zuo
Intended status: Informational                                    Y. Sun
Expires: January 27, 2021                                        M. Yuan
                                                                   CNNIC
                                                           July 26, 2020


                        DNS DOTS considerations
                 draft-zhang-dots-dns-considerations-00

Abstract

   DDoS Open Threat Signaling(DOTS) described in [RFC8612] is a
   standardized method to coordinate a real-time response among involved
   operators.  This document focus on the considerations regard to the
   use of DOTS to mitigate DNS-Related DDoS attacks.

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 27, 2021.

Copyright Notice

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




Zhang, et al.           Expires January 27, 2021                [Page 1]


Internet-Draft           DNS DOTS considerations               July 2020


   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

1.  Introduction

   Domain Name System(DNS) is one of the most foundational and essential
   services on the Internet, the security and robustness of DNS are of
   great significance.  However, the stable operation of DNS has been
   threatened by Distributate Denial of Service(DDoS) for quiet a long
   time.  In addition, DNS is often used to implement amplification
   attacks, reflection attacks, etc.

   DDoS Open Threat Signaling(DOTS) described in [RFC8612] is a
   standardized method to coordinate a real-time response among involved
   operators.  This document focus on the considerations regard to the
   use of DOTS to mitigate DNS-Related DDoS attacks.

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 uses the terminologies defined in [RFC8612] and [I-
   D.ietf-dots-use-cases].

3.  DNS DOTS considerations

3.1.  DOTS Server

   DOTS Server described in RFC 8612 is responsible for handling
   messages from DOTS client.  In order to provide more effective and
   comprehensive mitigation, the DOTS server should have the ability to
   filter DNS messages based on different transfer protocols.  At the
   time of this writing, the majority of DNS traffic is transmitted in
   plain text via UDP.  As some new DNS protocols like DoT[RFC 7858],
   DoH[RFC8484] are introduced, encrypted DNS traffic transmitted via
   TLS and HTTPS is growing.  As the normal deep packet inspection
   method is not easy to detect encrypted traffic, port filtering or
   deep learning methods can be considered to identify abnormal traffic
   in the case of DoT or DoH.








Zhang, et al.           Expires January 27, 2021                [Page 2]


Internet-Draft           DNS DOTS considerations               July 2020


3.2.  Filter

   Filters described in RFC 8612 should be extended to filter DNS
   traffic based on DNS message characteristics.  For example, DNS
   packets can be filtered by domain name queried.  Based on the
   telemetry of the attack, filter can drop or transmit DNS packages
   according to specific domain names or other DNS characteristics.  In
   addition, filter should support bidirectional filtering of DNS
   traffic.  For example, for the use of DNS to implement amplification
   attacks, the filter can drop the DNS response from the DNS server
   side.

3.3.  Data channel

   Data channel described in RFC 8612 should support the transmission of
   blacklists and whitelists used in DNS traffic filtering and DNS
   service status between DOTS client and DOTS server.  The list should
   include the DNS packet characteristics such as IP, port, domain name,
   query type, etc.  For scenarios where the blacklist and whitelist
   have huge size and may cost long time to transfer, regular and
   incremental update should be considered to ensure timely delivery of
   information.

3.4.  Traffic Management

   DNS server should deploy DNS traffic management module to detect DDoS
   traffic.  When DDoS attack happens, traffic management module will
   notify DOTS client to request attack coordination with DOTS server.

3.4.1.  threshold setting

   DOTS Client should set dynamic thresholds for different attacks.  For
   example, Bit-and-piece attack is a new pattern of attach which
   spreading small and fine-targeted traffic attacks across hundreds of
   IP-addresses to evade detection.  This new pattern is often leveraged
   on open DNS resolvers to launch what is commonly known as DNS
   amplification.  In this case, a relatively low threshold should be
   set to detect such attacks.

3.4.2.  DNS traffic monitoring

   The DNS server directly processes DNS traffic, thus it can obtain the
   status of DNS nodes most accurately and timely.  A suitable attack
   detection system should be applied on the DNS server side to
   implement attack detection, feature baseline learning, protection
   strategy recommendations, etc.  For example, the DOTS client deployed
   in the DNS server side can comprehensively calculate the probability
   of false alarm and the probability of missed reports to trigger the



Zhang, et al.           Expires January 27, 2021                [Page 3]


Internet-Draft           DNS DOTS considerations               July 2020


   security mechanism reasonably.  Attack detection system can consider
   the classification of attack types, so that Filter can choose more
   reasonable strategies in the early stage of a DDoS mitigation.

   The DNS server should learn the characteristics of both the normal
   DNS traffic and DDoS traffic in real time.  The normal traffic
   characteristics can be used as the normal flow profile.  These
   characteristics include but are not limited to: query rate of
   specific domains, characteristics of domains, amplification ratio of
   query size to response size, anomaly detection parameters and models
   based on machine learning, etc.

   Generally ordinary attacks have relatively obvious characteristics,
   for example sending a large number of requests for random subdomains
   to a DNS resolver.  These type of attacks can be detected based on
   the characteristics relatively simply.  If the attack randomness is
   strong and it is difficult to extract clear attack characteristics,
   the characteristics aggregation can be performed by machine learning.

4.  Example

   Random subdomain attack is a type of DDOS against DNS service that
   happens frequently.  Attackers send a lot of DNS queries against a
   valid and existing domain name.  However, the queries will not target
   the main domain name, but a lot of non-existing subdomains.  The goal
   of this attack is to create a DoS that will saturate the DNS server,
   and cause the faliure of DNS service.  Here is the mitigation process
   of such Random subdomain attack.

   1.  A large number of requests for XXX.example.cn are mixed into the
   normal DNS request, XXX represents a random domain name label.  The
   request traffic exceeds the service capabilities of DNS server.

   2.  The Traffic Moinitor located in DNS server detects the anomaly
   traffic and sends attackrelated features and mitigation requests to
   the Filter in the ISP through the DOTS interface.  The information
   contains the following: (1)The QNAME field of the attack packet is
   random label + example.cn; (2)news.example.cn should be kept and
   transmitted; (3)The normal QPS of domain name news.example.cn is M;
   (4)The maximum response capacity of the server is N.

   3: Filter implements mitigation process according to the signal it
   receives and re-injects the cleaned data to the DNS server.  After
   filtering, the traffic contains normal request traffic and
   news.example.cn requests.  The total request traffic does not exceed
   the DNS server service capacity.





Zhang, et al.           Expires January 27, 2021                [Page 4]


Internet-Draft           DNS DOTS considerations               July 2020


                       +---------DOTS signal/data channel-------+
                       |S                                      C|
                       V                                        |
          +---------------------+                         +------------+
          |      |  |      |    |      DDOS ATTACK        |            |
          |      |  |Filter|    |========================>|----------+ |
          |      |  |      |    |========================>|    DNS   | |
          |      |  +------+    |====|XXX.example.cn|====>|  Traffic | |
          |      +----------->  |========================>| Detection| |
          |------------------>  |========================>|----------+ |
          |     +------------>  |   normal DNS traffic    |            |
          |     | +---------->  |------------------------>|    DNS     |
          | ISP | |             |                         |   Server   |
          +---------------------+                         +------------+
         *C is for DOTS client functionality
         *S is for DOTS server functionality

                   Figure1:  Random subdomain attack traffic



                       +--------DOTS signal/data channel--------+
                       |S                                      C|
                       V                                        |
          +---------------------+                         +------------+
          |         |      |---+|                         |----------+ |
          |         |Filter|-+ ||                         |    DNS   | |
          |         +------+ | ||                         |  Traffic | |
          |            ^ ^   | ||    news.example.cn      | Detection| |
          |----------- | |   | +------------------------->|----------+ |
          |------------+ |   |  |     normal DNS REQ      |            |
          |     +--------+   +--------------------------->|            |
          |     |  +------      |                         |    DNS     |
          | ISP |  |            |                         |   Server   |
          +---------------------+                         +------------+
         *C is for DOTS client functionality
         *S is for DOTS server functionality

                    Figure2:  normal DNS traffic after filtering


   In the above example, the Filter uses the characteristics of anomaly
   traffic provided by the DNS serve.  This process not only filters the
   attack traffic, but also keeps normal DNS packets within the service
   capabilities of the DNS server to the maximum extent.






Zhang, et al.           Expires January 27, 2021                [Page 5]


Internet-Draft           DNS DOTS considerations               July 2020


5.  IANA Considerations

   TBD.

6.  References

   [I-D.ietf-dots-use-cases]
              Dobbins, R., Migault, D., Moskowitz, R., Teague, N., Xia,
              L., and K. Nishizuka, ""Use cases for DDoS Open Threat
              Signaling(work in progress)"", July 2019.

   [RFC7858]  Hu, Z., Zhu, L., Heidemann, J., Mankin, A., Wessels, D.,
              and P. Hoffman, ""Specification for DNS over Transport
              Layer Security (TLS)"", May 2016,
              <https://tools.ietf.org/html/rfc7858>.

   [RFC8484]  Hoffman, P. and P. McManus, ""DNS Queries over HTTPS
              (DoH)"", October 2018,
              <https://tools.ietf.org/html/rfc8484>.

   [RFC8612]  Mortensen, A., Reddy, T., and R. Moskowitz, ""DDoS Open
              Threat Signaling (DOTS) Requirements"", May 2019,
              <https://tools.ietf.org/html/rfc8612>.

Authors' Addresses

   Haikuo Zhang
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 3163
   Email: zhanghaikuo@cnnic.cn


   Peng Zuo
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 2629
   Email: zuopeng@cnnic.cn







Zhang, et al.           Expires January 27, 2021                [Page 6]


Internet-Draft           DNS DOTS considerations               July 2020


   Yungang Sun
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 2669
   Email: sunyungang@cnnic.cn


   Meng Yuan
   CNNIC
   4 South 4th Street,Zhongguancun,Haidian District
   Beijing, Beijing  100190
   China

   Phone: +86 10 5881 2669
   Email: yuanmeng@cnnic.cn

































Zhang, et al.           Expires January 27, 2021                [Page 7]


Html markup produced by rfcmarkup 1.129d, available from https://tools.ietf.org/tools/rfcmarkup/