• No se han encontrado resultados

Descripción de los comandos empleados

CAPÍTULO 3. Validación de la efectividad de los filtros

3.4 Integración de los filtros

3.4.1 Descripción de los comandos empleados

Primeramente en el fichero se indicó que el intérprete de comandos debía ser el bash mediante la expresión: #!/bin/bash al inicio del fichero. Para poder realizar las capturas por un tiempo determinado se creo la variable second, como valor predeterminado se le asignó el número 30 para que se ejecutara el fichero por medio minuto. Con el objetivo de que este tiempo pudiera cambiarse sin escribir en el fichero, y se le pasara modo parámetro al ejecutable en el shell, se empleó la pequeña síntesis de comandos:

if [ $# -ne 0 ]; then

seconds =$1

fi

Esta sintaxis significa: si la cantidad de parámetros que se le pasó al programa fue distinto de 0, entonces actualizar en la variable "second" al valor que se le asignó al ejecutable

(esta es la forma de personalizar el umbral de captura a la cantidad de segundos que se estime conveniente).

A continuación se escribieron las nueve expresiones de los filtros poniendo al final de cada directorio donde debía estar el resultado de cada uno independiente el símbolo &. Este símbolo es usado para ejecutar un conjunto de instrucciones bash en modo oculto asincrónicamente. Para lograr terminar los procesos (hijos) que se originaron con cada expresión de los filtros al concluir con el símbolo descrito, se usó el comando sleep después del último filtro, para que pusiera en espera al shell donde se empleó el ejecutable filtros (proceso padre).

sleep${seconds}s

A este comando se le pasa como argumento el contenido de la variable second,en segundo (indicado por la ‘s’ al final de la expresión). Después de transcurridos estos segundos este comando fuerza a que se termine el proceso padre, y con el acarrea los procesos hijos. Una muestra del fichero construido se encuentra en el Anexo C.

Para que automáticamente se realizaran las capturas por los filtros se programó la tarea en el fichero /etc/crontab.

Figura 3.18. Programación para la ejecución automática de las capturas.

En la figura los datos delimitados por la línea roja son referidos a la tarea programada. En el ejemplo se comenzará a ejecutar las capturas a las 9:00 a.m., 1:00 p.m. y 9:00 p.m. de lunes a viernes. El tiempo que dura la captura es definido en el ejecutable mediante la

variable second. Estas opciones pueden ser modificadas, según las características de la institución donde se implementen las capturas.

3.5 Conclusiones Parciales.

De las pruebas de ataques y sus capturas realizadas usando las herramientas nmap, hping2 y tcpdump se corroboró el correcto funcionamiento de los filtros diseñados, aunque en la validación del Filtro # 1 se demostró que el tcpdump no capturó los fragmentos SYN con una expresión del filtro que combinara un valor diferente de cero en el desplazamiento del fragmento y presentara activado una de las banderas TCP. Se alcanzaron capturas para las anomalías generadas superiores al 99% de los paquetes transmitidos en los ataques para tiempos de hasta 5 minutos. Se realizó un ejecutable para realizar simultáneamente los ataques y así obtener capturas en todos los filtros, demostrando que el método propuesto para realizar las capturas de forma simultánea funciona correctamente.

CONCLUSIONES Y RECOMENDACIONES

Conclusiones

La culminación de este trabajo posibilitó la comprensión, diseño e implementación de los objetivos trazados, concluyendo que:

9 Existen diversos enfoques en los Sistemas de Detección de Anomalías.

Especialmente las técnicas basadas en la Detección Estadística y Análisis de las Cabeceras de los Paquetes están estrechamente relacionadas con la investigación realizada.

9 Fueron abordadas las características de los Escaneos y ataques de DoS, así como sus afectaciones a la red.

9 Se seleccionaron los campos de los encabezados IP, TCP, UDP e ICMP que son

relevantes para la detección de las anomalías descritas.

9 Fueron utilizadas las primitivas y operadores aritméticos y lógicos que presenta el TCPDump para el diseño de expresiones con el objetivo de realizar capturas más específicas.

9 Se implementaron nueve filtros, a través de los cuales son arrojados patrones de las anomalías descritas a distintos ficheros.

9 Se realizó un shellscript que agrupa las expresiones de los filtros para realizar las capturas simultáneamente y guardar los resultados en ficheros.

9 Se realizaron pruebas para la validación de los filtros generando los ataques con las herramientas hping2 y nmap, arrojando resultados favorables como la captura del 99, 9 % de los paquetes generados en el ataque Inundación SYN para tiempos de hasta cinco minutos.

Recomendaciones

Debido a la importancia, aplicabilidad y posibilidad de incrementar las potencialidades del tema planteado para la realización de un Sistema de Detección de Anomalías de Red sería de gran importancia:

9 Agregar a los filtros nuevas expresiones con el objetivo de detectar patrones de

otros tipos de ataques en redes.

9 Creación de nuevos filtros que pretendan capturar datos interesantes para el análisis de ataques que empleen otros protocolos de red.

9 Escoger un período de tiempo apropiado según el entorno para la captura de

patrones, y así poder detectar anomalías que ocurran en distintos momentos y por períodos de tiempo prolongados.

9 Optimizar el método empleado (creación del ejecutable con un pequeño shellscript) para que los filtros sean capaces de capturar y guardar los datos relevantes para la detección de los ataques con la menor pérdida de paquetes posibles.

9 Procesar los resultados de los filtros, almacenados en ficheros planos con

herramientas como el Lenguaje de Procesamiento y Escaneo de Patrones en ficheros planos (Ej. GAWK) para reportar las anomalías detectadas.

9 Integrar correctamente la etapa de filtrado con la de procesamiento para la creación de un Sistema de Detección de Anomalías, que funcione eficientemente de acuerdo a las necesidades del entorno donde se implemente.

REFERENCIAS BIBLIOGRÁFICAS

AHMED, N., KHALIB, Z., AHMAD, R. B., SUDIN, S. & ASI, S. (2008) Low-End Embedded Linux Platform for Network Security Application – Port Scanning Detector. Advanced Computer Theory and Engineering, 2008. ICACTE '08. International Conference on. Phuket: 1085 - 1088

ANDERSON, D., FRIVOLD, T., TAMARU, A. & VALDES, A. (1994) Next generation intrusion detection expert system (NIDES). Menlo Park, CA, USA., Science Laboratory, SRI International.

ANDERSON, D., LUNT, T. F., JAVITZ, H., TAMARU, A. & VALDES, A. (1995) Detecting Unusual Program Behavior Using the Statistical Component of the Next- generation Intrusion Detection Expert System NIDES). Menlo Park, CA, USA, Computer Science Laboratory, SRI International.

