Sie sind auf Seite 1von 23

“IMP

LEM
ENT
ACI
ÓN
DE
UN
ANTI
BOT
NET
BAS
ADO
EN
RED
ES
NEU
RON
ALE
2 de diciembre de 2009
S
PAR
A
PRO
TEG
ER
LAS
RED
ES
INF
ORM
ÁTIC
“Año de la Unión Nacional Frente a la Crisis
AS
EMP
RES Externa”
ARI
ALE
S”

UNS | Informe Final Practica Sistemas de Información


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

PROYECTO DE INVESTIGACION | EAPISI | 2009-I

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

I. Introducción
Se estima que uno de cada cuatro ordenadores con conexión a
Internet se encuentra infectado, sin saberlo su dueño, por un código
malicioso. Estos equipos son utilizados por los delincuentes
informáticos para crear redes de aparatos "zombis" (a su servicio y
manejados de forma remota) con los que cometer todo tipo de
estafas (genera Spam y comente otros tipos de delitos y fraudes). A
estas redes se las conoce como botnets (redes de robots) y cuentan
con la ventaja de que aprovechan todo el potencial de computación
de los ordenadores infectados y dificultan la localización del
delincuente.

Últimamente se oye hablar mucho acerca de las botnets y los peligros


que suponen tanto a usuarios como a empresas. Una botnet
generalmente y para quien no lo sepa no deja de ser un gusano que
recibe órdenes para enviar peticiones de conexión a un servidor o
“IMPLEMENTACIÓN
web. El peligro real que suponeDE uno
UN ANTIBOTNET
solo es nuloBASADO EN
pero cuando el
UNS
gusano se ha propagado
REDES a centenares
NEURONALES PARA oPROTEGER
incluso miles
LASde ordenadores
REDES
se convierte en un serio problema.
INFORMÁTICAS EMPRESARIALES ”
Su funcionamiento es simple, cada bot se propaga por todos los
ordenadores que puede y el conjunto de todos ellos forman una
botnet que reciben órdenes para atacar conjuntamente un servidor.
Las órdenes pueden ser recibidas desde multitud de medios, incluso
medios curiosos como lo puede ser una cuenta de twenty. Una vez
reciben la orden, actúan como un gran ejercito en conjunto enviando
y saturando los servidores a atacar.

Para las empresas las botnets representan una gran amenaza en


cuanto a pérdidas económicas, por ejemplo empresas que la mayoría
de sus servicios se prestan o publicitan por internet. Por otra parte
también podría ser que el propietario de la botnet contactara con la
empresa y pidiera una cantidad económica para dejar de atacar.

No sólo las empresas reciben este tipo de ataques, posiblemente


cualquier que tenga una web o servidor podría recibir un ataque de
estos, dependiendo de las intenciones del atacante ya sea por
ejemplo ideas políticas.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Por otro lado, montarse una botnet parece un negocio asegurado, hay
muchísimas que están buscadas por la gran cantidad de ordenadores
infectados que tienen, muchos de los creadores a veces venden las
botnets pudiendo ganar centenares o miles de dólares o euros.

Una de nuestras propuestas como grupo de encargado de brindar


Seguridad Informática es desarrollar un Antibotnet el cual no es más
que un botnet inteligente el cual apoyado en la Inteligencia Artificial,
específicamente en la rama de Redes Neuronales, se tratara de
controlar y eliminar el ataque de estos gusanos que como hemos
visto es muy perjudicial para la sociedad.

II. Descripción del Problema


Hace algún tiempo, el único mecanismo capaz de comprometer
la seguridad de nuestros datos era insertar un disco
contaminado en nuestro PC. En esa época, para mantener a
salvo, prácticamente bastaba con evitar “prácticas de riesgo” y
disponer de un buen antivirus.
Más tarde, el desarrollo de las redes internas y externas, así
como la llegada de Internet, abrieron nuevas posibilidades de
ataques, y nos llevaron a la era de la seguridad de red. En la
actualidad, el uso masivo de las aplicaciones y servicios web
entraña nuevos riesgos, con lo que la seguridad informática ha
alcanzado su tercera etapa: “La era de la seguridad de las
aplicaciones”.
Como resultado de esta evolución, los virus actuales suponen
una terrible amenaza que no puede ser ignorada por ningún
tipo de usuario y que crece exponencialmente.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Pese a que muchos de los virus actuales combinan características de


