Logo Studenta

AplicacindeseguridadbasadaencadenasdebloquesparalaauditoradeaccesosenRedesDefinidasporSoftwarev20231013

¡Este material tiene más páginas!

Vista previa del material en texto

IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
1 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
XX Simposio Internacional de Ingeniería Eléctrica (SIE 2023) 
 
Aplicación de seguridad basada en cadenas de bloques para la 
auditoría de accesos en Redes Definidas por Software 
 
 
Blockchain-based security application for access auditing in Software-
Defined Networks 
 
 
YANKO ANTONIO MARÍN MURO1, ROGER TOMAS BRAVO BORRELL2 , 
FÉLIX F. ÁLVAREZ-PALIZA 3 , JORGE FARDALES PÉREZ4 
 
1-YANKO ANTONIO MARÍN MURO. ETECSA, CUBA. E-mail: yanko.marin@etecsa.cu 
2- TOMAS BRAVO BORRELL. UCLV, CUBA. E-mail: rogerluciobv@gmail.com 
3- FÉLIX F. ÁLVAREZ-PALIZA. UCLV, CUBA. E-mail: fapaliza@uclv.edu.cu 
4- JORGE FARDALES PÉREZ. UNISS, CUBA. E-mail: jorgefardalesperez@gmail.com 
 
Resumen: Las redes definidas por software (SDN) ofrecen una serie de ventajas sobre 
las redes tradicionales, pero también presentan nuevos desafíos en materia de seguridad. 
Uno de los principales desafíos es la auditoría de accesos, que es el proceso de recopilar 
y analizar datos sobre quién accede a los recursos de la red y qué acciones realizan. Las 
cadenas de bloques son una tecnología emergente que ofrece una serie de propiedades 
que pueden ser útiles para la auditoría de accesos en SDN. En este artículo, se presenta 
una aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en 
SDN. La aplicación propuesta utiliza una cadena de bloques para almacenar los registros 
de accesos de los usuarios a los recursos de la red. 
La aplicación propuesta se ha implementado y evaluado en un entorno de red SDN 
simulado. Los resultados de la evaluación muestran que la aplicación es capaz de 
recopilar y analizar los registros de accesos de manera eficiente y precisa. 
 
mailto:yanko.marin@etecsa.cu
mailto:rogerluciobv@gmail.com
mailto:fapaliza@uclv.edu.cu
mailto:jorgefardalesperez@gmail.com
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
2 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
La aplicación propuesta representa un avance en la seguridad de las redes SDN. La 
combinación de las ventajas de las cadenas de bloques y las SDN proporciona una 
solución robusta y efectiva para la auditoría de accesos. 
 
Abstract: Software-defined networks (SDNs) offer a number of advantages over 
traditional networks, but they also present new security challenges. One of the main 
challenges is access auditing, which is the process of collecting and analyzing data about 
who accesses network resources and what actions they perform. Blockchains are an 
emerging technology that offer a number of properties that can be useful for access 
auditing in SDNs. In this paper, we present a security application based on blockchains 
for access auditing in SDNs. The proposed application uses a blockchain to store user 
access logs to network resources. 
The proposed application has been implemented and evaluated in a simulated SDN 
environment. The evaluation results show that the application is capable of collecting and 
analyzing access logs efficiently and accurately. 
The proposed application represents a breakthrough in the security of SDNs. The 
combination of the advantages of blockchains and SDNs provides a robust and effective 
solution for access auditing. 
 
Palabras Clave: Redes definidas por software (SDN), auditoría de accesos, cadenas de 
bloques. 
 
Keywords: Software-defined networks (SDNs), Access auditing, Blockchains 
 