ANDERSON, J. P. (1980) Computer security threat monitoring and surveillance. Washington, James P Anderson Co.

ASSOCIATION FOR COMPUTING MACHINERY. SPECIAL INTEREST GROUP ON SECURITY, A., AND CONTROL, IEEE COMPUTER SOCIETY (2002) Proceedings ... ACM SIGSAC New Security Paradigms Workshop, IEEE Computer Society Press, 2002.

BAUER, M. D. (2005) Linux server security, O'Reilly, 2005.

BURNETT, M., LOCHER, L. J., ANONYMOUS, DOYLE, C., AMARIS, C. & MORIMOTO, R. (2001) Maximum Windows 2000 Security, Sams Publishing, 2001. CHO, K., KAIZAKI, R. & KATO, A. (2002) An aggregation technique for traffic

monitoring. Applications and the Internet (SAINT) Workshops, 2002. Proceedings. 2002 Symposium on. Nara: 74-81.

COMER, D. E. (2002) Redes globales de informacion con Internet y TCP / IP. Principios básicos, protocolos y arquitectura, West Lafayette, IN 47907, Departament of Computer Sciences.

CONGRESS ON EVOLUTIONARY COMPUTATION, I. O. E. A. E. E., IEEE XPLORE (2002) CEC'02: proceedings of the 2002 Congress on Evolutionary Computation. IEEE, 2002.

CRUZ, D. D. L. C. (2008) Análisis de Técnicas de Detección de Anomalías, Diseño de una Herramienta de Monitoreo. Departamento de Telecomunicaciones y Electrónica. Santa Clara, Universidad Central “Marta Abreu” de Las Villas.

IEEE SEOUL SECTION STAFF, I. O. E. A. E. E., IEEE COMMUNICATIONS SOCIETY, IEEE XPLORE (ONLINE SERVICE), INSTITUTE OF ELECTRICAL, ICC 2005 (2005) 2005 IEEE International Conference on Communications, Seoul, Korea, IEEE, 2005.

JONCKHEERE, E., SHAH, K. & BOHACEK, S. (2002) Dynamic modeling of Internet traffic for intrusion detection. American Control Conference, 2002. Proceedings of the 2002. 2436 - 2442.