varios tipos diferentes para conseguir ser más “letales”, en general
podemos distinguir los siguientes tipos: Virus de Fichero, Gusanos,
Bulos o Falsos Virus (Hoaxes), Vulnerabilidades o agujeros de
seguridad (exploits), Troyanos (Trojans), Puertas traseras o Troyanos
de Administración remota (backdoors), Redes de robots o “botnets”,
Software espía (Spyware), Publicidad no deseada (Adware),
Secuestradores de navegador y de DNS, Marcadores telefónicos
(dialers).

Un gran número de equipos infectados con un determinado troyano


de control remoto, constituyen una auténtica red de ordenadores
esclavizados, denominadas “botnets” en inglés.
Dado el enorme “poder de fuego” de estas redes, a menudo son
utilizadas como plataforma para el envío de correo basura o para
ataques de denegación de servicio contra servidores web o de otros
tipos.
Esto se ha convertido en un negocio lucrativo, ya que algunos
hackers llegan incluso a alquilar estas redes a los spammers, por
supuesto sin el consentimiento de los propietarios de los
ordenadores.

III. Marco Teórico


Para obtener un mejor panorama del problema veremos en forma
más detallada los conceptos de botnets, redes neuronales.

III.1.BOTNES EL PROBLEMA Y SUS BENEFICIOS


Botnet es un término que hace referencia a un conjunto de robots
informáticos o bots, que se ejecutan de manera autónoma y

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

automática. El artífice de la botnet puede controlar todos los


ordenadores/servidores infectados de forma remota y
normalmente lo hace a través del IRC; las nuevas versiones de
estas botnets se están enfocando hacia entornos de control
mediante HTTP con lo que el control de estas maquinas será
muchos más simple. Sus fines normalmente son poco éticos.

III.1.1.¿Cómo se forma una Botnet?


En los sistemas Windows la forma más habitual de expansión de
los "robots" suele ser en el uso de cracks u otro software
relacionado con la piratería. Este tipo software suele contener
malware el cual, una vez el programa se ejecuta, puede escanear
su red de área local, disco duro, puede intentar propagarse usando
vulnerabilidades conocidas de Windows, etc.
En otros entornos como UNIX, GNU/Linux o BSD la forma más
clásica de ataque a servidores para construir y expandir una
Botnet es por telnet o SSH por medio del sistema prueba-error:
probando usuarios comunes y contraseñas al azar contra todas las
IPs que se pueda de forma sistemática o bien mediante ataques a
bugs muy conocidos dado que los administradores descuidados
dejan sin parchear.

III.1.2.Uso habitual de las botnets


Para enviar Spam a direcciones de correo electrónico, para la
descarga de ficheros (normalmente de contenido ilegal) que
ocupan gran espacio y consumen gran ancho de banda, para
realizar ataques de tipo DDoS (Distributed Denial Of Service).
Normalmente los creadores de estas Botnets venden sus servicios
a los Spammers.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

III.1.3.¿Cómo se crea una botnet?

El primer camino para la creación de una botnet lo constituyen sin


duda las vulnerabilidades del software. Es cierto que la mayoría de
los sistemas empresariales están administrados por profesionales
y al menos en teoría deberían estar bien parcheados y protegidos
sin embargo estos no son los objetivos de las botnets.

El objetivo principal de una botnet en su génesis son los millones


de ordenadores domésticos, los cuales están conectados a la red
sin reunir los requisitos mínimos de seguridad, sistemas operativos
sin los parches adecuados, antivirus y firewalls desfasados o
ausencia total de este tipo de protecciones.
El segundo método, basado en el mismo principio, es la ingeniería
social.

De nuevo los usuarios con menos conocimientos en seguridad


