Network Working Group H. Kim Internet-Draft H. Ko Intended status: Standards Track D. Daghmehchi Expires: May 4, 2017 J. Jeong Sungkyunkwan University T. Ahn Korea Telecom October 31, 2016 I2NSF Data Model of Consumer-Facing Interface for Security Management draft-kim-i2nsf-consumer-facing-interface-dm-00 Abstract This document describes a data model for security management that is based on Interface to Network Security Functions (I2NSF) by using Network Functions Virtualization (NFV). This document proposes a security management architecture based on I2NSF framework. Note that the I2NSF framework consists of I2NSF User, Security Management System (i.e., Security Controller and Developer's Management System), and NSF instances in the lowest layer of the framework. I2NSF User consists of Application Logic, Policy Updater, and Event Collector. Security Controller consists of Security Policy Manager and NSF Capability Manager. This document explains a data model to perform the missions for a security service (i.e., VoIP-VoLTE) in I2NSF security management system. Status of This Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. Kim, et al. Expires May 4, 2017 [Page 1] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 This Internet-Draft will expire on May 4, 2017. Copyright Notice Copyright (c) 2016 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 (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 . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Requirements Language . . . . . . . . . . . . . . . . . . . . 4 4. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 5. Architecture of Security Management . . . . . . . . . . . . . 5 5.1. I2NSF User . . . . . . . . . . . . . . . . . . . . . . . . 6 5.2. Security Management System . . . . . . . . . . . . . . . . 7 5.3. NSF Instances . . . . . . . . . . . . . . . . . . . . . . 7 6. Use Case: VoIP-VoLTE Security Service . . . . . . . . . . . . 7 6.1. Security Management for VoIP-VoLTE Security Service . . . 8 6.2. Data Model for VoIP-VoLTE Security Service . . . . . . . . 8 7. Security Considerations . . . . . . . . . . . . . . . . . . . 10 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 10 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 9.1. Normative References . . . . . . . . . . . . . . . . . . . 11 9.2. Informative References . . . . . . . . . . . . . . . . . . 11 Kim, et al. Expires May 4, 2017 [Page 2] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 1. Introduction Basically, information model and data model are used to defining the managed objects in the network management. Despite of some overlapped details, they have different characters in the view of network management. Generally, the main purpose of information model is to model managed objects at a conceptual level, with no dependent of any specific implementations or protocols. To make a clear overall design, the information model should hide all protocol and implementation details defining relationships between managed objects. Based on this, the information models can be implemented in different ways and mapped on different protocols. They are neutral to protocols. In general, information models can be defined in an informal way, using natural languages such as English. Furthermore, it seems advisable to use object-oriented techniques to describe an information model. Data models are defined at a lower level of abstraction and provide many details. They provide details about the implementation and protocols' specification, e.g., rules that explain how to map managed objects onto lower-level protocol constructs. Since conceptual models can be implemented in different ways, multiple data models can be derived by a single information model. The impressive role of the network functions virtualization (NFV) in the network management leads to a rapid advent of NFV in this industry. As practical applications, network security functions (NSFs), such as firewall, intrusion detection system (IDS) and intrusion protection system (IPS), can also be provided as virtual network functions (VNF). By virtual technology, these VNFs might be automatically provisioned and dynamically migrated based on real-time security requirements. This document presents an information model to implement security functions based on NFV. This document proposes a data modeling in an architecture for security management [i2nsf-security-management], which is based on I2NSF framework [i2nsf-framework]. This I2NSF framework contains I2NSF User, Security Management System (i.e., Security Controller and Developer's Management System), and NSFs in the NSF instance layer. The security management architecture has more detailed structures for core components in the I2NSF framework. I2NSF User includes Application Logic, Policy Updater, and Event Collector. Security Controller contains Security Policy Manager and NSF Capability Manager. Application Logic generates a high-level policy and Policy Updater sends it to Security Policy Manager via Consumer-Facing Interface. Security Policy Manager maps the high-level policy into several low- Kim, et al. Expires May 4, 2017 [Page 3] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 level policies in Security Controller. After mapping, the low-level policies are distributed to NSF(s) via NSF-Facing Interface so that they can be enforced in them. When an event occurs for NSF to change a low-level policy, NSF sends the event to Security Controller via NSF-Facing Interface. Security Controller then forwards it to Event Collector via Consumer-Facing Interface. Next, Event Collector sends it to Application Logic. Application Logic then updates the current policies in accordance with the event. This document proposes a data model for security services in the security management architecture in [i2nsf-security-management] so that the security management architecture can support flexible and effective security policies. 2. Objectives The two main objectives for security management architecture in this document are as follows. o High-level security management: To propose the design of a generic security management architecture to support the enforcement of flexible and effective security policies in NSFs. o Automatic update of security policies: To provide the reflection of the updated low-level security policies for new security attacks on the corresponding high-level security policies. 3. Requirements Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC3444]. 4. Terminology This document uses the terminology described in [i2nsf-framework][i2nsf-security-management]. In addition, the following terms are defined below: o Application Logic: It is a component in the security management architecture which generates high-level security policies to block or mitigate security attacks. o Policy Updater: It is a component which forwards a high-level security policy to Security Controller. The high-level policy is received from Application Logic. Kim, et al. Expires May 4, 2017 [Page 4] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 o Security Policy Manager: It maps a high-level security policy received from Policy Updater into low-level security policies, and vice versa. o NSF Capability Manager: It is a component which stores the NSF capability registered by Developer's Management System via Registration Interface and shares it with Security Policy Manger to generate the corresponding low-level security policies. o Event Collector: It is a component which receives an event from Security Controller, which should be reflected by updating (or generating) a high-level policy in Application Logic. 5. Architecture of Security Management Generally, Data models are often represented in formal data definition languages that are specific to the management protocol being used. Based on NFV, the structure of the proposed model is based on VNFs to provide a flexible and effective security policies. Figure 1 illustrates the structure of the suggested model. The architecture is designed based on three layers: I2NSF user, security management system, and NSF instances. The high level security policies are defined and distributed in the I2NSF user layer. Translating the high level security policies relevant to NSF capability and delivering them to NSF interfaces are performed in the security management system. Kim, et al. Expires May 4, 2017 [Page 5] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | I2NSF User | | +-+-+-+-+-+-+-+-+-+-+-+ | | ---| Application Logic |<-- | | | +-+-+-+-+-+-+-+-+-+-+-+ | | | | | | | | | | | +-+-+-+v+-+-+-+-+-+ +-+-+-+v+-+-+-+ | | | Policy Updater | | Event | | | +-+-+-+-+-+-+-+-+-+ | Collector | | | | +-+-+-+^+-+-+-+ | | | | | | | | | | | ------------------- | +-+-+-+-+-+-+-+-+-+-+-+-+-+|+-+-|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | Consumer-Facing Interface +-+-+-+-+-+-+-+-+-+-+-+-+-+|+-+-|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Security Management System| | | | +-+-+-+-+-+-+-+-+-+v+-+-+-+-+ | | |Security Controller | | | | +-+-+-+-+-+ +-+-+-+-+-+-+ | Registration | | | |Security | |NSF | | Interface +-+-+-+-+-+-+-+ | | | |Policy | |Capability | |<----------->| Developer's | | | | |Manager | |Manager | | | Mgnt System | | | | +-+-+-+-+-+ +-+-+-+-+-+-+ | +-+-+-+-+-+-+-+ | | +-+-+-+-+-+-^-+-+-+-+-+-+-+-+ | +-+-+-+-+-+-+-|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |--------------------------------- NSF-Facing Interface +-+-+-+-+-+-+-|-+-+-+-+-+-+|+-+-+-+-+-+-+-+-+-+|+-+-+-+-+-+-+-+-+-+-+ |NSF Instances| | | | | +-+-+v+-+-+ +-+-+v+-+-+ +-+-+v+-+-+ | | | NSF | | NSF | . . . | NSF | | | +-+-+-+-+-+ +-+-+-+-+-+ +-+-+-+-+-+ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: Security Management Architecture in I2NSF 5.1. I2NSF User I2NSF User layer consists of three components; Application logic, Policy Updater, and Event Collector. The Application logic is a component which generates high level security policies. To this end, it receives the event for updating (or generating) a high level policy from Event collector and updates (or generates) a high level policy based on the collected events. After that, the high level policy is sent to Policy updater in order to distribute it to Security controller(s). In order to update (or generate) a high level policy, Event collector receives the events sent by Security Kim, et al. Expires May 4, 2017 [Page 6] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 controller and sends them to Application logic. Based on these feedbacks, the Application logic can update (or generate) high level security policies. 5.2. Security Management System In the security management system layer, the Security policy manager receives a high level policy from Policy updater via Consumer-Facing Interface and maps this policy into several low level policies. These low level policies are relevant to a given NSF capability that is registered into NSF capability manager. Moreover, Security policy manager delivers those policies to NSF(s) via NSF-Facing Interface. To generate low level policies relevant to a given NSF capability, the NSF capability manager stores an NSF's capability registered by Developer's management system and shares it with Security policy manager. Whenever a new NSF is registered, NSF capability manager requests Developer's management system to register the NSF's capability into the management table of NSF capability manager via Registration Interface. Developer's management system is another part of security management system to registers a new NSF's capability into NSF capability manager. 5.3. NSF Instances All NSFs are located at this layer. After mapping the high level policies to low level policies, the Security policy manager delivers those policies to NSF(s) through NSF-Facing Interface. 6. Use Case: VoIP-VoLTE Security Service As a use case for implementation, VoIP-VoLTE security management is considered to develop a data model. Based on this, the VoIP-VoLTE security manager acts as Application logic for VoIP-VoLTE security services and defines the security conditions. Based on VoIP-VoLTE security management, the list of illegal devices information is stored in VoIP-VoLTE database and can be updated either manually or automatically by VoIP-VoLTE security manager. To define the policies, information of dangerous domain blacklists (e.g., IP addresses and source ports), time management (e.g., access time and expire time), user-agent (e.g., priority levels), and Session Initiation Protocol (SIP) URIs of an SIP device that are suspicious of illegal call or authentication is published by VoIP-VoLTE security manager. Accordingly, ahe list of illegal devices, which is automatically (or manually) updated, is stored in VoIP-VoLTE database. The VoIP-VoLTE security manager periodically loads this list to generate a new high level security policy (e.g., the blocking list of illegal devices using IP address, source ports, etc) to Kim, et al. Expires May 4, 2017 [Page 7] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 prevent the delivery of packets from/to those newly added VoIP-VoLTE attackers. When the NSF detects an anomalous message or call delivered from a domain, the information of the domain such as an IP address, user- agents and expire time values is sent by an NSF to Security controller via NSF-Facing Interface. Security controller delivers it to Event collector. Event collector forwards the detected domain information to VoIP-VoLTE security manager, and then VoIP-VoLTE security manager updates the VoIP-VoLTE database. 6.1. Security Management for VoIP-VoLTE Security Service VoIP-VoLTE security management maintains and publishes the blacklists of IP addresses, source ports, expire time, user-agents, and Session Initiation Protocol (SIP) URIs of SIP device that are suspicious of illegal call and authentication. In our generic security management architecture, VoIP-VoLTE Security Manager is plays the role of Application Logic for VoIP-VoLTE security services in Figure 1. Based on VoIP-VoLTE security management, the list of illegal devices information can be updated either manually or automatically by VoIP- VoLTE Security Manager as Application Logic. Also, VoIP-VoLTE Security Manager periodically generates a new high-level security policy to prevent the delivery of packets from/to those newly added VoIP-VoLTE attackers and enforce the low-level security policies in NSF. It sends the new high-level security policy to Policy Updater, which forwards it to Security Controller. When the NSF detects an anomalous message or call delivered from a domain, the domain information such as an IP address, user-agents and expire time values is sent by an NSF to Security Controller via NSF Facing Interface. Security Controller delivers it to Event Collector. Event Collector forwards the detected domain information to VoIP-VoLTE Security Manager, and then VoIP-VoLTE Security Manager updates the VoIP-VoLTE database. 6.2. Data Model for VoIP-VoLTE Security Service To implement the model, three parameters have been considered to define the high level policies; blacklisting countries, time interval specification, and caller's priority levels. If the administrator sets a new high-level security policy, a data model parser in I2NSF User interprets the policy and generates an XML file in accordance with YANG data model. In order to enable interaction between I2NSF User and Security management system, a communication channel based on RESTCONF is implemented. Basically, the data model is defined based on the security policy requirements to detect the suspicious calls in Kim, et al. Expires May 4, 2017 [Page 8] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 VoIP-VoLTE services. Figure 2 shows a part of this data model. +--: (policy) +--rw policy-lifecycle *(policy-lifecycel-id) | +--rw expiration-event | | +--rw enabled boolean | | +--rw event-id uint 16 | +--rw expiration-time | +--rw enabled boolean | +--rw time data-and-time +--rw policy-rule *[policy-rule-id] | +--rw policy-name string | +--rw policy-rule-id uint 16 | +--rw service | | +--voip-handling boolean | | +--volet-handling boolean | +--rw condition *[condition-id] | +--rw caller | | +--rw caller-id uint 16 | | +--rw caller-location | | +--rw country string | | +--rw city string | +--rw callee | | +--rw callee-id uint 16 | | +--rw callee-location | | +--rw country string | | +--rw city string | +--rw valid-time-interval | +--rw start-time data-and-time | +--rw end-time data-and-time +--rw action +--rw (action-type)? +--: (ingress-action) | +--rw permit? boolean | +--rw mirror? boolean | +--rw log? boolean +--: (engress-type) +--rw redirection? boolean Figure 2: Data Model for VoIP-VoLTE Security Service The data model consists of policy life cycle management, policy rule, and action. The policy life cycle field specifies an expiration time and/or a set of expiration events to determine the life-time of the policy itself. The policy rule field represents the specific information about a high-level policy such as service types, conditions and valid time interval. The action field specifies which actions should be taken. For example, call traffic from a Kim, et al. Expires May 4, 2017 [Page 9] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 blacklisted caller location at an unusual time of day (included in the valid-time-interval) could be blocked and sequentially forwarded to a pre-defined host for Deep Packet Inspection (DPI) when both permit and mirror are assigned true. To translate a high level policy into a set of low level policies, the security management system is implemented. After translating the high-level security policy, Security management system generates low- level security policies to specify the actions network traffic from and/or to those IP addresses. The data model parser generates an XML _le for a low-level security policy and delivers it to proper NSF instances. Security management system also interprets security events generated by NSF into a high-level log message in a YANG data model and delivers it to I2NSF Users in the opposite direction. In this case, we select a firewall application as an NSF instance to determine whether a VoIP-VoLTE call is suspicious or not by checking the caller's and callee's locations and call time. When a call has suspicious behavior patterns, its network traffic could be effectively blocked by the firewall application according to the low- level security policy. The results for the firewall application would be delivered in a YANG data model to the Security management system through the RESTCONF protocol. Multiple NSF instances can be considered depending on specific situations. For example, additionally DPI can be used for analyzing the network traffic from suspicious callers. 7. Security Considerations The security management architecture is derived from the I2NSF framework [i2nsf-framework], so the security considerations of the I2NSF framework should be included in this document. Especially, proper secure communication channels should be used for the delivery of control or management messages amongst the components in the proposed architecture. 8. Acknowledgements This work was supported by Institute for Information & communications Technology Promotion(IITP) grant funded by the Korea government(MSIP) (No.R-20160222-002755, Cloud based Security Intelligence Technology Development for the Customized Security Service Provisioning). This document has greatly benefited from inputs by Sanghak Oh, Eunsoo Kim, Soyoung Kim, and Se-Hui Lee. 9. References Kim, et al. Expires May 4, 2017 [Page 10] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 9.1. Normative References [RFC3444] Pras, A., "On the Difference between Information Models and Data Models", RFC 3444, January 2003. 9.2. Informative References [i2nsf-framework] Lopez, D., Lopez, E., Dunbar, L., Strassner, J., and R. Kumar, "Framework for Interface to Network Security Functions", draft-ietf-i2nsf-framework-04 (work in progress), October 2016. [i2nsf-security-management] Kim, H., Ko, H., Oh, S., Jeong, J., and S. Lee, "An Architecture for Security Management in I2NSF Framework", draft- kim-i2nsf-security-management- architecture-03 (work in progress), October 2016. Authors' Addresses Hyoungshick Kim Department of Software Sungkyunkwan University 2066 Seobu-Ro, Jangan-Gu Suwon, Gyeonggi-Do 16419 Republic of Korea Phone: +82 31 299 4324 Fax: +82 31 290 7996 EMail: hyoung@skku.edu URI: http://seclab.skku.edu/people/hyoungshick-kim/ Hoon Ko Department of Computer Science and Engineering Sungkyunkwan University 2066 Seobu-Ro, Jangan-Gu Suwon, Gyeonggi-Do 16419 Republic of Korea Phone: +82-31-299-4104 EMail: skoh21@skku.edu Kim, et al. Expires May 4, 2017 [Page 11] Internet-Draft I2NSF Consumer-Facing Interface DM October 2016 Mahdi Daghmehchi Firoozjaei Department of Electical and Computer Enginering Sungkyunkwan University 2066 Seobu-Ro, Jangan-Gu Suwon, Gyeonggi-Do 16419 Republic of Korea Phone: +82-31-299-4104 EMail: mdaghmechi@skku.edu Jaehoon Paul Jeong Department of Software Sungkyunkwan University 2066 Seobu-Ro, Jangan-Gu Suwon, Gyeonggi-Do 16419 Republic of Korea Phone: +82 31 299 4957 Fax: +82 31 290 7996 EMail: pauljeong@skku.edu URI: http://iotlab.skku.edu/people-jaehoon-jeong.php Tae-Jin Ahn Korea Telecom 70 Yuseong-Ro, Yuseong-Gu Daejeon 305-811 Republic of Korea Phone: +82 42 870 8409 EMail: taejin.ahn@kt.com Kim, et al. Expires May 4, 2017 [Page 12]