• No se han encontrado resultados

REFERENCIAS BIBLIOGRÁFICAS

[1] N. Z. Bawany, J. A. Shamsi, y K. Salah, “DDoS Attack Detection and Mitigation Using SDN: Methods, Practices, and Solutions”, Arab J Sci Eng, vol. 42, núm. 2, pp. 425–441, 2017, doi: 10.1007/s13369-017-2414-5.

[2] “Cisco Annual Internet Report - Cisco Annual Internet Report (2018–2023)

White Paper - Cisco”.

https://www.cisco.com/c/en/us/solutions/collateral/executive- perspectives/annual-internet-report/white-paper-c11-741490.html (consultado el 23 de diciembre de 2021).

[3] D. Kreutz, F. M. V. Ramos, P. E. Verissimo, C. E. Rothenberg, S.

Azodolmolky, y S. Uhlig, “Software-defined networking: A comprehensive survey”, Proceedings of the IEEE, vol. 103, núm. 1, pp. 14–76, 2015, doi:

10.1109/JPROC.2014.2371999.

[4] S. Lim, J. Ha, H. Kim, Y. Kim, y S. Yang, “A SDN-oriented DDoS blocking scheme for botnet-based attacks”, International Conference on Ubiquitous and Future Networks, ICUFN, pp. 63–68, 2014, doi:

10.1109/ICUFN.2014.6876752.

[5] D. Nikolov, I. Kordev, y S. Stefanova, “Concept for network intrusion detection system based on recurrent neural network classifier”, 2018 IEEE 27th International Scientific Conference Electronics, ET 2018 - Proceedings, pp.

1–4, 2018, doi: 10.1109/ET.2018.8549584.

[6] N. Hoque, D. K. Bhattacharyya, y J. K. Kalita, “Botnet in DDoS Attacks: Trends and Challenges”, IEEE Communications Surveys and Tutorials, vol. 17, núm.

4, pp. 2242–2270, 2015, doi: 10.1109/COMST.2015.2457491.

[7] P. Manso, J. Moura, y C. Serrão, “SDN-based intrusion detection system for early detection and mitigation of DDoS attacks”, Information (Switzerland), vol. 10, núm. 3, pp. 1–17, 2019, doi: 10.3390/info10030106.

[8] G. Cusack, O. Michel, y E. Keller, “Machine learning-based detection of ransomware using SDN”, SDN-NFVSec 2018 - Proceedings of the 2018 ACM International Workshop on Security in Software Defined Networks and Network Function Virtualization, Co-located with CODASPY 2018, vol. 2018- Janua, pp. 1–6, 2018, doi: 10.1145/3180465.3180467.

[9] O. Katz y J. Black, “Akamai DNS Traffic Insights Threat Report | akamai”, Akamai DNS Traffic Threat Report. junio de 2022. [En línea]. Disponible en:

https://www.akamai.com/resources/research-paper/akamai-dns-traffic- insights-threat-report

[10] D. Nashat y F. A. Hussain, “Multifractal detrended fluctuation analysis based detection for SYN flooding attack”, Comput Secur, vol. 107, ago. 2021, doi:

10.1016/j.cose.2021.102315.

[11] V. Chauhan y P. Saini, “ICMP flood attacks: A vulnerability analysis”, en Advances in Intelligent Systems and Computing, Springer Verlag, 2018, pp.

261–268. doi: 10.1007/978-981-10-8536-9_26.

[12] C. Douligeris y A. Mitrokotsa, “DDoS attacks and defense mechanisms:

Classification and state-of-the-art”, Computer Networks, vol. 44, núm. 5, pp.

643–666, 2004, doi: 10.1016/j.comnet.2003.10.003.

[13] S. Dong y M. Sarem, “DDoS Attack Detection Method Based on Improved KNN with the Degree of DDoS Attack in Software-Defined Networks”, IEEE Access, vol. 8, pp. 5039–5048, 2020, doi: 10.1109/ACCESS.2019.2963077.

[14] “What is an ICMP Flood Attack? | NETSCOUT”.