informática son los que ponen el peligro el sistema; la cadena se
vuelve a romper por el eslabón más débil, el usuario doméstico, el
cual por desconocimiento descarga contenidos de páginas web de
origen dudoso y abre todo tipo de correos que llegan a su cuenta,
facilitando así la entrada a su ordenador de todo tipo de código
malicioso, que lo convertirá en un nuevo miembro de la botnet,
pudiendo ser y siendo utilizado para la infección de otras
máquinas.

Un aspecto importante sobre la creación de botnets es su


automatización. No debemos pensar en ningún hacker aislado en
su domicilio infectando una máquina tras otra hasta conseguir el
número mágico. Como hemos visto son las máquinas más
desprotegidas las preferidas por los creadores de botnets, los
«script writers», centran su atención en vulnerabilidades que no
por conocidas dejan de ser útiles para su propósito, ya que esta
característica les permite la creación de un código que de forma
automática y autónoma explore la red en busca de sus objetivos y
los infecte una vez localizados.

III.1.4.Proceso de ataque de los Botnets

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Usando una Botnet para enviar Spam.

1. El operador de la botnet manda virus, gusanos, etc; a los usuarios.


2. Los PC entran en el IRC o se usa otro medio de comunicación.
3. El Spammer le compra acceso al operador de la Botnet.
4. El Spammer manda instrucciones vía un servidor de IRC u otro
canal a los PC infectados.
5. Causando que éstos envíen Spam al los servidores de correo.

III.2.Redes Neuronales

III.2.1. ¿Qué son las redes neuronales?

El cerebro es uno de las cumbres de la evolución biológica, ya que


es un gran procesador de información. Entre sus características
podemos destacar, que es capaz de procesar a gran velocidad
grandes cantidades de información procedentes de los sentidos,
combinarla o compararla con la información almacenada y dar
respuestas adecuadas. Además es de destacar su capacidad para
aprender a representar la información necesaria para desarrollar
tales habilidades, sin instrucciones explícitas para ello.

Los científicos llevan años estudiándolo y se han desarrollado


algunos modelos matemáticos que tratan de simular su
comportamiento. Estos modelos se han basado sobre los estudios
de las características esenciales de las neuronas y sus conexiones.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Aunque estos modelos no son más que aproximaciones muy


lejanas de las neuronas biológicas, son muy interesantes por su
capacidad de aprender y asociar patrones parecidos lo que nos
permite afrontar problemas de difícil solución con la programación
tradicional. Se han implementado en computadoras y equipos
especializados para ser simulados.

Con el paso de los años, los modelos de neuronas iniciales se han


ido complicando, introduciendo nuevos conceptos llegando a ser
un paradigma de computación (equivalente a las máquinas de
Turing) basado en el comportamiento de las neuronas.

III.2.2.Red Neuronal Artificial

Las redes de neuronas artificiales (denominadas habitualmente como


RNA o en inglés como: "ANN") son un paradigma de aprendizaje y
procesamiento automático inspirado en la forma en que funciona el
sistema nervioso de los animales. Se trata de un sistema de
interconexión de neuronas en una red que colabora para producir un
estímulo de salida. En inteligencia artificial es frecuente referirse a ellas
como redes de neuronas o redes neuronales.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

III.2.3.Funcionamiento

Las redes neuronales consisten en una simulación de las


propiedades observadas en los sistemas neuronales biológicos a
través de modelos matemáticos recreados mediante mecanismos
artificiales (como un circuito integrado, un ordenador o un
conjunto de válvulas). El objetivo es conseguir que las máquinas
den respuestas similares a las que es capaz de dar el cerebro que
se caracterizan por su generalización y su robustez.

Una red neuronal se compone de unidades llamadas neuronas.


