DOTS Internet-Draft K. Li Intended status: Proposed Standard H. Zhou Z. Tu F. Liu W. Wang Document: draft-li-dots-knowledge-trans-00.txt Beijing Jiaotong University Expires: February 2022 August 2021 Knowledge Transmission Using Distributed Denial-of-Service Open Threat Signaling (DOTS) Data Channel 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." 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. Abstract Li, et al. Expires - August 2021 [Page 1] DOTS Knowledge Trans August 2021 The document specifies new DOTS data channel configuration parameters that customize the DDoS knowledge transmission configuration between distributed knowledge bases. These options enable assist the distributed knowledge base to share attack knowledge in different fields and actively adapt to dynamically changing DDoS attacks. Table of Contents 1. Introduction...................................................2 2. Terminology....................................................3 3. DOTS Knowledge Transmission Architecture.......................3 4. DOTS Knowledge Transmission YANG Module........................5 4.1 Generic Tree Structure.....................................5 4.2 YANG Module................................................6 5. Managing DOTS Knowledge Transmission..........................10 6. IANA Considerations...........................................11 7. Security Considerations.......................................11 8. References....................................................11 8.1 Normative References......................................11 8.2 Informative References....................................12 Acknowledgments..................................................12 Author's Addresses...............................................12 1. Introduction To detect the threat of DDoS attacks, various security organizations have designed a series of network security datasets by collecting various complex simulations or DDoS attacks in actual network environments, aiming to reflect the modern complex and changeable DDoS attack environment by designing a comprehensive data set containing normal and abnormal behavior. As a new knowledge representation method, the knowledge graph represents the relationship between entities in the form of graphs, and is essentially a semantic network that reveals the relationships between entities. Knowledge graph technology can standardize and integrate DDoS attack-related intelligence, generate DDoS attack knowledge and store it in the network security malicious behavior knowledge base to solve the problem that multi-source heterogeneous data is difficult to share and reuse. DOTS data channel can exchange data between DOTS agents, coordinate multiple DOTS servers and DOTS clients, and perform tasks such as creating resource aliases and managing filtering strategies. The DOTS data channel specification [RFC8783] defines the data channel hierarchical structure, the YANG data model and the basic functions of the data channel. Li, et al. Expires - August 2021 [Page 2] DOTS Knowledge Trans August 2021 DOTS data channel is used for reliable data interaction between DOTS client and server, but the existing data channel lacks a knowledge transmission structure and corresponding YANG data model, and cannot realize the transmission of DDoS attack knowledge stored in a knowledge graph structure. Therefore, it is difficult to meet the dynamically changing form of DDoS attacks. This document defines new DOTS data channel attributes. It mainly builds a new YANG data model for distributed scenarios that need to constantly update and synchronize the content of the knowledge base, including a general tree structure and YANG data modules, aiming to customize the DDoS knowledge transmission configuration between distributed knowledge bases. 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. Readers should be familiar with the terms and concepts defined in [RFC8612] [RFC8783] and [RFC8811]. 3. DOTS Knowledge Transmission Architecture The basic DOTS knowledge transmission architecture is illustrated in Figure 1: +------------+ +--------------+ +-------------+ | | | DOTSG | | | | +--------+ | +--------------+ | +---------+ | | |DDoS | | | Knowledge | | |knowledge| | | |Target-1| | | Collection | +--> |base-1 | | | +--------+ | +-------+------+ | | +---------+ | | | | | | | | | DDoS | +--------+ | +-------v------+ | | +---------+ | Attack | |DDoS | | | Knowledge | | | |knowledge| | ------>| |Target-2| | | Transmission | +--> |base-2 | | | +--------+ | +------+-+-----+ | | +---------+ | | ...... | | | | | | | ...... | | +--------+ | | | | | | | +---------+ | | |DDoS | | | | | | | | |knowledge| | | |Target-n| | | | | | +--> |base-n | | | +--------+ | | Data Channel | | | +---------+ | Li, et al. Expires - August 2021 [Page 3] DOTS Knowledge Trans August 2021 | C <--+--------------+--+--> S | +------------+ +--------------+ +-------------+ * C is for DOTS client functionality * S is for DOTS server functionality Figure 1: Basic DOTS Knowledge Transmission Architecture A simple example of the DOTS knowledge transmission architecture may be a DDoS attack-oriented network security knowledge base deployed on a large scale in the form of distributed nodes as the server, and the attacked target as the client. The host suspects that it has been attacked by a DDoS, and obtains information about the DDoS attack based on the DOTS client and forwards it via the DOTS gateway. The DOTS gateway matches DDoS attack traffic and converts it into attack knowledge and stores it in a nearby network security knowledge base. After a certain period of time, distributed nodes transmit new knowledge through data channels to achieve knowledge synchronization. Therefore, they aim to share attack knowledge in different domains and actively adapt to dynamically changing DDoS attacks. In some cases, part of the domain is always in a state of being unattended, and another part of the domain may be frequently subjected to DDoS attacks, so new knowledge of DDoS attacks will be continuously introduced. The administrator needs to configure a reasonable update cycle according to the attack situation in the control domain. For domains with few attack records, the update period should be appropriately extended to reduce bandwidth consumption. For domains with high security requirements, the number of requests should be increased and DOTS data channels should be established with more domains to obtain more comprehensive knowledge of DDoS attacks. This document augments the "ietf-dots-data-channel" (dots-data) DOTS data YANG module defined in [RFC8783] with these additional attributes that can be negotiated between DOTS servers to realize the secure and periodic transmission of DDoS attack knowledge: related-time: This attribute contains the creation-time and merge- time of DDoS attack knowledge. The default value of this attribute is 'now-date' obtained from the system. This is an optional attribute. label: This attribute represents the type of network security knowledge graph currently transmitted. The default value of this attribute is '0'. This is an optional attribute. Li, et al. Expires - August 2021 [Page 4] DOTS Knowledge Trans August 2021 knowledge-base-name: This attribute represents the name of the currently transmitted network security knowledge graph. The default value of this attribute is 'none'. This is an optional attribute. entities: This attribute contains all node information in the knowledge graph. Optional under this attribute include 'type', 'id', 'labels', and 'properties'. This is an optional attribute. relationship: This attribute contains all the node relationships in the knowledge graph. Optional under this attribute include 'id', 'type', 'label', 'properties', 'start', and 'end'. This is an optional attribute. 4. DOTS Knowledge Transmission YANG Module 4.1 Generic Tree Structure This document defines the YANG module "li-dots-knowledge-trans" (Section 3), which has the following tree structure: module: li-dots-knowledge-trans +--rw dots-data +--rw dots-client* [cuid] | ... +--ro capabilities | ... +--rw knowledge-trans +--rw related-time | +--rw creation-time string | +--rw merge-time string +--rw label +--rw knowledge-base-name string +--rw eneities | +--rw type string | +--rw id uint32 | +--rw labels string | +--rw properties | +-- rw name string | +-- rw establishdate uint8 +--rw relationship +--rw id uint32 +--rw type string +--rw label string Li, et al. Expires - August 2021 [Page 5] DOTS Knowledge Trans August 2021 +--rw properties string +--rw start | +--rw id uint32 | +--rw labels string +--rw end +--rw id uint32 +--rw labels1 string Figure 2: DOTS Knowledge Transmission Subtree Based on the above-mentioned yang module structure, a method is provided for the distributed network security knowledge base to periodically update and synchronize the new DDoS attack knowledge in each domain, so as to more effectively deal with the ever-changing DDoS attack types. 4.2 YANG Module This module uses the common YANG types defined in [RFC6991] and types defined in [RFC8519]. file "li-dots-knowledge-trans@2021-08-06.yang" module li-dots-knowledge-trans { yang-version 1.1; namespace "urn:ietf:params:xml:ns:yang:li-dots-knowledge-trans"; prefix dots-knowledge; import ietf-dots-data-channel { prefix dots-data; reference "RFC 8783: Distributed Denial-of-Service Open Threat Signaling (DOTS) Data Channel Specification"; } organization "IETF DDoS Open Threat Signaling (DOTS) Working Group"; contact "WG Web: WG List: Author: Kun Li ; Author: Huachun Zhou "; Author: Zhe Tu ; Li, et al. Expires - August 2021 [Page 6] DOTS Knowledge Trans August 2021 Author: Feiyang Liu ; Author: Weilin Wang ; description "This module contains YANG definitions for the configuration of parameters that can be negotiated between DOTS servers to realize the secure and periodic transmission of DDoS attack knowledge. Copyright (c) 2021 IETF Trust and the persons identified as authors of the code. All rights reserved. Redistribution and use in source and binary forms, with or without modification, is permitted pursuant to, and subject to the license terms contained in, the Simplified BSD License set forth in Section 4.c of the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info). This version of this YANG module is part of RFC 8783; see the RFC itself for full legal notices."; revision 2021-08-06 { description "Initial revision."; reference "RFC 8783: Knowledge Transmission Using Distributed Denial-of-Service Open Threat Signaling (DOTS) Data Channel"; } grouping knowledge-trans { description "Top-level grouping for knowledge transmission."; container related-time { description "Relevant time for knowledge transmission."; leaf creation-time { type string description "Knowledge graph establishment time."; } leaf merge-time { type string description "Knowledge synchronization initiation time."; Li, et al. Expires - August 2021 [Page 7] DOTS Knowledge Trans August 2021 } } leaf label { type string description "Type of network security knowledge graph currently transmitted."; } leaf knowledge-base-name { type string description "Name of network security knowledge graph currently transmitted."; } list eneities { key id; description "Entity contains all node information in the knowledge graph."; leaf id { type uint32 description "Id of the new node."; } leaf type { type string description "Type of the new node."; } leaf labels { type string description "Label of the new node."; } container properties { description "Properties of the new node."; leaf name { type string description "Property name of the new node."; } leaf establishdate { type uint8 description "Node creation time."; } } } Li, et al. Expires - August 2021 [Page 8] DOTS Knowledge Trans August 2021 list relationship { key id; description "Relationship contains all the node relationships in the knowledge graph."; leaf id { type uint32 description "Id of the new relationship."; } leaf type { type string description "Type of the new relationship."; } leaf labels { type string description "Label of the new relationship."; } leaf properties { type string description "Properties of the new relationship."; } container start { description "Starting node of the new relationship."; leaf id { type uint32 description "Id of starting node."; } leaf labels { type string description "Label of starting node."; } } container end { description "Ending node of the new relationship."; leaf id { type uint32 description "Id of ending node."; } leaf labels { type string Li, et al. Expires - August 2021 [Page 9] DOTS Knowledge Trans August 2021 description "Label of ending node."; } } } } 5. Managing DOTS Knowledge Transmission A POST request is used by a DOTS client to periodically synchronize knowledge about DDoS attacks. This knowledge can be used to guide subsequent mitigation measures to more effectively deal with multiple types of DDoS attacks. An example of a request for periodic transmission of DDoS attack knowledge is shown in Figure 3. POST /restconf/data/ietf-dots-data-channel:dots-data\ /dots-client=cuid HTTP/1.1 Host: {host}: {port} Content-Type: application/yang-data+json { "ietf-dots-data-channel:knowledge-trans": { [ { "type": "node", "id": 0, "labels": ["Slow-DDoS"], "properties": { "name": "Shrew", "establishdate": 20210806094618 }, { "type": "node", "id": 1, "labels": ["Application-layer-DDoS"], "properties": { "name": "Http-get", "establishdate": 20210806100512 }, }, { "id": 0, "type": "relationship", "label": "Related-to", "properties": {} "start": { "id": 0, Li, et al. Expires - August 2021 [Page 10] DOTS Knowledge Trans August 2021 "labels": "Slow-DDoS" } "end": { "id": 1, "labels": "Application-layer-DDoS" } } ] } } Figure 3: An Example of DOTS Request Knowledge Update Process A DOTS client MUST use the POST request to request to update the knowledge, otherwise the server MUST respond with a "404 Not Found" status-line. 6. IANA Considerations This document has no IANA actions. 7. Security Considerations The security considerations for the DOTS data channel protocol are discussed in Section 10 of [RFC8783]. This document defines YANG data structures that are meant to be used as an abstract representation in DOTS data channel messages. As such, the "li-dots-knowledge-trans" module does not introduce any new vulnerabilities beyond those specified above. 8. References 8.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, . [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [RFC8783] Boucadair, M., Ed. and T. Reddy.K, Ed., "Distributed Denial-of-Service Open Threat Signaling (DOTS) Data Channel Specification", RFC 8783, DOI 10.17487/RFC8783, May 2020, . Li, et al. Expires - August 2021 [Page 11] DOTS Knowledge Trans August 2021 [RFC6991] Schoenwaelder, J., Ed., "Common YANG Data Types", RFC 6991, DOI 10.17487/RFC6991, July 2013, . [RFC8519] Jethanandani, M., Agarwal, S., Huang, L., and D. Blair, "YANG Data Model for Network Access Control Lists (ACLs)", RFC 8519, DOI 10.17487/RFC8519, March 2019, . 8.2 Informative References [RFC8612] Mortensen, A., Reddy, T., and R. Moskowitz, "DDoS Open Threat Signaling (DOTS) Requirements", RFC 8612, DOI 10.17487/RFC8612, May 2019, . [RFC8811] Mortensen, A., Ed., Reddy.K, T., Ed., Andreasen, F., Teague, N., and R. Compton, "DDoS Open Threat Signaling (DOTS) Architecture", RFC 8811, DOI 10.17487/RFC8811, August 2020, . Acknowledgments TBC Author's Addresses Kun Li Beijing Jiaotong University Beijing Phone: <86-15652992293> Email: 19111021@bjtu.edu.cn Huachun Zhou Beijing Jiaotong University Beijing Phone: <86-13718168186> Email: hchzhou@bjtu.edu.cn Zhe Tu Beijing Jiaotong University Beijing Phone: <86-13146050755> Email: 19111038@bjtu.edu.cn Feiyang Liu Beijing Jiaotong University Li, et al. Expires - August 2021 [Page 12] DOTS Knowledge Trans August 2021 Beijing Phone: <86-18813006511> Email: 19120077@bjtu.edu.cn Weilin Wang Beijing Jiaotong University Beijing Phone: <86-15910887582> Email: 20120122@bjtu.edu.cn Li, et al. Expires - August 2021 [Page 13]