https://www.netscout.com/what-is-ddos/icmp-flood (consultado el 4 de julio de 2023).

[15] Y. Lu y M. Wang, “An easy defense mechanism against botnet-based DDoS flooding attack originated in SDN environment using sFlow”, ACM International Conference Proceeding Series, vol. 15-17-June, pp. 14–20, 2016, doi: 10.1145/2935663.2935674.

[16] S. Badotra y S. N. Panda, “SNORT based early DDoS detection system using Opendaylight and open networking operating system in software defined networking”, Cluster Comput, vol. 24, núm. 1, pp. 501–513, 2021, doi:

10.1007/s10586-020-03133-y.

[17] “OpenDaylight”.

https://www.gta.ufrj.br/ensino/eel879/trabalhos_vf_2018_2/opendaylight/

(consultado el 3 de julio de 2023).

[18] K. Giotis, C. Argyropoulos, G. Androulidakis, D. Kalogeras, y V. Maglaris,

“Combining OpenFlow and sFlow for an effective and scalable anomaly

detection and mitigation mechanism on SDN environments”, Computer Networks, vol. 62, pp. 122–136, 2014, doi: 10.1016/j.bjp.2013.10.014.

[19] R. Wang, Z. Jia, y L. Ju, “An entropy-based distributed DDoS detection mechanism in software-defined networking”, Proceedings - 14th IEEE International Conference on Trust, Security and Privacy in Computing and Communications, TrustCom 2015, vol. 1, pp. 310–317, 2015, doi:

10.1109/Trustcom.2015.389.

[20] S. A. Mehdi, J. Khalid, y S. A. Khayam, “Revisiting Traffic Anomaly Detection Using Software Defined Networking.pdf”, International workshop on recent advances in intrusion detection, pp. 161–180, 2011.

[21] S. Dotcenko, A. Vladyko, y I. Letenko, “A fuzzy logic-based information security management for software-defined networks”, International Conference on Advanced Communication Technology, ICACT, pp. 167–171, 2014, doi: 10.1109/ICACT.2014.6778942.

[22] C. Chung, S. Member, P. Khatkar, y T. Xing, “NICE : Network Intrusion Detection and Countermeasure”, IEEE Transactions on Dependable Secure Computting, vol. 10, núm. 4, pp. 1–14, 2013, [En línea]. Disponible en:

http://dblp.uni-trier.de/db/journals/tdsc/tdsc10.html#ChungKXLH13

[23] R. Jin y B. Wang, “Malware detection for mobile devices using software- defined networking”, Proceedings - 2013 2nd GENI Research and Educational Experiment Workshop, GREE 2013, pp. 81–88, 2013, doi:

10.1109/GREE.2013.24.

[24] S. E. Schechter, J. Jung, y A. W. Berger, “Fast detection of scanning worm infections”, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 3224, pp. 59–81, 2004, doi: 10.1007/978-3-540-30143-1_4.

[25] S. Shin, P. Porras, V. Yegneswaran, M. Fong, G. Gu, y M. Tyson, “FRESCO Modular Composable Security Services for Software-Defined Networks”, 20th Annual Network & Distributed System Security Symposium. Ndss, vol. 2, núm.

February, p. 16, 2013.

[26] T. Chin, X. Mountrouidou, X. Li, y K. Xiong, “Selective packet inspection to detect DoS flooding using software defined networking (SDN)”, Proceedings - 2015 IEEE 35th International Conference on Distributed Computing Systems

Workshops, ICDCSW 2015, pp. 95–99, 2015, doi:

10.1109/ICDCSW.2015.27.

[27] T. Xing, D. Huang, L. Xu, C. J. Chung, y P. Khatkar, “SnortFlow: A OpenFlow- based intrusion prevention system in cloud environment”, Proceedings - 2013 2nd GENI Research and Educational Experiment Workshop, GREE 2013, pp.

89–92, 2013, doi: 10.1109/GREE.2013.25.