Cada neurona recibe una serie de entradas a través de
interconexiones y emite una salida. Esta salida viene dada por tres
funciones:
1. Una función de propagación (también conocida como función de
excitación), que por lo general consiste en el sumatorio de cada
entrada multiplicada por el peso de su interconexión (valor
neto). Si el peso es positivo, la conexión se denomina
excitatoria; si es negativo, se denomina inhibitoria.
2. Una función de activación, que modifica a la anterior. Puede no
existir, siendo en este caso la salida la misma función de
propagación.
3. Una función de transferencia, que se aplica al valor devuelto
por la función de activación. Se utiliza para acotar la salida de la
neurona y generalmente viene dada por la interpretación que
queramos darle a dichas salidas. Algunas de las más utilizadas
son la función sigmoidea (para obtener valores en el intervalo
[0,1]) y la tangente hiperbólica (para obtener valores en el
intervalo [-1,1]).
I.1.1.1.Estructura

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

La mayoría de los científicos coinciden en que una RNA es muy


diferente en términos de estructura de un cerebro animal. Al igual
que el cerebro, una RNA se compone de un conjunto masivamente
paralelo de unidades de proceso muy simples y es en las
conexiones entre estas unidades donde reside la inteligencia de la
red. Sin embargo, en términos de escala, un cerebro es muchísimo
mayor que cualquier RNA creada hasta la actualidad, y las
neuronas artificiales también son más simples que su
contrapartida animal.
Biológicamente, un cerebro aprende mediante la reorganización de
las conexiones sinápticas entre las neuronas que lo componen. De
la misma manera, las RNA tienen un gran número de procesadores
virtuales interconectados que de forma simplificada simulan la
funcionalidad de las neuronas biológicas. En esta simulación, la
reorganización de las conexiones sinápticas biológicas se modela
mediante un mecanismo de pesos, que son ajustados durante la
fase de aprendizaje. En una RNA entrenada, el conjunto de los
pesos determina el conocimiento de esa RNA y tiene la propiedad
de resolver el problema para el que la RNA ha sido entrenada.
Por otra parte, en una RNA, además de los pesos y las conexiones,
cada neurona tiene asociada una función matemática denominada
función de transferencia. Dicha función genera la señal de salida
de la neurona a partir de las señales de entrada. La entrada de la
función es la suma de todas las señales de entrada por el peso
asociado a la conexión de entrada de la señal. Algunos ejemplos
de entradas son la función escalón de Heaviside, la lineal o mixta,
la sigmoide y la función gaussiana, recordando que la función de
transferencia es la relación entre la señal de salida y la entrada.
I.1.2. Ventajas
Las redes neuronales artificiales (RNA) tienen muchas ventajas
debido a que están basadas en la estructura del sistema nervioso,
principalmente el cerebro.
• Aprendizaje: Las RNA tienen la habilidad de aprender mediante
una etapa que se llama etapa de aprendizaje. Esta consiste en
proporcionar a la RNA datos como entrada a su vez que se le
indica cuál es la salida (respuesta) esperada.
• Auto organización: Una RNA crea su propia representación de la
información en su interior, descargando al usuario de esto.
• Tolerancia a fallos: Debido a que una RNA almacena la
información de forma redundante, ésta puede seguir
respondiendo de manera aceptable aun si se daña
parcialmente.
• Flexibilidad: Una RNA puede manejar cambios no importantes
en la información de entrada, como señales con ruido u otros

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

cambios en la entrada (ej. si la información de entrada es la


imagen de un objeto, la respuesta correspondiente no sufre
cambios si la imagen cambia un poco su brillo o el objeto
cambia ligeramente)
• Tiempo real: La estructura de una RNA es paralela, por lo cuál si
esto es implementado con computadoras o en dispositivos
electrónicos especiales, se pueden obtener respuestas en
tiempo real.
I.1.1. Tipología de la RNA

I.1.1.1.Modelos
Existe una serie de modelos que aparecen en la mayoría de
estudios académicos y la bibliografía especializada.
• Perceptrón
• Adaline
• Perceptrón multicapa
• Memorias asociativas
• Máquina de Bolzman
• Máquina de Cauchy
• Propagación hacia atrás (backpropagation)
• Redes de Elman
• Redes de Hopfield
• Red de contrapropagación
• Redes de neuronas de base radial
• Redes de neuronas de aprendizaje competitivo
• Mapas Autoorganizados (RNA) (Redes de Kohonen)
• Crecimiento dinámico de células
• Gas Neuronal Creciente
• Redes ART (Adaptative Resonance Theory)

