Management Intelligent Systems Group
Management Intelligent Systems Group
Management Intelligent Systems Group
http://sicodinet.unileon.es
(*) Este trabajo está soportado por el proyecto de investigación DPI 2001–0105 del MCT.
Índice
INTRODUCCIÓN .......................................................................................................... 3
OSSIM ............................................................................................................................. 5
LÓGICA DIFUSA APLICADA AL OSSIM ............................................................... 7
PRIORIZACIÓN ............................................................................................................... 8
VALORACIÓN DE RIESGOS ............................................................................................. 9
DISEÑO DEL SISTEMA BORROSO........................................................................ 10
SUBSISTEMA DE PRIORIZACIÓN ................................................................................... 10
TIPO DE ATAQUE ...................................................................................................... 10
Escaneo de Puertos ................................................................................................ 11
Autentificación........................................................................................................ 13
Negación de servicio. DENIAL of SERVICE (DoS) ............................................... 15
Modificación-Daño................................................................................................. 17
Explotación de Errores........................................................................................... 19
¾ Type Ataque .................................................................................................... 20
INVENTARIO DE SISTEMAS ......................................................................................... 23
Puertos.................................................................................................................... 23
Firewall .................................................................................................................. 23
Sistema Operativo .................................................................................................. 24
¾ Type Puertos ................................................................................................... 25
¾ Type Firewall.................................................................................................. 25
¾ Tipo SO ........................................................................................................... 26
POLÍTICAS DE ACCESO .............................................................................................. 27
¾ Type Privilegios (Priv_Acceso) ...................................................................... 27
VARIABLES INTERMEDIAS Y FUNCIONAMIENTO DEL SUBSISTEMA................................. 28
MAPA CONCEPTUAL – PRIORIZACIÓN ........................................................................ 32
SUBSISTEMA DE VALORACIÓN DE RIESGOS.................................................. 33
Prioridad ................................................................................................................ 33
Probabilidad........................................................................................................... 33
Valor del Activo ...................................................................................................... 33
Amenaza ................................................................................................................. 34
VARIABLES INTERMEDIAS Y FUNCIONAMIENTO DEL SUBSISTEMA................................. 35
MAPA CONCEPTUAL – VALORACIÓN DE RIESGOS ....................................................... 36
MAPA CONCEPTUAL - ROADMAP ....................................................................... 37
CASO DE EJEMPLO .................................................................................................. 38
FUENTES CONSULTADAS ...................................................................................... 40
–2–
Technical Report #MISYG-2004-05
Introducción
“En el éxito de una intrusión, una vez franqueadas las defensas perimetrales se
sucede el compromiso de decenas de máquinas. Existe un flujo de conexiones
permanentes y duraderas durante varias horas, conexiones anómalas que dibujan un
camino completamente contrario a lo que debería ser aceptable; procedentes desde el
exterior crean un puente de entrada a la red interna donde una tras otra van
comprometiendo más máquinas trazando un camino cada vez más anómalo, y
peligroso..
Los usuarios y administradores de la organización víctima, que en ese momento
se encuentran trabajando en las máquinas nunca notan nada extraño en el momento, y
rara vez localizan el ataque a posteriori.”
La Seguridad Informática se está convirtiendo en estos últimos años en uno de
los sectores más importantes de este campo, ya que no hay que olvidarlo, afecta de
manera crítica a todas las demás áreas. Debemos pues tratar de intentar garantizar a las
organizaciones redes corporativas seguras, aunque esto no es un problema trivial.
Siempre habrá hackers capaces de romper los sistemas más seguros, cada día
aparecen nuevos agujeros de seguridad y virus informáticos más peligrosos, la
seguridad informática está en acelerada evolución; los sistemas que hoy son seguros
quizá mañana no lo sean.
La sofisticación de la tecnología actual hace posible, con los sistemas de
detección de intrusos, detectar los eventos más concretos que ocurren en el sistema. Sin
embargo, y debido a la cantidad de alertas recibidas y a la poca fiabilidad de éstas se
provocan demasiados falsos positivos (alertas falsas). Al no haber capacidad de
abstracción, debido a la información excesivamente concreta y parcial, se producen de
igual modo falsos negativos (ataques no detectados).
–3–
Technical Report #MISYG-2004-05
una visión de la red con un grado de abstracción que permita una revisión práctica y
asumible para los administradores.
En este contexto se enmarca el proyecto OSSIM (Open Source Security
Information Management) que pretende responder a estas necesidades y a otras que
vayan apareciendo. En lo que sigue se explicará con el suficiente detalle el significado
del proyecto OSSIM. Además se especificará el diseño de un sistema borroso que
implementa una parte fundamental de este proyecto. Con todo esto se pretende
demostrar que la Lógica Difusa puede ser una herramienta altamente útil en el diseño de
sistemas de seguridad informática.
–4–
Technical Report #MISYG-2004-05
OSSIM
OSSIM es una distribución de productos open source integrados para construir
una infraestructura de monitorización de seguridad. Su objetivo es ofrecer un marco
para centralizar, organizar y mejorar las capacidades de detección y visibilidad en la
monitorización de eventos de seguridad de la organización.
Este proyecto tiene la intención de mejorar la seguridad de la organización con
la integración de los mejores productos desarrollados dentro del software libre en estos
años en un Framework general, que aumenta sus posibilidades al interrelacionar todas
sus funcionalidades.
OSSIM no quiere ser un producto, sino una solución, un sistema personalizado
para las necesidades de cada organización formado por la conexión e integración de
varios módulos especialistas.
Entre las herramientas de código libre integradas se incluyen algunas de las
desarrolladas por los mejores especialistas del mundo (snort, nessus, rrd, nmap, ntop,...)
y dada su naturaleza de software libre, probadas por miles de personas no se puede
dudar de su robustez y auditabilidad.
En OSSIM destacan dos funciones:
• Correlación
• Valoración de riesgos
La correlación proporciona la visibilidad de todos los eventos de los sistemas en
un punto y con un mismo formato y a través de esta situación privilegiada relacionar y
procesar la información permitiendo aumentar la capacidad de detección, priorizar los
eventos según el contexto en que se producen, y monitorizar el estado de seguridad de la
red.
La Valoración de Riesgos es forma de decidir en cada caso la necesidad de
ejecutar una acción a través de la valoración de la amenaza que representa un evento
frente a un activo, teniendo en cuenta la fiabilidad y probabilidad de ocurrencia de este
evento.
OSSIM consta de tres partes fundamentales y diferenciadas: Herramientas de
Monitorización, preprocesadores y funciones de postproceso.
Las herramientas de monitorización son el Cuadro de Mandos con visibilidad de
alto nivel, Monitores de Riesgo y Comportamiento de nivel medio y Consola Forense y
Monitores de Red con visión de bajo nivel.
Los preprocesadores son los detectores y monitores conocidos y usados por la
mayoría de administradores (IDS, detectores de anomalías, Firewalls y monitores
varios).
El postproceso es lo que hace del OSSIM una solución nueva, altamente fiable y
que mejora la capacidad de detección de sus preprocesadores. Además de las dos
funciones anteriormente descritas (correlación y valoración de riesgos) se añade la de
priorización, que posteriormente describiremos con detalle.
El objetivo fundamental del proyecto OSSIM es aumentar la capacidad de
detección, que depende de la sensibilidad y la fiabilidad de los detectores. La detección
se inicia con la generación de alertas por los detectores, Preproceso, a continuación la
–5–
Technical Report #MISYG-2004-05
información generada por todos los detectores se envía a punto central, Colección, por
último se procede al tratamiento de esa información centralizada, Postproceso.
En el siguiente gráfico extraído de la descripción del OSSIM se puede observar
las funcionalidades del sistema, vistas como una serie de capas.
En este trabajo se tratara con más detalle las funciones de postproceso, aunque
no se debe olvidar que el proyecto OSSIM es un Framework que integra todas capas
mencionadas, cada una de las partes es igual de necesaria para el funcionamiento global.
–6–
Technical Report #MISYG-2004-05
–7–
Technical Report #MISYG-2004-05
Priorización
Llamamos priorización al proceso de contextualización, es decir la evaluación
de la importancia de una alerta respecto del escenario de nuestra organización. Este
escenario está descrito en una base de conocimiento sobre la red del cliente formada
por:
• Inventario de Máquinas y Redes (identificadores, s. operativo, servicios, etc.)
• Política de Accesos (desde donde a donde está permitido o prohibido)
–8–
Technical Report #MISYG-2004-05
Valoración de Riesgos
La importancia que debemos dar a un evento debe ser dependiente de estos tres
factores:
a. El valor del Activo al que el evento se refiere
b. La Amenaza que representa el evento
c. La Probabilidad de que este evento ocurra
En nuestro caso, debido a la capacidad de medir en tiempo real, podremos
medir el riesgo asociado a la situación actual, en términos instantáneos.
En este caso el riesgo será medido como la medida ponderada del daño que
produciría y la probabilidad de que este ocurriendo en este momento la amenaza.
Esta probabilidad, derivada de la imperfección de nuestros sensores, no será
más que el grado de fiabilidad de estos en la detección de la posible intrusión en curso.
Llamaremos Riesgo Instantáneo a la situación de riesgo producida por la
recepción de una alerta, valorada de forma instantánea como la medida ponderada
entre el daño que produciría el ataque y la fiabilidad del detector que lo reporta.
OSSIM calculará el Riesgo Instantáneo de cada evento recibido que será la
medida objetiva que utilizaremos para valorar la importancia que un evento puede
implicar en términos de seguridad, sólo a través de esta medida valoraremos la
necesidad de actuar.
Incluiremos en nuestro sistema así mismo un Monitor de Riesgos descrito
posteriormente que valorará el riesgo acumulado en el tiempo de redes y grupos de
máquinas relacionados en un evento.
–9–
Technical Report #MISYG-2004-05
Subsistema de Priorización
Antes se ha descrito esta parte del sistema según las especificaciones que
aparecen en el OSSIM. En este trabajo se han adaptado las variables implicadas en el
problema, ya que hay que afrontar las limitaciones que conlleva desarrollar estos
módulos de manera independiente. A pesar de todo, se ha intentado ser lo más fiel
posible a la especificación del OSSIM.
Este subsistema tendrá las siguientes entradas:
• El evento, que es representado por los ataques producidos
• Inventario de Máquinas y Redes, en nuestro caso se considerará los datos
de una máquina o red en cada caso.
• Política de Accesos, los privilegios de los que goza el atacante
A continuación se detallan estas variables de entrada.
TIPO DE ATAQUE
Son aquellas variables que definen el ataque que se esta produciendo y que aportan
la información necesaria para su priorización y también para valorar el riesgo que
supone.
Podríamos definir como ataques todas aquellas acciones que supongan una
violación de la seguridad de nuestro sistema (confidencialidad, integridad o
disponibilidad).
Dichas acciones se pueden clasificar de modo genérico según los efectos causados:
• Interrupción: Un recurso del sistema es destruido o se vuelve no disponible.
Éste es un ataque contra la disponibilidad. Ejemplos de este ataque son los
Nukes, que causan que los equipos queden fuera de servicio. También la
destrucción o sabotaje de un elemento hardware, como cortar una línea de
comunicación.
• Intercepción: Una entidad no autorizada consigue acceso a un recurso. Éste es
un ataque contra la confidencialidad. Ejemplos de este ataque son la obtención
de datos mediante el empleo de programas troyanos o la copia ilícita de archivos
o programas (intercepción de datos), o bien la lectura de las cabeceras de
– 10 –
Technical Report #MISYG-2004-05
Escaneo de Puertos
Consiste en buscar puertos abiertos, determinando los que puedan ser receptivos o
de utilidad. Es como si llamamos a un número de teléfono y según la señal que
oigamos (comunicando, llamada, avería, etc.) sabemos el estado de ese teléfono en ese
preciso momento. Después llamamos a otro número y así continuamente.
– 11 –
Technical Report #MISYG-2004-05
– 12 –
Technical Report #MISYG-2004-05
Autentificación
Consisten, como su nombre indica, en la suplantación de una persona con
autorización por parte del atacante. Se suele realizar de dos formas: obteniendo el
– 13 –
Technical Report #MISYG-2004-05
nombre y contraseña del atacado o suplantando a la víctima una vez ésta ya ha iniciado
una sesión en su sistema.
Para realizar ataques de este tipo se utilizan varias técnicas, las cuales pasamos a
describir a continuación.
- Simulación de identidad: Es una técnica para hacerse con el nombre y contraseña de
usuarios autorizados de un sistema. El atacante instala un programa que recrea la
pantalla de entrada al sistema, cuando el usuario intenta entrar en él teclea su login y
password, el programa los captura y muestra una pantalla de “error en el acceso” al
usuario. El usuario vuelve a teclear su login y password, entrando esta vez sin
problemas. El usuario cree que en el primer intento se equivocó al teclear, sin embargo,
su login y password han sido capturados por el atacante.
- Spoofing (Engaño): Este tipo de ataques suele implicar un buen conocimiento del
protocolo en el que se va a basar el ataque. Consiste en sustituir la fuente de origen de
una serie de datos (por ejemplo, un usuario) adoptando una identidad falsa para engañar
a un firewall o filtro de red. Los ataques Spoofing más conocidos son el IP Spoofing, el
DNS Spoofing , el Web Spoofing y el fake-mail.
-IP Spoofing: Sustituir una IP. El atacante logra identificarse con una IP que no
es la suya, con lo que a ojos del atacado, el agresor es una tercera persona, que
nada tiene que ver en el asunto, en vez de ser el atacante real.
-DNS Spoofing: Sustituir a un servidor DNS o dominio. Se usan paquetes UDP y
afecta a sistemas bajo Windows NT. Se aprovecha de la capacidad de un
servidor DNS resolver una petición de dirección IP a partir de un nombre que no
figura en su base de datos, ya que éste es su método de trabajo por defecto.
-Web Spoofing: El atacante crea un sitio web (falso) similar al que la víctima
desea entrar. Los accesos a este sitio están dirigidos por el atacante,
permitiéndole monitorizar todas las acciones de la víctima: datos, contraseñas,
números de tarjeta de créditos, etc. El atacante también es capaz de modificar
cualquier dato que se esté transmitiendo entre el servidor original y la víctima o
viceversa. Es un ataque peligroso, y difícilmente detectable, que hoy por hoy se
puede llevar a cabo en Internet Hoy en día tanto JavaScript como Active-X,
como Java tienden a facilitar las técnicas de spoofing.
-Fake-mail: Es otra forma de spoofing y consiste en el envío de e-mails con
remitente falso. Aquí el atacante envía E-Mails en nombre de otra persona con
cualquier motivo y objetivo.
- Looping: El intruso usualmente utiliza algún sistema para obtener información e
ingresar en otro, que luego utiliza para entrar en otro, y así sucesivamente. Este proceso
se llama looping y tiene como finalidad hacer imposible localizar la identificación y la
ubicación del atacante, de perderse por la red. Entre el origen físico y el sistema que
finalmente se utilice para realizar una fechoría puede estar plagado de muchos sistemas
intermedios, rebasando las fronteras de varios países, dificultando aún más su
localización. Otra consecuencia del Looping es que la víctima puede suponer que están
siendo atacada por nosotros (si somos el sistema final del looping del atacante), cuando
en realidad está siendo atacada por un Insider, o por alguien que se encuentra a miles de
kilómetros tanto de nosotros como de la víctima.
– 14 –
Technical Report #MISYG-2004-05
– 15 –
Technical Report #MISYG-2004-05
provocan procesos inútiles y se reproducen como conejos hasta que satura la capacidad
del sistema, provocando su colapso.
-SYN Flood (Inundación con paquetes SYN): Como ya se explicó en el escaneo TCP
SYN el protocolo TCP se inicia con una conexión en tres pasos. Si el paso final no llega
a establecerse, la conexión permanece en un estado denominado "semiabierto". El Syn
Flood es el más famoso de los ataques tipo Denial of Service (DoS). Se basa en un
"saludo" incompleto entre los dos sistemas. El Cliente envía un paquete SYN pero no
responde al paquete ACK del 2º paso del saludo ocasionando que el servidor
permanezca a la escucha un determinado tiempo hasta cancelar la llamada. Si se envían
muchos saludos incompletos, se consigue que el servidor se paralice o por lo menos se
ralentice. Para operar con este sistema hay que mantener el Sys Flood activo, ya que la
mayoría de los sistemas tienen un límite de espera muy corto para conexiones
semiabiertas. Cuando se ha esperado mucho tiempo, se libera un hueco para aceptar
otras posibles peticiones, lo cual puede ser aprovechado para “colar” un paquete SYN
destructivo o malicioso. Así que, este ataque se puede utilizar tanto para consumir los
recursos de un sistema como para abrir el camino a otro tipo de ataque. Si este ataque es
potente es porque el atacante no necesita apenas potencia en su PC, con mandar un SYN
cada 4 segundos es suficiente. Esta velocidad se consigue de sobra con cualquier
modem. Este ataque suele combinarse también con el IP Spoofing (suplantación de una
IP), para ocultar el origen del ataque.
-Connection Flood (inundación de la conexión): Se basa en la característica de
la mayoría de los proveedores de Internet (ISP) de tener un tope máximo de
conexiones simultaneas, que tras ser alcanzado no acepta más conexiones. Si por
ejemplo un servidor Web tiene un tope de 1000 conexiones, y el atacante
establece mil conexiones y no realiza ninguna petición sobre ellas, monopolizará
la capacidad del servidor. Las conexiones van caducando por inactividad poco a
poco, pero el atacante sólo necesita establecer nuevas conexiones para mantener
fuera de servicio el servidor.
-Net Flood (inundación de la red): En este ataque se envían tantas solicitudes de
conexión que las conexiones de los demás usuarios no pueden llevarse a cabo.
Es un ataque muy dañino y con poca defensa por parte de la red atacada. Para
solucionarlo el Proveedor tiene que detectar el origen del ataque, bloquear la
comunicación desde esa dirección y avisar al administrador de la misma para
que actúe, ya que lo normal es que el administrador de esa dirección no sepa
nada y que esté siendo utilizada su red para llevar a cabo el ataque por medio de
algún spoofing. De cualquier manera, saber el origen real del ataque es
prácticamente imposible. Una vez se ha solucionado el problema, el servidor
puede haber estado colgado durante horas.
-Land Attack: Este ataque consiste en un Bug en la implementación de la pila TCP/IP
en sistemas Windows. El ataque envía a algún puerto abierto de un servidor
(generalmente al 113 o al 139) un paquete, maliciosamente construido con la IP y
puerto origen igual que la IP y puerto destino. Al final la máquina termina por
colapsarse.
Existen ciertas variantes a este método consistente, por ejemplo, en enviar el
mensaje a una dirección específica sin especificar el puerto Smurf o Broadcast Storm.
Este ataque es bastante simple y a su vez devastador. Consiste en recolectar una serie de
direcciones para a continuación mandar una petición ICMP (simulando un Ping) a cada
una de ellas en serie, varias veces, falsificando la dirección IP de origen. Este paquete
– 16 –
Technical Report #MISYG-2004-05
Modificación-Daño
-Tampering o Data Diddling: Consiste en una modificación no autorizada de datos o
software instalado en el sistema víctima, incluyendo borrado de archivos. Es decir, una
vez se ha entrado en un sistema, se modifican o borran datos del mismo.
-Borrado de huellas: Es una tarea fundamental que realiza un intruso tras haber
hurgado en un sistema y terminado su fechoría. Si no lo hace se puede descubrir tanto el
origen del ataque como el agujero de seguridad por el que ha entrado el atacante, que
– 17 –
Technical Report #MISYG-2004-05
será subsanado inmediatamente. Las Huellas son todas las tareas que realizó el intruso
en el sistema y por lo general son almacenadas en los Logs de los sistemas operativos,
de monitores de red y/o sistema, firewalls,...
-Ataques usando Java Applets: Los java Applets son ejecutados desde otra aplicación,
como un navegador de Internet. Su mayor popularidad la merece en su alto grado de
seguridad. Los más usados navegadores actuales, implementan Máquinas Virtuales Java
o JVM (Java Virtual Machine) para poder ejecutar programas (Applets) de Java. Los
Applets no son más que un código ejecutable y como tal, puede ser manipulado por
intrusos. Sin embargo las restricciones a las que están sometidos los Applets son
muchas (imposibilidad de trabajar con ficheros a no ser que el usuario especifique lo
contrario, imposibilidad de acceso a zonas de memoria y disco directamente, firma
digital, etc.) por lo que es muy difícil atacar por medio de Java Applets. Sin embargo,
es posible si se es un experto en Java. Aunque se han detectado algunos agujeros de
seguridad, han sido corregidos.
-Ataques usando JAVAScript y VBScript: JavaScript (de empresa Netscape) y
VBScript (de Microsoft) son dos lenguajes usados por los diseñadores de sitios Web
evitando el uso de Java. Los programas realizados son interpretados por el navegador. A
diferencia del applets de JAVA, los JavaScripts y los VBSscripts son capaces de iniciar
aplicaciones tales como grabar información en el disco, por lo que atentan seriamente
contra la seguridad de un sistema ya que pueden colar, por ejemplo, algún tipo de virus.
Aunque los fallos son mucho más numerosos en versiones antiguas de JavaScript.
-Ataques usando Actives: La seguridad ActiveX se basa en certificados y firmas
digitales. Una Autoridad Certificadora (AC) expende un certificado que acompaña a los
controles activos y a una firma digital del programador. Cuando un usuario descarga
una página con un control, se le preguntará si confía en la AC que expendió el
certificado y/o en el control ActiveX. Si el usuario acepta el control, éste puede pasar a
ejecutarse sin ningún tipo de restricciones (sólo las propias que tenga el usuario en el
sistema operativo). Es decir, la responsabilidad de la seguridad del sistema se deja en
manos del usuario. Este es el punto débil de la seguridad en el ActiveX ya que la
práctica mayoría de los usuarios aceptan todos los certificados sin pararse a leerlos.
Aunque leamos el certificado de seguridad y nos parezca correcto, eso no nos libra de
sufrir un ataque. Los certificados se basan en que el programador del control ActiveX
asegura que su control no es nocivo, lo cual es falso en bastantes casos.
-Cookies: Aunque son motivo de controversia, las cookies o galletas solo representan
una amenaza para la privacidad ya que pueden cumplir la función de espiar. No son
capaces de causar daño al sistema. Básicamente se utilizan para reconocer al usuario al
entrar en determinados sitios web (foros, por ejemplo) y para contadores de visitas. De
todas formas, los navegadores tienen opciones para configurar el ingreso de cookies en
nuestro sistema.
-Ataques usando Vulnerabilidades de los Navegadores: Son fallos del navegador en
sí y no de programas implementados, como pueden ser los controles de JAVA,
ActiveX, etc. Los más comunes son los "Buffer Overflow" (desbordamiento de buffer).
Debido a una debilidad de los buffers de algunos navegadores para el procesamiento de
las entradas de usuario, se puede llegar a manipular datos. Una manipulación común es
la de URLs almacenadas. Por ejemplo, se puede modificar una URL para que cuando
sea ejecutada por el usuario, se ponga en funcionamiento otra aplicación, como el
format, un virus,...
– 18 –
Technical Report #MISYG-2004-05
Explotación de Errores
Muchos sistemas están expuestos a "agujeros" de seguridad que son explotados
para acceder a archivos, obtener privilegios o realizar sabotaje. Estas vulnerabilidades
ocurren por variadas razones, y miles de "puertas traseras" y bugs son descubiertas
diariamente en sistemas operativos, aplicaciones, protocolos de red, navegadores de
Internet, servidores de correo electrónico,...
Los Sistemas operativos abiertos (como Unix y Linux) tienen agujeros mas
conocidos y controlados que aquellos que existen en sistemas operativos cerrados
(como Windows). La importancia y ventaja del código abierto de sistemas operativos
como Linux radica en que miles de usuarios analizan dicho código en busca de posibles
bugs y ayudan a obtener soluciones en forma inmediata. En sistemas cerrados como
Windows suele ocurrir lo contrario. Se ocultan los errores para impedir una caída de
ventas del producto debido a una mala reputación. No obstante existen varias
organizaciones que se ocupan de investigar esos sistemas en busca de agujeros de
seguridad.
Constantemente encontramos en Internet avisos de nuevos descubrimientos de
problemas de seguridad (y herramientas de Hacking que los explotan), por lo que hoy
también se hace indispensable contar con productos que conozcan esas debilidades, que
puedan diagnosticarlas y que sean capaces de actualizar el programa afectado con el
parche adecuado.
– 19 –
Technical Report #MISYG-2004-05
¾ Type Ataque
En este trabajo no se ha entrado en los detalles más específicos de cada tipo de
ataque, ya que esto supera las limitaciones que este sistema borroso tiene dentro del
marco en que ha sido elaborado. Aunque en las posibles ampliaciones que pudiera tener
el sistema, este punto debería ser considerado con más detalle. También cabe decir que
la determinación y valoración de cada ataque no procede al sistema que ahora nos
ocupa, por tanto no se ha resuelto en él.
En este sistema se considera a un ataque como perteneciente a alguno de los
tipos anteriores, pudiendo ser un ataque múltiple (varios ataque relacionados incluidos
en un evento). El tipo Ataque tipifica exclusivamente una valoración de la peligrosidad
inherente a cada tipo de ataque. Se ilustra a como sigue.
– 20 –
Technical Report #MISYG-2004-05
• Bajo:
• Medio:
• Medio_alto:
• Alto:
– 21 –
Technical Report #MISYG-2004-05
– 22 –
Technical Report #MISYG-2004-05
INVENTARIO DE SISTEMAS
Obviamente, es necesario tener una relación de los datos actualizados de todas
las máquinas y redes pertenecientes a la organización. Aunque para este trabajo solo
interesan los datos del sistema concreto que ha sido atacado. En la implementación del
OSSIM se incluye diversas bases de datos con los datos referentes al inventario de
sistemas. Los inputs referentes a los sistemas atacados son:
• Estado de los Puertos
• Disponibilidad de Firewall
• Sistema Operativo usado
Puertos
El protocolo de transmisión de información por defecto utilizado en Internet es
TCP/IP (Transmision Control Protocol / Internet Protocol). Se basa en usa estructura
Cliente/Servidor. Es decir, para que un sistema funcione debe de haber al menos un
servidor al que se conecten los clientes. Internet también se puede basar en conexiones
Punto a Punto en las que se utilizan direcciones de broadcast para comunicarse con los
ordenadores.
Cada ordenador conectado por TCP/IP tiene una estructura lógica de cara a la
red. La conexión a la red esta dividida en Puertos. Un puerto es una zona en la que dos
ordenadores intercambian información. Una configuración típica de TCP/IP habilita
65536 puertos (0...65535) para las conexiones de red.
Cada puerto tiene cinco estados posibles: Cerrado, Rechazado, Abierto,
Conectado o Escucha:
• Un puerto Cerrado es aquel en el que no se está realizando ninguna actividad ni
está precedida ninguna actividad.
• Un puerto Abierto es aquel que está esperando una orden del programa.
• Un puerto Conectado es un puerto abierto que ha recibido la orden de
conectarse a un puerto de otro ordenador y cuya petición de conexión ha sido
aceptada.
• Un puerto Rechazado es un puerto abierto que ha recibido la orden de
conectarse a un puerto de otro ordenador pero cuya petición ha sido denegada.
• Un puerto en estado de Escucha es un puerto que está esperando la conexión de
otro ordenador.
Firewall
Un Firewall es un sistema o grupo de sistemas que impone una política de
seguridad entre la organización de red privada e Internet. El firewall determina cual de
los servicios de red pueden ser accedidos dentro de esta por los que están fuera, es decir
quien puede entrar para utilizar los recursos de red pertenecientes a la organización.
Para que un firewall sea efectivo, todo trafico de información a través de Internet
deberá pasar a través del mismo donde podrá ser inspeccionada la información. El
firewall podrá únicamente autorizar el paso del trafico, y el mismo podrá ser inmune a
la penetración. desafortunadamente, este sistema no puede ofrecer protección alguna
una vez que el agresor lo traspasa o permanece entorno a este.
– 23 –
Technical Report #MISYG-2004-05
Sistema Operativo
La influencia del Sistema Operativo en el éxito o fracaso de un ataque es
determinante, aunque, por supuesto, no solo depende de este. Cada tipo de ataque
intenta explotar alguna de las debilidades o fallos de seguridad del mismo. Sin embargo,
hay SO considerados como más seguros para un tipo de ataque determinado.
En general, consideraremos los sistemas Windows como menos seguros para la
mayoría de ataques. El código fuente de Windows no está a disposición de los usuarios,
por lo tanto, no puede ser probado y testado por estos. Al contrario, los sistemas Linux,
de código libre, han sido depurados por toda la comunidad Linux lo que facilita la
detección y corrección de errores de seguridad. Algo parecido pasa con Unix, en el cual
se basa Linux.
– 24 –
Technical Report #MISYG-2004-05
¾ Type Puertos
Distinguimos entre todos_cerrados (nivel de seguridad alto), medio (nivel de
seguridad estándar) y todos_abiertos (nivel de seguridad bajo). La etiqueta
todos_cerrados no significa, necesariamente, que todos los puertos lo estén sino que el
número de puertos sensibles a un ataque que están cerrados es mayoritario. La etiqueta
medio indica que la cantidad de puertos abiertos está en una proporción similar a la de
cerrados. La etiqueta todos_abiertos alude a que la mayoria de los puertos sensibles
están abiertos con el consiguiente riesgo de seguridad.
Aquí tenemos la definición del tipo puertos
¾ Type Firewall
En lo que respecta al control del tráfico, distinguimos entre sin, que implica la
ausencia de capacidades Firewall, medio, que dispone de capacidades medias de
Firewall y con, que supone capacidades altas y avanzadas de Firewall.
– 25 –
Technical Report #MISYG-2004-05
¾ Tipo SO
En este tipo hay tres posibles etiquetas: windows, otros y linux. El primero tiene
el menor nivel de seguridad (mayor cantidad de agujeros y fallos de seguridad), el
segundo agruparía a todos los sistemas Unix y tiene implícita una seguridad mayor que
el anterior. El último de todos sería el que mayores capacidades de seguridad tiene.
– 26 –
Technical Report #MISYG-2004-05
POLÍTICAS DE ACCESO
La política de accesos se refiere a desde donde a donde esta permitido o
prohibido. En este sistema serían los privilegios de acceso de que dispone la ubicación
desde donde proviene el posible ataque.
Recordemos aquí el principio de mínimos privilegios, todos los programas y
usuarios del sistema deben operar utilizando el menor conjunto de privilegios necesarios
para completar la labor. Los derechos de acceso deben adquirirse sólo por permiso
explícito; por omisión deberían ser “sin acceso”. Lamentablemente esto no ocurre así en
la mayoría de ocasiones, a raíz de lo cual ocurren numerosos desastres.
– 27 –
Technical Report #MISYG-2004-05
• Prepriorización-Escaneo de Puertos:
• Prepriorización- Autentificación:
– 28 –
Technical Report #MISYG-2004-05
• Prepriorización-Negación de Servicio:
• Prepriorización-Modificación/Daño:
• Prepriorización-Explotación de Errores:
– 29 –
Technical Report #MISYG-2004-05
Las salidas serán las preprioridades (variables intermedias), que se evalúan junto
con los privilegios de acceso (variable de entrada) en la base de reglas
Privilegios_acceso que se detalla a continuación.
– 30 –
Technical Report #MISYG-2004-05
– 31 –
Technical Report #MISYG-2004-05
– 32 –
Technical Report #MISYG-2004-05
Prioridad
La prioridad de un evento ha sido calculada por el subsistema anterior y no
necesita de más explicación. Solo decir que es una variable interna del sistema borroso
y ha sido definida a partir del tipo riesgo.
Probabilidad
Se trata de la probabilidad de que este ocurriendo en ese momento el evento, y
se refiere a la fiabilidad que tenemos en los sensores encargados de detectar los ataques.
Este tipo se define como se muestra a continuación.
– 33 –
Technical Report #MISYG-2004-05
Como es obvio, no todos los activos tendrán el mismo valor, habrá elementos
críticos para la organización que tendrán un valor muy alto. Cualquier ataque hacia ellos
debe ser examinado cuidadosamente. También existirán activos de valor menor que
exigirán menos atención.
Definimos el tipo Activo de la siguiente manera.
Amenaza
La amenaza es una variable intermedia del sistema y se calcula a partir de la
probabilidad del evento y la prioridad calculada en el subsistema de priorización. Es
decir, la amenaza de un evento depende de la prioridad que tiene dicho evento y la
probabilidad de que este ocurriendo en este momento.
La amenaza esta definida según el tipo probabilidad, ya que comparten un
universo del discurso similar.
– 34 –
Technical Report #MISYG-2004-05
• Valorar amenaza:
• Valorar Riesgo:
– 35 –
Technical Report #MISYG-2004-05
– 36 –
Technical Report #MISYG-2004-05
– 37 –
Technical Report #MISYG-2004-05
Caso de ejemplo
Se van a mostrar dos casos de ejemplo con el mismo ataque, prioridad y valor
del activo, pero en uno de ellos el ordenador esta muy protegido y en el otro no dispone
de ningún medio de seguridad.
– 38 –
Technical Report #MISYG-2004-05
2. Por el contrario, en este otro caso el ordenador cuenta con firewall y con los
puertos cerrados pero el ataque es el más fuerte posible.
– 39 –
Technical Report #MISYG-2004-05
Fuentes Consultadas
• Proyecto OSSIM:
- Descripción General del Sistema
- Implementación OSSIM
- Página web: www.ossim.net.
• First International Workshop: Intelligent Systems for intrusión detection and
facing malware. Universidad de León.
• Sistemas Operativos. William Stallings
• La información referente a los tipos de ataque ha sido extraída de la pagina:
http://webs.ono.com/usr016/Agika/index.html
Esta información ha sido contrastada en diversas páginas webs de seguridad
informática y prácticamente no ha sido modificada, sólo actualizada cuando se ha
requerido.
– 40 –