[28] M. Kumar y A. Bhandari, “DDoS Detection in ONOS SDN Controller Using Snort”, en ICT with Intelligent Applications, J. Choudrie, P. Mahalle, T.

Perumal, y A. Joshi, Eds., Singapore: Springer Nature Singapore, 2023, pp.

155–164.

[29] K. Saurabh, T. Kumar, U. Singh, O. P. Vyas, y R. Khondoker, “NFDLM: A Lightweight Network Flow based Deep Learning Model for DDoS Attack Detection in IoT Domains”, 2022 IEEE World AI IoT Congress, AIIoT 2022, núm. Dl, pp. 736–742, 2022, doi: 10.1109/AIIoT54504.2022.9817297.

[30] “OpenDaylight Downloads — OpenDaylight Documentation Sulfur documentation”. https://docs.opendaylight.org/en/stable- sulfur/downloads.html (consultado el 4 de julio de 2023).

[31] C. D. Cajas y D. O. Budanov, “SDN Applications and Plugins in the OpenDaylight Controller”, Proceedings of the 2020 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering,

EIConRus 2020, pp. 9–13, 2020, doi:

10.1109/EIConRus49466.2020.9039054.

[32] “Guide”. https://byob.dev/guide (consultado el 4 de julio de 2023).

[33] “hping3 | Kali Linux Tools”. https://www.kali.org/tools/hping3/ (consultado el 4 de julio de 2023).

[34] “Download/Get Started With Mininet - Mininet”. http://mininet.org/download/

(consultado el 4 de julio de 2023).

[35] “Snort - Network Intrusion Detection & Prevention System”.

https://www.snort.org/ (consultado el 4 de julio de 2023).

[36] “How It Works”. https://byob.dev/docs (consultado el 19 de julio de 2023).

[37] “Writing Snort Rules”.

https://paginas.fe.up.pt/~mgi98020/pgr/writing_snort_rules.htm (consultado el 4 de julio de 2023).

[38] T. Mahjabin, Y. Xiao, G. Sun, y W. Jiang, “A survey of distributed denial-of- service attack, prevention, and mitigation techniques”, Int J Distrib Sens Netw, vol. 13, núm. 12, 2017, doi: 10.1177/1550147717741463.

ANEXOS

Anexo I Creación del script zombie – Ejecución del ataque por los zombies BYOB se encarga de elaborar los bloques necesarios para construir la botnet. Para instalarlo, es necesario lo siguiente: primero, el código abierto BYOB, que está disponible en un repositorio en GitHub para que se puedan descargar los archivos necesarios para la instalación (ver Figura A1. 1). A continuación, también es necesario instalar Docker ya que la información requerida para el correcto funcionamiento de BYOB está empaquetada en este software. Finalmente, se necesita Python3 para la generación de scripts zombie (ver Figura A1. 2). El script se creará en el servidor botnet. Supongamos que este script se envía y ejecuta en los usuarios de SDN. En ese caso, el servidor de la botnet tomará el control completo de la operación de dichos usuarios, pudiendo enviar ataques coordinados a un objetivo dentro del mismo SDN (ver Figura A1. 3). Dentro del marco del servidor BYOB, se puede ejecutar cualquier comando y los zombis los replicarán.

Esta estructura es ideal para dirigir ataques DDoS. El comando de transmisión hace que los zombis ejecuten cualquier comando colocado después. En este sentido, se utilizará la herramienta Hping3 sobre los zombis para que envíen un único ataque a la víctima.