I.1.1.1.Topologia
Una primera clasificación de las redes de neuronas artificiales que
se suele hacer es en función del patrón de conexiones que
presenta. Así se definen tres tipos básicos de redes:
• Dos tipos de redes de propagación hacia delante o acíclicas en
las que todas las señales van desde la capa de entrada hacia la
salida sin existir ciclos, ni conexiones entre neuronas de la
misma capa.
○ Monocapa. Ejemplos: perceptrón, Adaline.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

○ Multicapa. Ejemplos: perceptrón multicapa.


• Las redes recurrentes que presentan al menos un ciclo cerrado
de activación neuronal. Ejemplos: Elman, Hopfield, máquina de
Bolzman.
I.1.1.1.Aprendizaje
Una segunda clasificación que se suele hacer es en función del tipo
de aprendizaje de que es capaz (si necesita o no un conjunto de
entrenamiento supervisado). Para cada tipo de aprendizaje
encontramos varios modelos propuestos por diferentes autores:
• Aprendizaje supervisado: necesitan un conjunto de datos de
entrada previamente clasificado o cuya respuesta objetivo se
conoce. Ejemplos de este tipo de redes son: el perceptrón
simple, la red Adaline, el perceptrón multicapa y la memoria
asociativa bidireccional.
• Aprendizaje no supervisado o auto organizado: no necesitan de
tal conjunto previo. Ejemplos de este tipo de redes son: las
memorias asociativas, las redes de Hopfield, la máquina de
Bolzman y la máquina de Cauchy, las redes de aprendizaje
competitivo, las redes de Kohonen o mapas auto organizados y
las redes de resonancia adaptativa (ART)
• Redes híbridas: son un enfoque mixto en el que se utiliza una
función de mejora para facilitar la convergencia. Un ejemplo de
este último tipo son las redes de base radial.
• Aprendizaje reforzado: se sitúa a medio camino entre el
supervisado y el auto organizado.
I.1.1.1.Tipo de Entrada
Finalmente también se pueden clasificar las RNAs según sean
capaces de procesar información de distinto tipo en:
• Redes analógicas: procesan datos de entrada con valores
continuos y, habitualmente, acotados. Ejemplos de este tipo de
redes son: Hopfield, Kohonen y las redes de aprendizaje
competitivo.
• Redes discretas: procesan datos de entrada de naturaleza
discreta; habitualmente valores lógicos booleanos. Ejemplos de
este segundo tipo de redes son: las máquinas de Bolzman y
Cauchy, y la red discreta de Hopfield.
I.1.1. Aplicaciones
Las características de las RNA las hacen bastante apropiadas para
aplicaciones en las que no se dispone a priori de un modelo
identificable que pueda ser programado, pero se dispone de un
conjunto básico de ejemplos de entrada (previamente clasificados
o no). Asimismo, son altamente robustas tanto al ruido como a la
disfunción de elementos concretos y son fácilmente paralelizables.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Esto incluye problemas de clasificación y reconocimiento de