KENDALL, K. (1999) A Database of Computer Attacks for the Evaluation of Intrusion Detection Systems. Department of Electrical Engineering and Computer Science. Massachusetts Institute of Technology.

KUMAR, S. (2007) Smurf-based Distributed Denial of Service (DDoS) Attack Amplification in Internet. Internet Monitoring and Protection, 2007. ICIMP 2007. Second International Conference on. San Jose, CA: 25-25.

KUMAR, S., AZAD, M., GOMEZ, O. & VALDEZ, R. (2006) Can Microsoft’s Service Pack2 (SP2) Security Software Prevent SMURF Attacks? Telecommunications, 2006. AICT-ICIW '06. International Conference on Internet and Web Applications and Services/Advanced International Conference on, 89-89

LIMWIWATKUL, L. & RUNGSAWANG, A. (2004) Distributed denial of service detection using TCP/IP header and traffic measurement analysis. Communications and Information Technology, 2004. ISCIT 2004. IEEE International Symposium on. 605 - 610

LUNT, T. F., TAMARU, A., GILHAM, F., JAGANNATHM, R., JALALI, C., NEUMANN, P. G., JAVITZ, H. S., VALDES, A. & GARVEY, T. D. (1992) A Real-time Intrusion Detection Expert System (IDES). Menlo Park, CA, USA., Computer Science Laboratory, SRI International.

MAHONEY, M. V. & CHAN, P. K. (2001) PHAD: Packet Header Anomaly Detection for Identifying Hostile Network Traffic. Melbourne, FL, USA, Florida Institute of Technology.

MAHONEY, M. V. & CHAN, P. K. (2002a) Learning Models of Network Traffic for Detecting Novel Attacks. Computer Science Department. Melbourne, FL, USA, Florida Institute of Technology.

MAHONEY, M. V. & CHAN, P. K. (2002b) Learning nonstationary models of normal network traffic for detecting novel attacks. Eighth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Edmonton, Canada.

MALOOF, M. A. (2006) Machine learning and data mining for computer security: methods and applications, Birkhäuser, 2006.

MARTÍNEZ, H. M. C. (2007) Herramientas de monitoreo y detección de intrusos en servidores Linux. Departamento de Computación. México, D.F., Centro de Investigación y de Estudios Avanzados del Instituto Politécnico Nacional.

MOSCALU, T., STEEL, A. M., BROWN, E. & LIM, Y. L. (2008) A statistical approach to TCP session classification. Systems and Information Engineering Design Symposium, 2008. SIEDS 2008. IEEE. Charlottesville, VA:11-16.

MURALEEDHARAN, N. (2008) Analysis of TCP flow data for traffic anomaly and scan

detection. Networks, 2008. ICON 2008. 16th IEEE International Conference on.

New Delhi: 1-4.

NAJEEB, Z., NAZIR, F., HAIDER, S., SUGURI, H., AHMAD, H. F. & ALI, A. (2005) An intelligent self-learning algorithm for IP network topology discovery. Local and Metropolitan Area Networks, 2005. LANMAN 2005. The 14th IEEE Workshop on. Crete: 6 pp. - 6.

NETSCREEN TECHNOLOGIES, I. (2004) NetScreen: conceptos y ejemplos. Manual de referencia de ScreenOS. Volumen 4: Mecanismos de deteccion de ataques y defensa.

NEWMAN, SNYDER, J. & THAYER, R. (2002) Crying wolf:False alarms hide attacks.

Network World. Disponible en:

www.networkworld.com/techinsider/2002/0624security1.html [24 de Mayo 2009]. NORTHCUTT, S. & NOVAK, J. (2002) Network intrusion detection, Sams Publishing,

2002.

OHSITA, Y., ATA, S. & MURATA, M. (2004) Detecting distributed denial-of-service attacks by analyzing TCP SYN packets statistically. Global Telecommunications Conference, 2004. GLOBECOM '04. IEEE. 2043 - 2049.

PATCHA, A. & PARK, J.-M. (2007) An overview of anomaly detection techniques: Existing solutions and latest technological trends. Computer Networks. 51 ed.

PIETRO, R. D. & MANCINI, L. V. (2008) Intrusion Detection Systems, Springer, 2008. PUKKAWANNA, S., VISOOTTIVISETH, V. & PONGPAIBOOL, P. (2007) Lightweight

Detection of DoS Attacks. Networks, 2007. ICON 2007. 15th IEEE International Conference on. Adelaide, SA: 77-82.