1. Introducción 
Las redes definidas por software (SDN) son una nueva arquitectura de red que ofrece una 
serie de ventajas sobre las redes tradicionales, como una mayor flexibilidad, escalabilidad 
y facilidad de gestión [1]–[5]. Sin embargo, las SDN también presentan nuevos desafíos 
en materia de seguridad [3], [6]. Uno de los principales desafíos es la auditoría de accesos, 
que es el proceso de recopilar y analizar datos sobre quién accede a los recursos de la red 
y qué acciones realizan. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
3 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
La auditoría de accesos es importante para proteger las redes de los ataques. Al recopilar 
datos sobre los accesos, se pueden detectar actividades sospechosas o ilícitas, como 
intentos de acceso no autorizados, violaciones de políticas de seguridad o uso indebido 
de los recursos de la red [7]. 
Las cadenas de bloques son una tecnología emergente que ofrece una serie de propiedades 
que pueden ser útiles para la auditoría de accesos en SDN. Estas propiedades incluyen: 
➢ Integridad: Las cadenas de bloques son resistentes a la modificación de los datos 
almacenados. Esto garantiza que los registros de accesos sean confiables y no 
puedan ser manipulados [8]. 
➢ Transparencia: Los datos almacenados en las cadenas de bloques son públicos y 
accesibles para todos los participantes. Esto permite a los administradores de la 
red revisar los registros de accesos para detectar posibles problemas de seguridad 
[8]. 
➢ Autenticación: Las cadenas de bloques pueden utilizarse para autenticar a los 
usuarios que acceden a la red. Esto ayuda a proteger la red de los accesos no 
autorizados. 
En los últimos años, se han realizado varias investigaciones sobre el uso de blockchain 
en entornos de Redes Definidas por Software. En [4] los autores plantean que la 
arquitectura SDN autónoma no dispone de ningún sistema de copia de seguridad; en caso 
de fallo, se pierden todos los detalles de la red y las reglas de flujo. Los autores proponen 
una solución para abordar los problemas utilizando blockchain y un sistema de copia de 
seguridad y restauración. 
Los autores en [3], en su investigación, presentan una arquitectura jerárquica en capas 
para el despliegue de una arquitectura SDN-IoT distribuida y eficiente, basada en 
Blockchain. 
En [2] los investigadores desarrollan un mecanismo de seguridad para las SDN 
seleccionando dinámicamente los nodos centrados en la red y aplicando el aprendizaje 
profundo híbrido (HDL) para aprender de las características espaciales y temporales del 
tráfico en la red. 
En un artículo reciente, [9], los investigadores proponen un método de auditoría y 
trazabilidad forense de control de acceso basado en Blockchain. Este método aborda los 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
4 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
problemas de almacenamiento y manipulación de información de registro. El método 
utiliza la tecnología de Ethereum Blockchain y el sistema IPFS para almacenar 
información de registro y realizar trazabilidad forense. En ese trabajo,los autores 
presentan soluciones para el control y auditoría de acceso en redes tradicionales. 
A pesar de la creciente importancia de las redes definidas por software (SDN) y la 
tecnología blockchain, existe una escasez de trabajos de investigación que aborden la 
auditoría de accesos en este contexto. 
 
Planteamiento del problema: 
La auditoría de accesos en SDN es un desafío debido a la naturaleza distribuida de la 
arquitectura. Los registros de accesos pueden estar almacenados en diferentes 
dispositivos de la red, lo que dificulta su recopilación y análisis. 
Las cadenas de bloques pueden ayudar a resolver este desafío al proporcionar un registro 
centralizado de los accesos. Este registro puede ser accedido por todos los participantes 
de la red, lo que facilita la recopilación y el análisis de los datos. 
Objetivo: 
El objetivo de este artículo es presentar una aplicación de seguridad basada en cadenas 
de bloques para la auditoría de accesos en SDN. La aplicación propuesta utiliza una 
cadena de bloques para almacenar los registros de accesos de los usuarios a los recursos 
de la red. 
 
2. Metodología 
El desarrollo de aplicaciones para las redes SDN basadas en blockchain requiere un 
entorno de pruebas con aplicaciones y funciones de red específicas. 
Para lograr este objetivo, se utiliza una red real para emular este tipo de redes y se 
presentan diferentes casos de uso o demostraciones. 
El diseño metodológico de la aplicación propuesta se basa en los siguientes pasos: 
➢ Registro de accesos: La aplicación SDN recopila los registros de accesos de los 
usuarios a los recursos de la red. Los registros son generados por la aplicación 
SDN en tiempo real analizando los mensajes del protocolo Openflow. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
5 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
➢ Almacenamiento de registros en la cadena de bloques: Los registros de accesos 
recopilados son almacenados en una cadena de bloques. 
➢ Análisis de registros: Los registros almacenados en la cadena de bloques son 
analizados para detectar posibles problemas de seguridad. 
La investigación se desarrolla en un entorno VM configurado con Mininet y el 
controlador SDN POX. En este escenario, se crean varios tipos de topologías SDN-
Openflow, en las que las aplicaciones SDN pueden intercambiar información de control 
con una blockchain. La Figura 1 muestra el entorno de pruebas. 
El proceso de implementación, desarrollo de aplicaciones y evaluación de SDN basadas 
en blockchain es complejo debido a su naturaleza aún nueva. 
Aunque esta investigación se limita a la creación de una conexión entre la aplicación SDN 
y la blockchain, las capacidades de estas tecnologías se pueden explotar en todos los 
niveles de la red, lo que abre las puertas al desarrollo de nuevos protocolos y servicios. 
 