patrones de voz, imágenes, señales, etc. Asimismo se han utilizado
para encontrar patrones de fraude económico, hacer predicciones
en el mercado financiero, hacer predicciones de tiempo
atmosférico, etc.
También se pueden utilizar cuando no existen modelos
matemáticos precisos o algoritmos con complejidad razonable; por
ejemplo la red de Kohonen ha sido aplicada con un éxito más que
razonable al clásico problema del viajante (un problema para el
que no se conoce solución algorítmica de complejidad polinómica).
Otro tipo especial de redes neuronales artificiales se ha aplicado
en conjunción con los algoritmos genéticos (AG) para crear
controladores para robots. La disciplina que trata la evolución de
redes neuronales mediante algoritmos genéticos se denomina
Robótica Evolutiva. En este tipo de aplicación el genoma del AG lo
constituyen los parámetros de la red (topología, algoritmo de
aprendizaje, funciones de activación, etc.) y la adecuación de la
red viene dada por la adecuación del comportamiento exhibido por
el robot controlado (normalmente una simulación de dicho
comportamiento).
I.2. Redes Informáticas
I.2.1. ¿Que es una red informática?
Una red es un sistema donde los elementos que lo componen (por
lo general ordenadores) son autónomos y están conectados entre
sí por medios físicos y/o lógicos y que pueden comunicarse para
compartir recursos. Independientemente a esto, definir el concepto
de red implica diferenciar entre el concepto de red física y red de
comunicación.
Respecto a la estructura física, los modos de conexión física, los
flujos de datos, etc; una red la constituyen dos o más ordenadores
que comparten determinados recursos, sea hardware (impresoras,
sistemas de almacenamiento...) o sea software (aplicaciones,
archivos, datos...). Desde una perspectiva más comunicativa,
podemos decir que existe una red cuando se encuentran
involucrados un componente humano que comunica, un
componente tecnológico (ordenadores, televisión,
telecomunicaciones) y un componente administrativo (institución o
instituciones que mantienen los servicios). En fin, una red, más
que varios ordenadores conectados, la constituyen varias personas
que solicitan, proporcionan e intercambian experiencias e
informaciones a través de sistemas de comunicación.
I.2.2. Estructura
Las redes tienen tres niveles de componentes: software de
aplicaciones, software de red y hardware de red.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

• El Software de Aplicaciones, programas que se comunican con


los usuarios de la red y permiten compartir información (como
archivos, gráficos o vídeos) y recursos (como impresoras o
unidades de disco).
• El software de Red, programas que establecen protocolos para
que los ordenadores se comuniquen entre sí. Dichos protocolos
se aplican enviando y recibiendo grupos de datos formateados
denominados paquetes.
• El Hardware de Red, formado por los componentes materiales
que unen los ordenadores. Dos componentes importantes son
los medios de transmisión que transportan las señales de los
ordenadores (típicamente cables o fibras ópticas) y el
adaptador de red, que permite acceder al medio material que
conecta a los ordenadores, recibir paquetes desde el software
de red y transmitir instrucciones y peticiones a otros
ordenadores.
En resumen, las redes están formadas por conexiones entre
grupos de ordenadores y dispositivos asociados que permiten a los
usuarios la transferencia electrónica de información. En estas
estructuras, los diferentes ordenadores se denominan estaciones
de trabajo y se comunican entre sí a través de un cable o línea
telefónica conectada a los servidores.
Dichos servidores son ordenadores como las estaciones de trabajo
pero con funciones administrativas y están dedicados en exclusiva
a supervisar y controlar el acceso a la red y a los recursos
compartidos.
Además de los ordenadores, los cables o la línea telefónica, existe
en la red el módem para permitir la transferencia de información
convirtiendo las señales digitales a analógicas y viceversa,
también existen en esta estructura los llamados Hubs y Switches
con la función de llevar a cabo la conectividad.
I.1.1. Tipos de Redes
Las redes según sea la utilización por parte de los usuarios pueden
ser:
Redes Compartidas, aquellas a las que se une un gran número de
usuarios, compartiendo todas las necesidades de transmisión e
incluso con transmisiones de otra naturaleza.
Redes exclusivas, aquellas que por motivo de seguridad, velocidad
o ausencia de otro tipo de red, conectan dos o más puntos de
forma exclusiva. Este tipo de red puede estructurarse en redes
punto a punto o redes multipunto.
Otro tipo se analiza en cuanto a la propiedad a la que pertenezcan
dichas estructuras, en este caso se clasifican en:

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Redes privadas, aquellas que son gestionadas por personas