Figura A1. 1. Repositorio de GitHub de BYOB (https://github.com/malwaredllc/byob)

Figura A1. 2. Creación del script para controlar usuarios y convertirlos en zombies.

Figura A1. 3. Comando enviado por el botmaster a los zombies para que lo ejecuten

Anexo II – Creación de reglas para la detección mediante SNORT

SNORT se utilizará para la detección. Una de las configuraciones para el correcto funcionamiento de SNORT es la creación de reglas de detección. Cada regla de detección puede ir acompañada de una o varias palabras clave que permitan filtrar mejor los ataques.

La regla debe identificar los ataques de inundación ICMP y verificar los paquetes que la víctima recibe desde cualquier dirección IP a través del protocolo ICMP. La regla tiene un identificador único local como una de las palabras clave de la regla.

Junto a esto, hay otra palabra clave (rev) que maneja las revisiones de reglas y descripciones para que se actualicen con la información más reciente. Finalmente, una última palabra clave llamada classtype se encarga de clasificar el tipo de ataque a detectar. SNORT tiene, por defecto, un conjunto de clases de ataque conocidas que se pueden usar para definir la regla de detección correctamente. En este caso, la clase es evento ICMP.

Se usará otra regla para identificar los ataques de inundación SYN, y es responsable de verificar los paquetes del protocolo TCP desde cualquier dirección IP de origen a la víctima. Tiene una palabra clave de identificación única local y una palabra clave de revisión de reglas que se mantiene actualizada. El indicador S se establece en SNORT y está destinado a identificar los bits de encabezado TCP SYN. La palabra clave de flujo es responsable de aplicar las reglas en direcciones específicas de los flujos de tráfico. Se ha configurado como sin estado, ya que es la opción correcta para eventos en los que los paquetes tienen la intención de hacer que las máquinas se bloqueen. El filtro de detección es otra palabra clave encargada de definir una tasa que, si se supera, generará la notificación de posibles ataques DDoS. La combinación de palabras clave conteo y segundos muestra el número máximo de coincidencias de la regla permitidas (contar 70, por ejemplo) en un tiempo determinado (10 segundos, por ejemplo); después de ese umbral, generará una alerta de ataque DDoS de tipo SYN (ver Figura A2. 1).

Figura A2. 1. Reglas para la detección de ataques ICMP Flood y SYN Flood.

Anexo III – Creación de la topología de red con Mininet y OpenDaylight La red SDN fue creada en Mininet con un script hecho en Python (ver Figura A3.

1). Se creará una red que contenga un controlador SDN, un conmutador central, dos conmutadores de distribución y cuatro conmutadores de acceso que se comuniquen con el protocolo OpenFlow. La red también contiene 20 usuarios, y cada conmutador de acceso se conectará a cinco de ellos. Uno de estos usuarios será víctima del ataque DDoS en las dos versiones propuestas (ICMP Flood y SYN Flood), y cinco de estos usuarios se convertirán en zombis al ejecutar el script creado por el servidor botnet. La figura muestra el comando de ejecución de Mininet para crear la red. El comando especifica que el controlador será remoto, es decir, que OpenDaylight se encargará de la creación y configuración del controlador.

Cada host tendrá una dirección IP y MAC única; la topología se personaliza a partir de un script previamente elaborado que crea la estructura de la red.

Figura A3. 1. Comando de creación de red SDN en Mininet

OpenDaylight se puede obtener desde el sitio web oficial de la plataforma. Una vez que se descarga esta distribución, se ejecuta, lo que permite crear un controlador que se comunica mediante el protocolo OpenFlow 13. Para visualizar la topología de la red SDN, OpenDaylight también ofrece la opción de montar un servicio HTTP con el puerto de acceso 8181. De manera que si se accede a la dirección localhost:8181/index.html#/topology, se muestra una estructura como la de la Figura A3. 2.

Figura A3. 2. Topología mostrada por OpenDaylight.

Los escenarios de ataque consisten en controlar máquinas zombies para realizar un ataque ICMP flood o SYN flood utilizando la herramienta Hping3. El servidor de botnet montado genera un script para convertir hosts en zombis, haciéndolos parte de la botnet (ver Figura A3. 3, parte a).

Figura A3. 3. Levantamiento del servidor botnet y conexión de los zombies.

Para llevar a cabo los ataques, el servidor enviará un comando a los zombies que ejecutarán el ataque ICMP flood o SYN flood simultáneamente, realizando un ataque DDoS sobre la dirección IP de la víctima. Cinco hosts de la red SDN serán parte de los zombis, ejecutando el script en cada host virtual usando el comando que se muestra en la Figura A3. 3, parte b. Se muestra un mensaje cuando un host se conecta con éxito al servidor de botnet, como en la Figura A3. 3, parte c.

El host de destino establece las reglas de detección de ataques DDoS mediante SNORT. Cuando se activa el comando, analizará los paquetes recibidos para

detectar un posible ataque DDoS. Si lo hace, las alertas se mostrarán en la pantalla y se almacenarán en un archivo de registro SNORT con una descripción precisa de la fecha y hora en que se realizó la detección (ver Figura A3. 4).

Figura A3. 4. Ejemplo de notificaciones de SNORT ante la presencia de un ataque dirigido al usuario.

Anexo IV – Artículo científico: “Detección de Ataques de Denegación de Servicio Distribuidas Generadas por Botnets en Redes Definidas por

Software”

48

Detection of Distributed Denial of Service Attacks Carried Out by Botnets in Software-Defined Networks

Detección de Ataques de Denegación de Servicio Distribuidas Generadas por Botnets en Redes Definidas

por Software

Jaime Tamayo1, Lorena Isabel Barona López and Ángel Leonardo Valdivieso Caraguay1

1 Departamento de Informática y Ciencias de la Computación (DICC), Escuela Politécnica Nacional, Ladrón de Guevara E11-253, Quito - Ecuador

{jaime.tamayo01,angel.valdivieso, lorena.barona}@epn.edu.ec

Abstract. Recent years witnessed a surge in network traffic due to the emergence of new online services, causing periodic saturation and complexity problems. Additionally, the growing number of IoT devices further compounds the problem. Software Defined Network (SDN) is a new architecture which offers innovative advantages that help to reduce saturation problems.

Despite its benefits, SDNs not only can be affected by traditional attacks but also introduce new security challenges. In this context, Distributed Denial of Service (DDoS) is one of the most important attacks that can damage an SDN network's normal operation. Furthermore, if these attacks are executed using botnets, they can use thousands of compromised devices to disrupt critical online services. This paper proposes a framework for detecting DDoS attacks generated by a group of botnets in an SDN network. The framework is implemented using open-source tools such as Mininet and OpenDaylight and tested in a centralized network topology using BYOB and SNORT. The results demonstrate real-time attack identification by implementing an intrusion detection mechanism in the victim client. Our proposed solution offers quick and effective detection of DDoS attacks in SDN networks. The framework can successfully differentiate the type of attack with high accuracy in a short time.

Abstract. En los últimos años, se ha observado un aumento exponencial en el tráfico de red debido a la aparición de nuevos servicios online, lo que provoca problemas de saturación y complejidad. El creciente número de dispositivos IoT agrava más el problema. Las Redes Definidas por Software (SDN) son una nueva arquitectura que ofrece ventajas innovadoras que ayudan a reducir los problemas de saturación, pero también presentan nuevos desafíos de seguridad. En este sentido, los ataques de Denegación de Servicio Distribuido (DDoS por sus siglas en inglés) representan una amenaza significativa para las SDN. Además, si estos ataques se ejecutan mediante botnets, pueden aprovechar el poder de miles de dispositivos

49

comprometidos para interrumpir servicios en línea críticos. Este artículo propone un framework para detectar ataques DDoS generados por un grupo de botnets en una red SDN. El framework se implementa utilizando herramientas de código abierto como Mininet, OpenDaylight y se prueba en una topología de red centralizada mediante BYOB y SNORT. Los resultados de los experimentos demuestran que el sistema puede identificar rápidamente un ataque en tiempo real al implementar un mecanismo de detección de intrusos en el cliente víctima.

Keywords: Seguridad de la información · Ataques DDoS · Redes Definidas por Software

· Botnets · Sistema de detección de intrusos · Mininet · SNORT · Byob

Keywords: Information security · Distributed denial of service attacks · Software- defined networks · Botnets · Intrusion detection system· Mininet · SNORT · Byob.

50

1 Introduction

Software-defined networks (SDNs) offer a novel network model that differs from traditional networks and provides several advantages, such as increased flexibility, scalability, and centralized management. Communication networks shift from a proprietary infrastructure to a more flexible, open, and programmable one [1]. The SDN architecture separates de data and control planes in network devices and centralizes the control logic of the different devices (switches), which only forward the traffic. That is, the controller centrally makes the decisions on the data paths in the network [2]. The controller can be programmed according to the particular needs of each user. On its part, the switches follow the instructions provided by the controller.

In addition, SDNs are more scalable than traditional networks [3].

The volume of traffic circulating on public and private networks has increased thanks to the emergence of new online services. For this reason, networks periodically suffer from significant saturation and complexity problems [4]. Traditional network environments are not self-configuring and, therefore, cannot adapt appropriately when new loads appear on the network. Additionally, the flexibility of network growth is reduced by presenting a vertical type of integration [3]. For conventional routers, it is effort and time-consuming to modify their behavior. In this case, administrators have to configure each device individually to change high-level network policies, often using vendor-specific commands. On the other hand, the configuration of an SDN network is more dynamic and efficient. The existence of a central controller in an SDN network makes the routing and controlling task much easier than in a traditional network [5].

Security is expected to be an important application area for SDN. Because of the SDN architecture is innovative, it brings new challenges to network security. Security problems on SDN networks can be divided into two types: attacks inherited from traditional networks and new attacks aimed explicitly at SDN networks. In this regard, one of the most recurrent attacks is the Denial of Service (DoS), which causes damage to both the users and the service provider. This type of attack can affect network functionality and result in financial and prestige losses.

DoS attacks are a problem for the proper functioning of a network since their main objective is disrupting services by limiting access to a machine or service [6].

Furthermore, there is a variation of DoS which can increase the damage on the network.

An attack is considered a Distributed Denial of Service (DDoS) when the DoS attack is coordinated. The attacker identifies vulnerabilities and installs malware on multiple machines to control them. After, the controlled machines become a botnet and are commanded by a botmaster [7]. The botmaster can execute malicious actions on the infected devices [8]. If the number of compromised machines is enormous, it can take down the service of an entire web server in a very short time. For example, in February 2022, a distributed denial of service (DDoS) attack was launched against the websites of banks and the Ministry of Defense of Ukraine, after which many countries point to Russia as responsible showing that cyberspace is playing an important role in the conflict between Russia and Ukraine [9].

Figure 1 shows the classification of DDoS attacks, from which flood and amplification attacks will be selected for this paper. These attacks were selected as they

51

are considered two of the most important attacks due to their effectiveness in exhausting the resources of the target server and affecting the availability of online services [10].

These attacks have been extensively documented by security organizations and have been the subject of numerous reports and analysis in the cybersecurity community [10].

Figure 1. Classification of DDoS attacks

If we refer to DDoS attacks on SDN networks, they are generated by creating many flows that flood the bandwidth of the control plane, saturating the switches and the controller of an SDN network. When a controller gets compromised and experiences a DDoS attack, it can cause the entire network to fail since the controller is in charge of implementing the network logic and managing the applications and switches.

For all the above, our proposed framework aims for early detection of DDoS attacks in SDNs. The framework models the different elements who interact in the attack on SDN networks and introduce elements able to detect the attack in real time. To demonstrate the feasibility of the framework, the SDN network is created in a controlled environment using virtual machines. The botnet is created to control some users of the SDN through the malware script and turn them into zombies. The detection is performed by SNORT, which is installed on the victim's machine. Results show that the executed DDoS attacks are effectively detected shortly after starting the attack.

Lastly, SDN network architecture continues to be an interesting option for ever- growing environments. Therefore, the implementation of a DDoS attack detection technique is a useful contribution to developing frameworks for the security of SDNs.

The paper is organized as follows. Section II gives an introduction and overview of SDNs and DDoS attacks carried out on this type of network, as well as the use of botnets to carry out DDoS attacks. Section III discusses the related works detecting DDoS attacks in traditional networks and SDN. Section IV discusses the implementation of the framework. The experimental results are shown in Section V; finally, Section VI

Documento similar