Figura 1. Visión simplificada de arquitectura utilizada. Fuente: Autores. 
 
A. Selección del hipervisor 
La virtualización es una tecnología clave en la computación moderna. Los rápidos 
avances de la última década han hecho que la virtualización sea una nueva tendencia 
dominante, con el número de servidores virtuales superando al de servidores físicos. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
6 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
El hipervisor es el núcleo central de las tecnologías de virtualización de hardware. Es 
responsable de monitorear y asignar recursos a las máquinas virtuales, que son sistemas 
operativos independientes que se ejecutan en el mismo hardware físico. 
Existen dos tipos principales de hipervisores: de tipo 1 y de tipo 2. Los hipervisores de 
tipo 1 se ejecutan directamente sobre el hardware físico, mientras que los hipervisores de 
tipo 2 requieren un sistema operativo para funcionar. 
En este estudio, se utiliza VirtualBox, un hipervisor de tipo 2 gratuito. VirtualBox es una 
buena opción para entornos de desarrollo o prueba, ya que no requiere dedicar la máquina 
host al completo a la virtualización. 
B. Selección del controlador SDN para los experimentos 
Dado que las redes definidas por software (SDN) son una tecnología emergente, el 
proceso de selección y evaluación de un controlador SDN puede ser complejo. Existen 
muchos trabajos que abordan este tema, evaluando el rendimiento de controladores SDN 
en diferentes tipos de redes y escenarios. 
Para la realización de los experimentos, se consideraron los siguientes controladores: 
➢ OpenDayLight (ODL) 
➢ ON.Lab (ONOS) 
➢ POX 
Los criterios de selección fueron los siguientes: 
➢ Soporte del protocolo OpenFlow 
➢ Código abierto 
➢ Ecosistema de aplicaciones y madurez de las API NBI 
➢ Arquitectura 
➢ Lenguajes de programación 
➢ Compatibilidad con equipos de red 
➢ Interfaces de programación del controlador 
➢ Capacidad de procesamiento 
También fue importante el acceso a la documentación de cada controlador, para facilitar 
la instalación, configuración, programación y evaluación. En la investigación se utiliza el 
controlador SDN POX. 
 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
7 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
C. Selección del emulador SDN Mininet 
Mininet es un emulador de redes de código abierto escrito en Python. Está diseñado para 
ser rápido, fácil de usar y extensible. 
Mininet se selecciona por los siguientes motivos: 
➢ Es de código abierto, lo que permite a los usuarios inspeccionar y modificar su 
código. 
➢ Fue diseñado pensando en SDN, lo que lo hace ideal para la investigación y el 
desarrollo de aplicaciones SDN. 
➢ Permite crear redes con host, conmutadores, controladores y enlaces virtuales. 
➢ Posee una documentación extensa y bien organizada, incluyendo una API de 
programación completa. 
Mininet se utiliza ampliamente en la investigación SDN. Se ha utilizado para crear redes 
virtuales para probar nuevas aplicaciones y protocolos SDN. También se ha utilizado para 
simular escenarios de redes realistas para evaluar el rendimiento de los controladores 
SDN. 
D. El diseño de la blockchain 
Una blockchain es una base de datos distribuida que almacena datos en bloques 
encriptados. Los bloques están vinculados entre sí de forma cronológica y se pueden 
acceder a ellos desde cualquier nodo de la red [10], [11]. 
¿Por qué utilizar SDN y blockchain para aplicaciones de seguridad? 
➢ Inmutabilidad: Los datos almacenados en una blockchain son inmutables, lo que 
dificulta su manipulación o falsificación. Esto puede ayudar a mejorar la 
seguridad de las redes SDN al proporcionar un registro detallado de los eventos 
de la red [7], [8]. 
➢ Descentralización: Las blockchains son descentralizadas, lo que significa que no 
hay una autoridad central que controle la red. Esto puede ayudar a mejorar la 
seguridad al dificultar el ataque a la red [8]. 
➢ Trazabilidad: Las blockchains proporcionan un registro detallado de los eventos 
de la red, lo que puede ayudar arastrear el origen de los ataques. Esto puede 
ayudar a los administradores de red a responder rápidamente a los ataques. 
 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