particulares, empresa u organizaciones de índole privado, en este
tipo de red solo tienen acceso los terminales de los propietarios.
Redes públicas, aquellas que pertenecen a organismos estatales y
se encuentran abiertas a cualquier usuario que lo solicite mediante
el correspondiente contrato.
Otra clasificación, la más conocida, es según la cobertura del
servicio en este caso pueden ser:
Redes LAN (Local Area Network), redes MAN (Metropolitan Area
Network), redes WAN (Wide Area Network), redes internet y las
redes inalámbricas. (Para más información sobre esta clasificación,
puede consultar la bibliografía del trabajo).
I.1.2. Topología de Redes
Cuando se menciona la topología de redes, se hace referencia a la
forma geométrica en que están distribuidos las estaciones de
trabajo y los cables que las conectan. Su objetivo es buscar la
forma más económica y eficaz de conexión para, al mismo tiempo,
aumentar la fiabilidad del sistema, evitar los tiempos de espera en
la transmisión, permitir un mejor control de la red y lograr de
forma eficiente el aumento del número de las estaciones de
trabajo.
Dentro de las topologías que existen, las más comunes son:

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

Aunque no son las más comunes también existen otras


topologías generadas por las combinaciones entre las ya
mencionadas anteriormente como es el caso de:

I.1.3. Protocolo de Redes


Los protocolo de red son una o más normas estándar que
especifican el método para enviar y recibir datos entre varios
ordenadores. Su instalación está en correspondencia con el tipo de
red y el sistema operativo que la computadora tenga instalado.
No existe un único protocolo de red, y es posible que en un mismo
ordenador coexistan instalados varios de ellos, pues cabe la
posibilidad que un mismo ordenador pertenezca a redes distintas.
La variedad de protocolos puede suponer un riesgo de seguridad:
cada protocolo de red que se instala en un sistema queda
disponible para todos los adaptadores de red existentes en dicho
sistema, físicos (tarjetas de red o módem) o lógicos (adaptadores

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

VPN). Si los dispositivos de red o protocolos no están


correctamente configurados, se puede dar acceso no deseado a
los recursos de la red. En estos casos, la regla de seguridad más
sencilla es tener instalados el número de protocolos indispensable;
en la actualidad y en la mayoría de los casos debería bastar con
sólo TCP/IP.
Dentro de la familia de protocolos se pueden distinguir
Protocolos de transporte:
• ATP (Apple Talk Transaction Protocol)
• NetBios/NetBEUI
• TCP (Transmission Control Protocol)
Protocolos de red:
• DDP (Delivery Datagram Protocol)
• IP (Internet Protocol)
• IPX (Internet Packed Exchange)
• NetBEUI Desarrollado por IBM y Microsoft.
Protocolos de aplicación:
• AFP (Appletalk File Protocol)
• FTP (File Transfer Protocol)
• Http (Hyper Text transfer Protocol)
Dentro de los protocolos antes mencionados, los más utilizados
son:
• IPX/SPX, protocolos desarrollados por Novell a principios de los
años 80 los cuales sirven de interfaz entre el sistema operativo
de red Netware y las distintas arquitecturas de red. El protocolo
IPX es similar a IP, SPX es similar a TCP por lo tanto juntos
proporcionan servicios de conexión similares a TCP/IP.
• NETBEUI/NETBIOS (Network Basic Extended User Interface /
Network Basic Input/Output System) NETBIOS es un protocolo
de comunicación entre ordenadores que comprende tres
servicios (servicio de nombres, servicio de paquetes y servicio
de sesión, inicialmente trabajaba sobre el protocolo NETBEUI,
responsable del transporte de datos. Actualmente con la
difusión de Internet, los sistemas operativos de Microsoft más
recientes permiten ejecutar NETBIOS sobre el protocolo TCP/IP,
prescindiendo entonces de NETBEUI.
• APPLE TALK es un protocolo propietario que se utiliza para
conectar computadoras Macintosh de Apple en redes locales.
• TCP/IP (Transmission Control Protocol/Internet Protocol) este
protocolo fue diseñado a finales de los años 60, permite enlazar
computadoras con diferentes sistemas operativos. Es el
protocolo que utiliza la red de redes Internet.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

I. Desarrollo
A continuación se detallara la fase de desarrollo del antibotnet el
cual estará basado en redes neuronales pues tiene como
necesidad aprender sobre los botnets para poder contrarrestarlos.

A)Fase de Análisis

