Herramientas de análisis del flujo de información.
Herramientas para analizar flujos de información
El uso de métodos de inspección del flujo de datos para proteger los recursos de información de la red de una organización permite identificar los impactos de la información en las primeras etapas. Dado que superar las vulnerabilidades de los protocolos básicos de la familia TCP/IP mediante cambios en las implementaciones de software de los servicios de red conlleva importantes dificultades, parece aconsejable protegerse contra ataques «fuera» del sistema de información. Los cortafuegos utilizados para separar los flujos de información a menudo se convierten en objetivos de ataques, ya que utilizan como base de software un sistema operativo de red que tiene vulnerabilidades a nivel del sistema operativo o una implementación de la pila de protocolos TCP/IP que tiene debilidades inherentes en los protocolos. .
Teniendo en cuenta lo anterior, existe un interés predeterminado en el uso de métodos de inspección para identificar intrusos directamente en los canales de comunicación. Sin embargo, dada la complejidad de implementar los métodos requeridos, muchos estudios realizados por organizaciones de investigación reconocidas no van más allá del alcance de los proyectos [5]. Al mismo tiempo, existen implementaciones comerciales de este enfoque, un ejemplo de lo cual es el producto RealSecure de Internet Security Systems Inc.
RealSecure
Esta sección proporciona una breve descripción de RealSecure basada en la experiencia de expertos prácticos. uso del producto en versión comercial.
RealSecure puede funcionar bajo AIX 3.2.5, HP-UX 9.0.5, 10.1, SunOs 4.1.x, Solaris 2.x, Linux 1.2/1.3, así como Windows NT 3.51 y 4.0 en dos modos principales: local (es decir, sólo en una estación de trabajo específica) y distribuida. En modo distribuido, los principales módulos de software (agentes) operan en estaciones de trabajo remotas, generalmente ubicadas en diferentes redes o segmentos de red, y el programa de gestión de agentes opera en una estación de trabajo central.
La arquitectura del software RealSecure se puede dividir en los siguientes componentes principales:
• el módulo de software principal que monitorea y controla los eventos de la red;
• mecanismo de configuración del módulo principal;
• base de datos de eventos de red registrados;
• un programa para gestionar los componentes especificados, que tiene una interfaz gráfica de usuario;
• bases de datos de informes sobre eventos de red registrados en formato HTML (estos informes son creados por el programa de gestión basándose en bases de datos de eventos de red).
El módulo principal es un programa que monitorea y gestiona los eventos de la red según la configuración establecida. A continuación se muestra una lista de eventos de red reconocidos y monitoreados. El mecanismo de configuración del módulo principal de software RealSecure es un conjunto de archivos que describen la configuración especificada por el usuario e incluye (en la implementación de RealSecure para Solaris):
1) archivo filter.cfg: un filtro para eventos de red monitoreados correspondientes a las capas de red y transporte del modelo OSI. Este filtro se implementa como un conjunto de reglas para rastrear eventos y acciones para cada evento. Es posible especificar el siguiente conjunto de acciones:
• no realizar un seguimiento de este evento;
• ver la sesión de este evento en tiempo real;
• interrumpir la ejecución de este evento (sólo es posible cuando la conexión se realiza a través del protocolo TCP);
• mostrar este evento en el panel de control;
• grabar un evento en un archivo con la capacidad de ingresar una marca sobre el evento en la base de datos, registrar información de texto o todos los datos transmitidos durante el evento (esta última propiedad se puede usar para “reproducir” el intercambio de información correspondiente a este evento);
• llamar al programa especificado cuando se graba un evento;
• enviar un mensaje de correo electrónico a un usuario específico cuando se registra un evento;
• establezca el nivel de gravedad del evento, como resultado de lo cual cada evento se mostrará en una ventana específica y se almacenará durante un período de tiempo específico (RealSecure le permite ordenar todos los eventos según tres niveles de importancia) .
2) Archivo features.cfg— es un conjunto de descripciones de ataques reconocidos y eventos de red controlados por RealSecure, así como una descripción de las acciones realizadas cuando se detecta un ataque o evento (el conjunto de acciones es completamente el mismo que el descrito anteriormente). Además, es posible transferir algunos parámetros correctivos al mecanismo de detección de ataques.
3) Archivo general.cfg— este archivo define los intervalos de tiempo durante los cuales se muestran los eventos, especificados para cada nivel de gravedad del evento. Además, este archivo define un programa para ver el manual de uso de RealSecure e informes sobre eventos de red registrados (en formato HTML), así como la opción de deshabilitar el mecanismo para resolver una dirección IP en un nombre simbólico (resolviendo una dirección IP en un nombre DNS requiere tiempo)
El archivo auxiliar ethereodes contiene una lista de correspondencias entre las direcciones de nivel de enlace de los adaptadores de red y los nombres de los fabricantes de estos dispositivos.
Las bases de datos de eventos de red registrados son archivos que se registran de acuerdo con un conjunto de acciones realizadas cuando se registran eventos de red específicos.
Ataques y eventos de red reconocidos por RealSecure
El software RealSecure le permite reconocer más de cien ataques y eventos de red, cuya lista completa se encuentra en la documentación. La siguiente es una descripción general de los ataques típicos más importantes, en nuestra opinión, reconocidos por RealSecure, así como otras características de este producto.
RealSecure permite reconocer los siguientes ataques:
1) Fragmentación de datos
Cuando un paquete de datos de protocolo IP se transmite a través de una red, se puede dividir en varios fragmentos, a partir de los cuales se reconstruye posteriormente el paquete cuando llega al destino. Un atacante puede iniciar el envío de una gran cantidad de fragmentos, lo que provoca un desbordamiento de los buffers de software en el lado receptor y, en algunos casos, un fallo del sistema.
2) Inundación de ping
El atacante envía una larga serie de solicitudes de eco utilizando el protocolo ICMP. El sistema atacado gasta sus recursos informáticos respondiendo a estas solicitudes. Por lo tanto, el rendimiento del sistema se reduce significativamente y aumenta la congestión del canal
3) UDPbomb
Transmitido El paquete UDP contiene un formato incorrecto de ceros de servicio. Al recibir un paquete de este tipo, algunas versiones anteriores del software de red provocan que el sistema falle.
4) Inundación SYN
Al establecer una conexión a través del protocolo TCP, el lado receptor, después de recibir una solicitud de conexión (paquete con el indicador SYN), envía una respuesta a la fuente (paquete con los indicadores SYN ACK) indicando que está listo para establecer esta conexión. En este caso, el sistema coloca en su memoria un registro de servicio sobre la conexión establecida y lo almacena hasta que la fuente envía un paquete de confirmación o expira el tiempo de espera de este paquete. El atacante envía una gran cantidad de solicitudes de conexión sin enviar paquetes de confirmación. Como resultado, se produce una fuerte disminución del rendimiento y, en determinadas circunstancias, el sistema falla.
5) Medio escaneo
El ataque consiste en identificar discretamente canales de influencia de la información en el sistema. El atacante envía paquetes de establecimiento de conexión y, al recibir respuestas del sistema, restablece la conexión (paquete con el indicador RST). Al mismo tiempo, las herramientas estándar no registran ningún intento de establecer una conexión, mientras que el atacante determina la presencia de servicios en determinados puertos.
RealSecure registra el siguiente intercambio de información:
1) Utilizando el protocolo AKP
Los atacantes pueden utilizar este tipo de solicitud para determinar el funcionamiento de los sistemas en segmentos de la red local.
2) Protocolos no estándar encapsulados en IP
El paquete IP contiene un campo que especifica el protocolo del paquete encapsulado (TCP, UDP, ICMP). Los atacantes pueden utilizar un valor no estándar para este campo de transmisión de datos, que no será registrado por las herramientas de control de flujo de información estándar.
3) Escanear el sistema con Internet Security Scanner
El hecho de escanear el sistema El uso del producto está registrado en la versión comercial o de distribución gratuita de ISS.
4) Escaneando el sistema con Satanás
El escaneo del sistema por parte de la herramienta Satanás se reconoce en los modos «pesado» y «normal».
5) Utilizando el protocolo TFTP
Este protocolo no contiene mecanismos de autenticación, ya que por lo que resulta atractivo para los atacantes.
6) Llamadas al servicio Rwhod
Este servicio, en algunas de sus versiones, contiene una vulnerabilidad en la posibilidad de un desbordamiento del buffer del software, que puede llevar a la ejecución de código arbitrario en una máquina remota.
7) Sesiones que utilizan el protocolo Riogin
Los mecanismos de autenticación e identificación en este protocolo son basados en relaciones de confianza entre sistemas remotos y cumplen con el nivel requerido de confiabilidad. El uso de la opción -froot es fijo (la implementación de esta opción en un sistema remoto permite que cualquier usuario obtenga derechos de administrador).
Además, RealSecure le permite decodificar el siguiente intercambio de información:
8) Sesiones FTP
Decodificación del nombre de usuario y contraseña durante el proceso de autenticación, comandos de sesión, archivos transferidos mediante comandos GET y PUT, etc., así como ejecución de comandos mediante el protocolo FTP utilizando el servidor wu-ftpd.
9) Transmisión de datos mediante el comando GET del protocolo HTTP.
10) Transferencia de correo electrónico POP, IMAP, SMTP
Durante la decodificación, se extraen el nombre de usuario y la contraseña, los atributos y el contenido de las letras.
11) Transferencia de información vía protocolos IRC, NNTP, Talk, Finger.
Capacidades reales de RealSecure (evaluación de la efectividad mediante el método de implementación práctica de ataques)
RealSecure es un sistema para monitorear los flujos de información de la red en tiempo real. La principal tarea que realiza este producto es la detección oportuna de ataques. La idea de identificarlos es simple: cualquier ataque corresponde a un determinado tráfico de red, por lo que el análisis del tráfico permite identificar el ataque y detectar las “rastros” del atacante, es decir, determinar las direcciones IP desde las que se produjo el impacto de la información. llevado a cabo. Así, la detección de ataques se realiza mediante el seguimiento de los flujos de información.
A diferencia de los sistemas de control pasivo de los flujos de información, RealSecure ve el tráfico de la red y analiza la actividad de la red sobre la marcha, lo que permite al personal reaccionar al mínimo ante un ataque o mal funcionamiento. Además, el producto implementa capacidades de protección contra ataques.
Es obvio que la efectividad de RealSecure puede evaluarse por la integridad, precisión y confiabilidad del reconocimiento de ciertos impactos de la información. La configuración de prueba de RealSecure fue la siguiente: el producto se instaló en estaciones de trabajo Solaris 2.5 y Windows NT 4.0. Los ataques se llevaron a cabo en servidores y estaciones de trabajo que ejecutaban varios sistemas operativos, incluidas estaciones en las que estaba instalado RealSecure. A continuación se muestra un informe de las pruebas realizadas.
1. Escanear una red usando DNS
Se sabe que antes de lanzar un ataque, los atacantes identifican aquellos ordenadores que serán víctimas del ataque, así como los ordenadores que intercambian información con las víctimas. Una forma de identificar objetivos es sondear el servidor de nombres y obtener de él toda la información disponible sobre el dominio. Para determinar oportunamente dicho escaneo, es necesario analizar las solicitudes de DNS (dirección y nombre), quizás provenientes de diferentes servidores DNS, pero durante un cierto período de tiempo. En este caso, es necesario ver qué tipo de información se transmite en ellos y controlar la enumeración de direcciones. RealSecure no reconoce este ataque y no tiene los medios para describir los flujos de información de la manera indicada anteriormente; La respuesta del software a este ataque fue mostrar el tráfico DNS desde la computadora atacante al servidor de nombres.
El ataque no fue detectado.
2. Escaneando la red usando el método de barrido de ping
El barrido de ping, o la identificación de objetivos mediante el protocolo 1CMP, también es un método eficaz. Para determinar el hecho del escaneo de ping a los objetivos ubicados dentro de la subred, es necesario analizar las direcciones de origen y destino de los paquetes 1CMP. RealSecure no detectó este ataque: como reacción, se observó tráfico ICMP desde la computadora atacante a las máquinas detectadas. Además, en la base de datos RealSecure que contiene firmas de ataques, este ataque no se describe y no hay forma de describir actividad de red de este tipo. Este tipo de análisis se llevó a cabo con éxito y el sistema de monitoreo del flujo de información en tiempo real RealSecure solo mostró actividad de ping.
El ataque no fue detectado.
3. Escaneando puertos TCP
El escaneo de puertos es un método bien conocido para reconocer la configuración de una computadora y los servicios disponibles. Para llevar a cabo ataques con éxito, los atacantes necesitan saber qué servicios están instalados en la computadora víctima.
Existen varios métodos de escaneo de TCP, algunos de ellos se denominan sigilosos porque explotan vulnerabilidades en las implementaciones de la pila TCP/IP en la mayoría de los sistemas operativos modernos y no son detectados por las herramientas estándar. RealSecure detecta con éxito todos estos métodos, lo que se logra interceptando completamente el tráfico TCP y analizando los números de puerto. Por lo tanto, el uso de RealSecure puede garantizar la detección del escaneo TCP en tiempo real. Esto le permite prepararse para posibles ataques futuros, tomar medidas de protección oportunas, notificar al personal y a la gerencia, etc.
Además de detectar el hecho del escaneo, RealSecure analiza todas las conexiones TCP y puede, a petición del administrador, inspeccionarlas y, si es necesario, finalizarlas. Esto permite al administrador leer el correo transmitido a través de la red, ver el contenido de las sesiones TCP, incluidas las contraseñas de los usuarios, etc. Examinar el tráfico de la red TCP usando RealSecure permite al administrador identificar a los usuarios que no cumplen con los requisitos de seguridad: con contraseñas, mal uso de la máquina recursos, etc.
Es necesario destacar las capacidades del producto para contrarrestar el escaneo TCP. Esta reacción se puede llevar a cabo, por ejemplo, transmitiendo paquetes TCP con el indicador RST activado en nombre del ordenador escaneado al ordenador del atacante, engañándolo así. Sin embargo, durante las pruebas, se descubrió una discrepancia con las especificaciones de este producto: a pesar de la instalación de anti-escaneo en la configuración, no se detectaron paquetes RST que restablecieran la conexión y el escaneo fue exitoso.
Ataque detectado.
4. Escaneando puertos UDP
Otro tipo de escaneo de puertos se basa en el uso del protocolo UDP y consiste en lo siguiente: un paquete UDP dirigido a un puerto cuya disponibilidad se verifica se transmite a la computadora escaneada. Si el puerto no está disponible, se envía en respuesta un mensaje ICMP sobre su inaccesibilidad (puerto de destino inalcanzable); de lo contrario, no hay respuesta.
Este tipo de escaneo es bastante efectivo. Le permite escanear todos los puertos de la computadora víctima en poco tiempo. Además, este tipo de escaneo es muy conocido en Internet. Nuestra mayor sorpresa fue que RealSecure no reconoce este tipo de escaneo y el producto no proporciona herramientas para describir este tipo de escaneo. La respuesta de RealSecure al escaneo UDP es mostrar la actividad UDP en la red.
Al mismo tiempo, es posible contrarrestar este tipo de análisis enviando mensajes sobre la falta de disponibilidad del puerto al ordenador del atacante.
El ataque no fue detectado.
5. Ataque de inundación SYN
Este tipo se refiere a ataques de denegación de servicio, que resultan en la imposibilidad de proporcionar servicios. El ataque suele estar dirigido a un servicio concreto, como telnet o ftp, e implica el envío de paquetes de establecimiento de conexión al puerto correspondiente al servicio atacado. La inundación SYN se caracteriza por una gran cantidad de paquetes de establecimiento de conexión a uno de los servicios en una computadora. Contrarrestar este ataque consiste en enviar paquetes de restablecimiento de conexión al puerto deseado.
RealSecure no sólo detecta con éxito dicho ataque, sino que también lo contrarresta. Cabe señalar que RealSecure abre dos puertos TCP (900 y 901 de forma predeterminada), lo que brinda a los atacantes una oportunidad de ataque adicional.
Ataque detectado.
6. Ataque de inundación de ping
Estos ataques utilizan el protocolo ICMR, que se utiliza en Internet para determinar la accesibilidad de las computadoras y realizar otras tareas de diagnóstico y administración.
El ataque de inundación de ping implica enviar una gran cantidad de solicitudes ICMR a la computadora atacada. El resultado del ataque es una disminución en el rendimiento de la computadora atacada, así como una disminución en el ancho de banda del canal de comunicación.
RealSecure detecta con éxito este ataque y registra las direcciones de origen de los paquetes, lo que le permite identificar al atacante y aplicarle las medidas necesarias.
Ataque detectado.
7. El ataque pitufo
El ataque pitufo consiste en enviar solicitudes difundidas 1CM.R a la red en nombre del ordenador víctima. Como resultado, las computadoras que han recibido dichos paquetes de transmisión responden a la computadora víctima, lo que conduce a una reducción significativa en el rendimiento del canal de comunicación y, en algunos casos, al aislamiento completo de la red atacada.
Para reconocer este ataque, es necesario analizar la carga del canal y determinar las razones de la disminución del rendimiento. RealSecure no reconoce a Smurf, lo cual es una desventaja importante de este producto, ya que este tipo de ataque es extremadamente efectivo y se usa con bastante frecuencia.
El ataque no fue detectado.
8. Transmisión de paquetes IP fragmentados
La cantidad de implementaciones de ataques que utilizan la capacidad de fragmentar paquetes IP es bastante grande. Por ejemplo, el programa jolt transmite varios paquetes IP fragmentados a la computadora víctima, que, cuando se ensamblan, forman un paquete de más de 64 K de tamaño (el tamaño máximo de un paquete IP es 64 K min con la longitud del encabezado). Este ataque es efectivo contra computadoras que ejecutan Windows NT. Al recibir un paquete de este tipo, Windows NT, que no tiene un parche especial icmp-fix, se congela o falla. Otras variantes de estos ataques utilizan compensaciones incorrectas en fragmentos de IP, lo que provoca una asignación de memoria incorrecta, desbordamientos del búfer y, en última instancia, fallos del sistema.
Para detectar ataques de fragmentación es necesario realizar y analizar el ensamblaje de paquetes sobre la marcha, lo que aumenta significativamente los requisitos de hardware (rendimiento del procesador, memoria, etc.) para monitorear los flujos de información.
RealSecure no detecta ataques similares a los que hemos llevado a cabo, aunque los ataques de fragmentación están presentes en la base de datos de firmas de ataques de RealSecure.
El ataque no fue detectado.
9. Ataque terrestre
El ataque Land explota vulnerabilidades en la implementación de la pila TCP/IP en algunos sistemas operativos. Consiste en transmitir un paquete TCP con el indicador SYN configurado al puerto abierto del ordenador de la víctima, y la dirección de origen y el puerto de dicho paquete son respectivamente iguales a la dirección y el puerto del ordenador atacado. Esto hace que la computadora víctima intente establecer una conexión consigo misma, lo que resulta en un aumento significativo en la carga del procesador y puede provocar que se congele o se reinicie. Este ataque es muy eficaz en algunos modelos de enrutadores de Cisco Systems y un ataque exitoso a un enrutador puede provocar la caída de toda la red de la organización.
Puede protegerse de este ataque, por ejemplo, instalando un filtro de paquetes entre la red interna e Internet, estableciendo una regla de filtrado que especifique suprimir los paquetes provenientes de Internet con la IP de origen. direcciones de computadoras en la red interna.
Llevamos a cabo una serie de ataques terrestres contra ordenadores de stands individuales, incluido el ordenador en el que estaba instalado RealSecure. Este ataque no fue detectado. Además, el producto bajo prueba no tiene herramientas para describir ataques que utilicen la suplantación de direcciones de origen como direcciones de red interna, lo que incluye a Land.
El ataque no fue detectado.
10. Ataque de inundación DN5
La inundación de DNS es un ataque dirigido a servidores de nombres de Internet. Consiste en enviar una gran cantidad de solicitudes DNS y provoca que los usuarios no puedan acceder al servicio de nombres y, por tanto, su trabajo se vuelva imposible. Para identificar este ataque, es necesario analizar la carga del servidor DNS e identificar las fuentes de las solicitudes.
RealSecure no analiza la carga del servidor de nombres. Para proteger los servidores DNS, se verifican las solicitudes para garantizar que se detecten ataques relacionados con exceder la longitud del nombre de dominio, pero no se detecten ataques de inundación de DNS.
El ataque no fue detectado.
11. Ataque de suplantación de DNS
El resultado de este ataque es la introducción de una correspondencia impuesta entre una dirección IP y un nombre de dominio en el DNS. caché del servidor. Como resultado de un ataque exitoso, todos los usuarios del servidor DNS recibirán información incorrecta sobre nombres de dominio y direcciones IP. Este ataque se caracteriza por una gran cantidad de paquetes DNS con el mismo nombre de dominio, lo que se asocia a la necesidad de seleccionar ciertos parámetros de intercambio DNS.
Para identificarlo es necesario analizar el contenido del tráfico DNS. Sin embargo, el producto bajo prueba no tiene herramientas para describir el contenido de los intercambios DNS, por lo que no reconoce los ataques de esta clase. Durante las pruebas, se llevó a cabo un ataque exitoso en un servidor DNS en funcionamiento y en una computadora en la que estaba instalado RealSecure.
El ataque no fue detectado.
12. Ataque de suplantación de IP (syslog)
Una gran cantidad de ataques en Internet están asociados con la falsificación de la dirección IP de origen. Estos incluyen la suplantación de syslog, que es la transmisión de un mensaje a la computadora de la víctima en nombre de otra computadora en la red interna. Dado que el protocolo syslog se utiliza para mantener registros del sistema, al enviar mensajes falsos a la computadora víctima, es posible inducir información o encubrir las pistas de acceso no autorizado.
La detección de ataques relacionados con la suplantación de direcciones IP es posible monitoreando la recepción en una de las interfaces de un paquete con la dirección de origen de la misma interfaz o monitoreando la recepción en la interfaz externa de paquetes con direcciones IP de la red interna.
Durante el proceso de prueba, se llevó a cabo el siguiente experimento: se envió un mensaje syslog con la dirección de origen de la misma computadora a una computadora con RealSecure instalado. La reacción fue mostrar en la ventana de actividad actual un mensaje del ordenador con RealSecure para sí mismo, es decir, no se detectó el ataque.
Además, el producto no cuenta con herramientas para describir eventos de red que reflejen la suplantación de direcciones IP. Obviamente, los desarrolladores de RealSecure no se propusieron el objetivo de contrarrestar este tipo de ataques, dejando la implementación de la protección a otros medios (por ejemplo, filtros de paquetes basados en enrutadores).
El ataque no fue detectado.
13. Aplicación de herramientas automatizadas
Una característica importante de RealSecure es la determinación fiable del uso de herramientas de evaluación de seguridad automatizadas. Durante el proceso de prueba, se probaron los programas Satan e ISS, los cuales fueron detectados y registrados con éxito por RealSecure.
Ataque detectado.
Conclusiones
Como resultado de evaluar las capacidades del producto RealSecure utilizando el método de implementación práctica de ataques, se identificaron las ventajas de este producto, lo que nos permitió concluir sobre la conveniencia de su uso para proteger secciones de Internet. Al mismo tiempo, RealSecure no contiene herramientas para identificar y contrarrestar los ataques que se han generalizado recientemente. Al parecer, esta característica del producto se debe, por un lado, a la falta de un mecanismo para añadir firmas de nuevos ataques y, por otro lado, a la difusión relativamente reciente de información sobre nuevos ataques y vulnerabilidades identificadas.
Según información de ISS, en futuras versiones del producto RealSecure está previsto incluir un mecanismo para actualizar la base de datos de firmas de ataques y vulnerabilidades de software.
Agradecimientos
Las claves de prueba para probar versiones comerciales con todas las funciones de los productos de la familia SAFEsuite fueron proporcionadas amablemente por el representante oficial de ISS en Rusia y los países de la CEI, JSC NIP Informzashchita. L.
Literatura
1. John D. Howard. Análisis de Incidentes de Seguridad en Internet 1989-1995. Instituto Carnegie de Tecnología. Universidad Carnegie Mellon. 1997.
2. I. Trifalenkov. Herramientas para el estudio de la seguridad de los sistemas de información. Actas de la conferencia “Internet-Rusia ’97”.
3. A. Azarkin, G. Fomenkov. Proteger los recursos de información de Internet mediante la inspección de los flujos de datos. Protección de la información. Confidencial. N° 5.1997.
4. Cristina B. Sullivan. Encontrar grietas en la fortaleza de seguridad de la red. Semana de PC/RE. N° 46. 1997.
5. Michael Sobirey. Página de sistemas de detección de intrusos. www-rnks.informatik.tu-cottbus.de/~sobirey/ids. html, 1997.