8 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
El diseño de la blockchain que se utilizó en este estudio es el siguiente: 
➢ Cada bloque consta de una marca de tiempo, un índice, un hash, los datos y el 
hash del bloque anterior. 
➢ El hash de cada bloque es un valor único que se utiliza para garantizar la integridad 
de los datos. 
➢ Los datos que se almacenan en la blockchain están estructurados para facilitar el 
análisis. 
 
Figura 2. Diseño de la blockchain para almacenar los registros de las conexiones a la red SDN. Fuente: 
Autores. 
 
Figura 3. Estructura de la clase Python Blocksdnlog. Fuente: Autores. 
En la figura 3 se observa que la estructura de los bloques fue diseñada para almacenar 
dinámicamente la fecha y hora, direcciones MAC, IP de origen y destino de la conexión 
y otros datos que pueden ser variables en dependencia del tipo de protocolo o aplicación. 
La figura 2 muestra que cada bloque requiere información del bloque anterior. Pero dicho 
esto, surge una pregunta: ¿cómo llega allí el primer bloque de la cadena de bloques? El 
primer bloque, o bloque génesis, es un bloque especial. En muchos casos, se agrega 
manualmente o tiene una lógica única que permite agregarlo. Ver figura 4. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
9 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
Figura 4. Función para crear el bloque inicial de la cadena de bloques Blocksdnlog. Fuente: Autores. 
Después de crear un bloque de génesis, la función next_block genera bloques sucesivos 
en la cadena de bloques. Ver figura 5. 
 
Figura 5. Función para crear los bloques de la cadena de bloques Blocksdnlog. Fuente: Autor. 
Esta función tomará el bloque anterior de la cadena como parámetro, creará los datos para 
el bloque que se generará y devolverá el nuevo bloque con los datos apropiados. Cuando 
nuevos bloques contienen información hash de bloques anteriores, la integridad de la 
cadena de bloques aumenta con cada nuevo bloque. Esta funcionalidad se realiza para 
que ningún agente externo a la red pueda reemplazar o modificar la información 
almacenada en la blockchain. La cadena de hashes actúa como una prueba criptográfica 
que ayuda a garantizar que una vez que se agrega un bloque a la cadena de bloques, no se 
puede reemplazar ni eliminar. 
En este trabajo, la cadena de bloques en sí es una simple lista de Python. El primer 
elemento de la lista es el bloque génesis y después siguen los bloques con la información 
de registros de accesos a la red SDN. 
Para facilitar la implementación de este trabajo, la blockchain, el controlador SDN y 
Mininet se encuentran instalados en la misma máquina virtual. Tampoco son 
implementadas en la blockchain las funcionalidades de consenso y descentralización de 
los nodos; aunque si se asegura que sea inmutable. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
10 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
3. Resultados y discusión 
Las aplicaciones SDN, consideradas el "cerebro de la red", obtienen una visión global de 
la misma en tiempo real a través de la interfaz NBI de los controladores. Utilizando esta 
información, las aplicaciones SDN pueden implementar estrategias para manipular las 
redes físicas subyacentes mediante la programación en un lenguaje de alto nivel 
proporcionado por la capa de control. 
¿Cómo implementar una aplicación SDN que permita almacenar registros de accesos a la 
red en una blockchain? 
Este estudio se centra en el desarrollo de una aplicación de seguridad que se ejecuta sobre 
un controlador SDN basado en OpenFlow con el objetivo de demostrar que la mayoría de 
las funcionalidades de un conmutador pueden ser implementadas por software sin la 
necesidad de un hardware dedicado. Fue elegido el controlador POX entre muchos 
controladores por ser de código abierto, poseer buena documentación y estar escrito en 
Python que es un lenguaje de programación muy popular. Para crear la topología de red 
SDN, se ha utilizado Virtual Box y Mininet. En este estudio, se muestra el detalle de 
implementación de la aplicación para almacenar los registros de accesos a una red, así 
como el resultado de la experimentación. 
Con el objetivo de desarrollar la aplicación de seguridad fueron valorados dos enfoques. 
El primero consistía en preestablecer las reglas en las tablas de flujo de forma proactiva; 
mientras que el segundo sería manejar los paquetes directamente de forma reactiva a 
medida que entren al conmutador. A pesar de que el manejo proactivo permite bloquear 
paquetes innecesarios desde la capa de infraestructura, utilizando las ventajas del método 
de instalación de reglas de forma predeterminada, se decidió debido a la flexibilidad que 
ofrece para la gestión de la red y la detección de eventos en tiempo real, manejar los 
paquetes entrantes en modo reactivo. Este enfoque requiere enviar todo el tráfico ARP al 
controlador para su análisis y la aplicación que se está ejecutando en él determina el 
comportamiento de los elementos en la capa de infraestructura. 
En dicha red se desea que solamente los usuarios (host h1 y h2) puedan acceder a la 
misma desde un conmutador. En la figura 6 se muestra el escenario de prueba sobre el 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
11 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
cual se ejecuta la aplicación. El escenario es creado con Mininet y está constituido por un 
conmutador con topología simple, con dos hosts. 
 
 
Figura 6. Escenario de prueba para la implementación de la aplicación SDN-BLOCKCHAIN. 
Para almacenar registros de acceso a la red en la blockchain, la aplicación debe primero 
ser capaz de realizar las funciones básicas de un conmutador de capa 2. Esto implica 
implementar un mecanismo para que los conmutadores aprendan constantemente las 
direcciones MAC de las interfaces y los puertos por los que se observa el tráfico. El 
protocolo ARP es vital para este proceso, ya que proporciona las direcciones MAC de los 
dispositivos de la red. 
 