Requerimientos Funcionales
1. El antibonet permitirá realizar una inspección de las maquinas
afectadas con el botnet analizando, estudiando y aprendiendo
(en este proceso viene a recalar las redes neuronales) del
botnet.

2. El antibotnet permitirá construir los anticuerpos necesarios para


eliminar los botnets.

3. El antibotnet permitirá proteger las maquinas aun no infectadas


del servidor cerrando el paso de las posibles amenazas que
provengan de la misma fuente estudiada (gracias al estudio
realizado por el software con el que cuentan los antibotnets
basado en redes neuronales).

Requerimientos No Funcionales
1. El antibotnet se mantendrá residente las 24 horas del día.

2. El tiempo de análisis de una maquina infectada no debe


exceder más de 1 min.

A)Fase de Diseño
1. Diseño de Software
– Se hará uso de la herramienta de programación Visual C+
+ 6.0, el Service Pack 6 para el Visual C++ 6.0 y
finalmente el PSDK-x86, software basado en redes
neuronales.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

A continuación se presentan los pasos a seguir, para su implantación:


➢ Ahora vamos a configurar el Visual C++ 6.0

➢ En la
parte
de
Options, nos vamos a la pestaña Directories y hacemos clic
donde indica la flechita.

➢ Luego miramos en la parte de Show directories for: Incluye Files


(Y para qué?. Pues ahi no solo dice Include Files sino también
Library Files, Source Files y debemos configurar para esos 3

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

directorios el PDSK) y al abrirse la nueva ventana le damos clic


en los… para buscar la carpeta INCLUDE que instalo PSDK-x86.
En mi caso se encuentra en C:\Archivos de programa\Microsoft
Platform SDK\Include y pulsamos OK.

➢ Ahora debemos colocar el C:\Archivos de programa\Microsoft


Platform SDK\Include, en la primera línea usando las flechitas y
debe quedarnos así:

➢ Hasta ahí solo hemos configurado la parte de Include files, se


necesita hacer lo mismo para Library files y luego para Source
files.

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

➢ Se procederá agregar el código necesario para la elaboración


del antibotnet.

1. Diseño de Hardware
Se necesitara un servidor robusto q cuente con las siguientes
características mínimas:
Procesador Phenom II x4 955
Placa Madre ASUS M4A78T-E
4GB de ram
Disco Duro de 500gb
Unidad de DVD
Tarjeta de Red
Monitor
Teclado Multimedia
Mouse

UNS |Proyecto de Investigación


“IMPLEMENTACIÓN DE UN ANTIBOTNET BASADO EN
REDES NEURONALES PARA PROTEGER LAS REDES
INFORMÁTICAS EMPRESARIALES ”

I. Conclusiones
Se ha podido apreciar que las organizaciones criminales pueden
controlar miles de máquinas en la red y utilizarlas para la extorsión,
obtención de información o la estafa a través de las botnets, pero no
olvidemos que las botnets sólo son una de las formas que pueden ser
utilizadas por los delincuentes para aprovechar las nuevas tecnologías,
las cuales proporcionan nuevas herramientas para cometer delitos que
no son tan nuevos, a la vez que permiten el surgimiento de nuevos tipos
delictivos.
Hoy en día el perfil del individuo que comete delitos en la red ha
cambiado: el apasionado de la informática que de una forma un tanto
oportunista aprovechaba sus conocimientos para obtener algún beneficio
se ha convertido en un miembro de pleno derecho del crimen
organizado, aprovechando sus estructuras y capacidad para blanquear
los beneficios obtenidos. Internet es quizá el proyecto tecnológico más
apasionante en el que se ha involucrado el ser humano. La red ofrece
posibilidades antes impensables para todos nosotros, por ello su defensa
no sólo debe ser una tarea encomendada a las Fuerzas y Cuerpo de
Seguridad sino que todos deben involucrarse activamente, desde las
empresas a los simples usuarios, tomando conciencia del objetivo común
de poder disfrutar de la red de una forma libre y segura.

UNS |Proyecto de Investigación