SCHUBA, C. L., KRSUL, I. V., KUHN, M. G., SPAFFORD, E. H., SUNDARAM, A. & ZAMBONI, D. (1997) Analysis of a denial of service attack on TCP. Security and Privacy, 1997. Proceedings., 1997 IEEE Symposium on. Oakland, CA: 208 - 223. SMAHA., S. E. (1998) Haystack: An intrusion detection system. The IEEE Fourth

Aerospace Computer Security Applications Conference. Orlando, FL.

SONIYA, B. & WISCY, M. (2008) Detection of TCP SYN Scanning Using Packet Counts and Neural Network. Signal Image Technology and Internet Based Systems, 2008. SITIS '08. IEEE International Conference on. Bali: 646 - 649.

STANIFORD, S., HOAGLAND, J. A. & MCALERNEY, J. M. (2002) Practical automated detection of stealthy portscans. Journal of Computer Security., 10, 105–136.

TOMBINI, E., DEBAR, H., MÉ, L. & DUCASSÉ, M. (2004) A serial combination of anomaly and misuse IDSes applied to HTTP traffic. 20th Annual Computer Security Applications Conference. Tucson, AZ, USA.

WEI-HUA, J., WEI-HUA, L. & JUN, D. (2003) The application of ICMP protocol in network scanning. Parallel and Distributed Computing, Applications and Technologies, 2003. PDCAT'2003. Proceedings of the Fourth International Conference on. 904 - 906

ZHOU, J., LÓPEZ, J., DENG, R. H. & BAO, F. (2005) Information security: 8th international conference, ISC 2005, Singapore, September 20-23, 2005 : proceedings, Birkhäuser, 2005.

GLOSARIO DE TÉRMINOS

9 ALAD: Application Level Anomaly Detection.

9 DDoS: Distributed Denial-of-Service.

9 DoS: Denial of Service.

9 Firewalls: Equipos Cortafuegos.

9 HIDS: Host based Intrusion Detection System.

9 ICMP: Internet Control Message Protocol.

9 IDES: Intrusion Detection Expert System.

9 IDS: Intrusion Detection System.

9 IP: Internet Protocol.

9 LERAD: Learning Rules Anomaly Detection.

9 NIDES: New Intrusion Detection Expert System.

9 NIDS: Network Intrusion Detection System.

9 OOB: Out of Band.

9 OS: Operating System.

9 PHAD: Packets Header Anomaly Detection.

9 SPADE: Statistic Packets Anomaly Detection Engine.

9 TCP: Transmission Control Protocol.

9 TOS: Type of Service.

ANEXOS

Anexo A. Libpcap.

Libpcap es una librería de código abierto, en inglés (Open Source) que provee una interfaz de alto nivel a los sistemas de captura de paquetes de red. Fue creado en 1994 por McCanne, Leres y Jacobson -- investigadores del Laboratorio Nacional Lawrence Berkeley de la Universidad de California en Berkeley, como parte de un proyecto de investigación para mejorar el rendimiento de los gateway TCP/IP. El objetivo principal de los autores de libpcap era crear una plataforma independiente API7 para eliminar la necesidad de los sistemas dependientes de módulos de captura de paquetes en cada aplicación, como prácticamente todos los proveedores de OS implementan sus propios mecanismos de captura. La librería libpcap API está diseñada para ser utilizada a partir de C y C++. Sin embargo, hay muchos wrappers que permiten su uso en lenguajes como Perl, Python, Java, C# o Ruby. Libpcap funciona en la mayoría de los sistemas operativos basados en UNIX (Linux, Solaris, BSD, HP-UX). Existe también una versión para Windows llamado

Winpcap. Hoy en día, libpcap es mantenido por el Grupo de TCPDump. Toda la

documentación y el código fuente están disponibles en el sitio oficial de TCPDump en

http://www.tcpdump.org.

7

Una interfaz de programación de aplicaciones (API) es un conjunto de rutinas, estructuras de datos, clases de objetos y / o protocolos proporcionados por las bibliotecas y / o servicios del sistema operativo con el fin de apoyar la creación de aplicaciones.

Anexo D. Archivos de salida de los Filtros.

Anexo D.1 Salida del Filtro # 1.

Anexo D.2 Salida del Filtro # 2.

Anexo D.4 Salida del Filtro # 4.

Anexo D.5 Salida del Filtro # 5.

Anexo D.7 Salida del Filtro # 7.

Anexo D.8 Salida del Filtro # 8.

Documento similar