Figura 7. Fragmento del código fuente de la aplicación SDN-BLOCKCHAIN donde se define el modo de 
trabajo del conmutador en reactivo. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
12 
IV Convención Científica Internacional 2023 
UniversidadCentral “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
Comprobación del funcionamiento de la aplicación: 
A continuación, se muestra el comando que debe ser ejecutado para crear la topología 
simple con dos hosts en Mininet y el comando para invocar la aplicación SDN-
BLOCKCHAIN creada respectivamente: 
sudo mn --topo single,2 --controller remote 
./pox.py forwarding.uclv_SDN_BLOCKCHAIN 
La aplicación SDN_BLOCKCHAIN.py se debe encontrar en el directorio 
POX/POX/FORDWARDING. La figura 8 muestra la red SDN-BLOCKCHAIN en 
funcionamiento. 
 
Figura 8. Red SDN-BLOCKCHAIN en funcionamiento. 
 
El funcionamiento de la aplicación es comprobado realizando un PING desde el host h1 
a h2 en Mininet. La aplicación SDN al detectar tráfico ARP accede a la blockchain y 
genera un bloque por cada mensaje recibido. Ver figura 9. 
 
Figura 9. PING desde h1 a h2. Primer bloque generado en la blockchaing. 
La aplicación SDN-BLOCKCHAIN en modo reactivo le ordena al conmutador s1 a través del 
protocolo Openflow V 1.0 que todo el tráfico proveniente de los nodos h1 y h2 lo reenvíe al 
controlador POX por el puerto 127.0.0.1:6633. El controlador SDN, al recibir el tráfico 
encapsulado en el protocolo OpenFlow activa la aplicación SDN_BLOCKCHAIN_L2_L3_SWITCH 
para realizar las siguientes funciones: 
➢ Detecta el protocolo ARP, actualiza y gestiona la tabla dinámica ARP. 
➢ Detecta el protocolo ICMP, actualiza y gestiona la tabla dinámica IP. 
➢ Descubre la topología de la red. 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
13 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
➢ Realiza las funciones de conmutador L2/L3 y envía las órdenes utilizando el 
protocolo Openflow al conmutador, para establecer las reglas de flujo que 
permitan la comunicación entre h1 y h2. 
➢ Interactúa con la Blockchain y le envía los datos de los registros del tráfico en la 
red de los protocolos ARP, ICMP, IP. Posteriormente la Blockchain, por cada 
paquete de datos enviado por la aplicación SDN crea un bloque inmutable del 
acceso a la red. 
La figura 10 muestra los datos relativos a la comunicación entre h1 y h2 insertados en la 
blockchain. La creación de los bloques en la blockchain es en tiempo real, y posee datos 
de muy alto valor que permiten gestionar dinámicamente los registros de acceso y la 
seguridad de las redes. 
La aplicación propuesta se ha implementado y evaluado en un entorno de red SDN 
simulado. Los resultados de la evaluación muestran que la aplicación es capaz de 
recopilar y analizar los registros de accesos de manera eficiente y precisa. 
 
Figura 10. Bloques insertados en la blockchain asociados al PING desde h1 a h2. 
 
La propuesta de almacenar la información asociada a los protocolos ARP e ICMP en la 
cadena de bloques es una idea interesante que tiene el potencial de mejorar la seguridad 
y la trazabilidad de las redes IP. Sin embargo, es importante considerar la viabilidad de 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
14 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
esta propuesta teniendo en cuenta el volumen de información que puede generarse en la 
red. 
El protocolo ARP es utilizado para resolver las direcciones físicas de las máquinas en una 
red IP. Cada vez que un dispositivo envía un paquete de datos, debe enviar un mensaje 
ARP para determinar la dirección física de la máquina de destino. El protocolo ICMP es 
utilizado para enviar mensajes de control entre dispositivos en una red IP. Estos mensajes 
pueden ser utilizados para realizar tareas como la detección de errores, la medición de 
latencia y la notificación de eventos. 
En una red IP típica, se envían millones de mensajes ARP y ICMP cada segundo. Si toda 
esta información se almacena en la cadena de bloques, el tamaño de la cadena crecerá 
considerablemente. Esto podría suponer un reto para el rendimiento y la escalabilidad de 
la cadena de bloques. 
Para abordar este reto, futuros trabajos podrían considerar las siguientes opciones: 
➢ Utilizar una cadena de bloques de propósito como la implementada en este trabajo, 
para almacenar exclusivamente la información asociada a los protocolos ARP e 
ICMP. Esto podría ayudar a mejorar el rendimiento y la escalabilidad de la cadena 
de bloques. 
➢ Almacenar solo una parte de la información asociada a los protocolos ARP e 
ICMP en la cadena de bloques. Por ejemplo, se podría almacenar solo la 
información de los mensajes ARP y ICMP que son relevantes para la seguridad o 
la trazabilidad. 
➢ Utilizar un sistema de almacenamiento distribuido para almacenar la información 
asociada a los protocolos ARP e ICMP. Esto podría ayudar a distribuir la carga 
de almacenamiento y procesamiento entre múltiples nodos. 
➢ Almacenar solamente la información asociada a los protocolos ARP e ICMP en 
la cadena de bloques de usuarios identificados como posibles intrusos en 
arquitecturas de redes de confianza cero. 
 
 
 
 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
15 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
4. Conclusiones 
La aplicación propuesta representa un avance en la seguridad de las redes SDN al 
combinar las ventajas de las cadenas de bloques y las SDN para proporcionar una solución 
robusta y efectiva para la auditoría de accesos. 
Los autores de esta memoria desarrollaron una aplicación SDN de seguridad utilizando 
la API del controlador POX y el diseño de una blockchain. Esta aplicación permitió 
almacenar los registros de los accesos a la red de los usuarios a los diferentes recursos de 
la misma. 
Los resultados del desarrollo demostraron que la separación del control de los elementos 
de la capa de infraestructura y la integración con cadenas de bloques logra una flexibilidad 
en la red sin precedentes que crea enormes potencialidades en el campo de la seguridad 
de las redes. 
En general, la propuesta de almacenar la información asociada a los protocolos ARP e 
ICMP en la cadena de bloques es una idea prometedora. Sin embargo, es importante en 
trabajos futuros considerar la viabilidad de esta propuesta teniendo en cuenta el volumen 
de información que puede generarse en la red. 
La integración de la tecnología SDN y blockchain presenta una oportunidad única para 
que las empresas construyan infraestructuras de red seguras, transparentes y 
programables. Al aprovechar estas tecnologías, las empresas pueden crear seguridad de 
red descentralizada, ejecución de contratos inteligentes y asignación dinámica de 
recursos. Esto puede conducir a infraestructuras de red más ágiles, flexibles y eficientes 
que pueden escalar globalmente. 
 
 
 
 
 
 
 
 
 
IV Convención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
 
 
16 
IVConvención Científica Internacional 2023 
Universidad Central “Marta Abreu” de Las Villas 
Aplicación de seguridad basada en cadenas de bloques para la auditoría de accesos en Redes 
Definidas por Software 
5. Referencias bibliográficas 
[1] S. W. Turner, M. Karakus, E. Guler, y S. Uludag, «A Promising Integration of SDN 
and Blockchain for IoT Networks: A Survey», IEEE Access, vol. 11, pp. 29800-
29822, 2023, doi: 10.1109/ACCESS.2023.3260777. 
[2] A. Alkhamisi, I. Katib, y S. M. Buhari, «Blockchain -Assisted Hybrid Deep 
Learning-Based Secure Mechanism for Software Defined Networks», en 2023 IEEE 
International Conference on Consumer Electronics (ICCE), ene. 2023, pp. 1-8. doi: 
10.1109/ICCE56470.2023.10043401. 
[3] A. Rahman et al., «SmartBlock-SDN: An Optimized Blockchain-SDN Framework 
for Resource Management in IoT», IEEE Access, vol. 9, pp. 28361-28376, 2021, 
doi: 10.1109/ACCESS.2021.3058244. 
[4] A. Mukhejee, R. Chatterjee, y J. K. Mandal, «A Proposed Technique for 
Management of Flow Rules in SDN using Blockchain», en 2022 International 
Conference on Electrical, Computer, Communications and Mechatronics 
Engineering (ICECCME), nov. 2022, pp. 1-5. doi: 
10.1109/ICECCME55909.2022.9987763. 
[5] T. Alharbi, «Deployment of Blockchain Technology in Software Defined Networks: 
A Survey», IEEE Access, vol. 8, pp. 9146-9156, 2020, doi: 
10.1109/ACCESS.2020.2964751. 
[6] C. Balachandran, P. A. C, G. Ramachandran, y B. Krishnamachari, «EDISON: A 
Blockchain-based Secure and Auditable Orchestration Framework for Multi-domain 
Software Defined Networks», en 2020 IEEE International Conference on 
Blockchain (Blockchain), nov. 2020, pp. 144-153. doi: 
10.1109/Blockchain50366.2020.00025. 
[7] J. Yan, B. Yang, L. Su, y S. He, «Blockchain based Software Defined Perimeter 
(SDP) in Support of Authentication and Authorization», en 2022 International 
Conference on Blockchain Technology and Information Security (ICBCTIS), jul. 
2022, pp. 40-42. doi: 10.1109/ICBCTIS55569.2022.00020. 
[8] A. Rahman et al., «On the Integration of Blockchain and SDN: Overview, 
Applications, and Future Perspectives», J. Netw. Syst. Manag., vol. 30, n.o 4, p. 73, 
sep. 2022, doi: 10.1007/s10922-022-09682-4. 
[9] S. Shang, A. Zhou, M. Tan, X. Wang, y A. Liu, «Access Control Audit and 
Traceability Forensics Technology Based on Blockchain», en 2022 4th 
International Conference on Frontiers Technology of Information and Computer 
(ICFTIC), dic. 2022, pp. 932-937. doi: 10.1109/ICFTIC57696.2022.10075123. 
[10] Y. E. Oktian, T.-T.-H. Le, U. Jo, y H. Kim, «Blockchain-Powered Bandwidth 
Trading on SDN-Enabled Edge Network», IEEE Access, vol. 10, pp. 114024-
114039, 2022, doi: 10.1109/ACCESS.2022.3217534. 
[11] P. Alemany, R. Vilalta, R. Munoz, R. Casellas, y R. Martinez, «Evaluation of 
the abstraction of optical topology models in blockchain-based data center 
interconnection», J. Opt. Commun. Netw., vol. 14, n.o 4, pp. 211-221, abr. 2022, 
doi: 10.1364/JOCN.447833.

Continuar navegando