Desarrollo de una Interfaz Gráfica Multiplataforma para una Herramienta de Computación Forense Edward Andrés Corredor Rondón Resumen Abstract La Computación Forense es la ciencia que estudia la forma de aplicar métodos legales, protocolos y técnicas para obtener, analizar y preservar evidencia digital, se han desarrollado herramientas como: Encase, Helix, CFIT1, Snort entre otros, los cuales tienen como misión detectar la presencia de intrusos, aplicaciones o estaciones de trabajo que atenten contra la seguridad de la compañía. El presente artículo muestra una panorámica general de la Computación Forense, resaltando en primer lugar su importancia, sus objetivos a continuación se muestran algunos de los tipos de programas y herramientas usadas por las compañías, haciendo especial énfasis en Snort, objetivo de este documento. Para finalizar, se da una breve explicación de la adaptación de la aplicación de Software Libre a esta herramienta de Computación Forense. Computer Forensics is the science that studies the way to apply legal methods, protocols and techniques to obtain, to analyze and to preserve digital evidence, have been developed tools like: Encase, Helix, CFIT1, Snort among others. Their mission is to detect the presence of intruders, applications or workstations, attempting against security of a business. This article shows a general view of Computer Forensics, standing out in the first place its importance, its objectives next are some of the types of programs and tools used by the companies, doing special emphasis in Snort, objective of the investigation. Palabras Clave: Computación Forense, Software Libre, Snort, Detector de Intrusos, SWING, JFC, Evidencia Forense e Intrusión. Keywords: Forensic computation, free Software, Snort, SWING, JFC, Forensic Evidence. 52 Universidad El Bosque - Facultad de Ingeniería de Sistemas I. INTRODUCCIÓN Es un hecho que durante la última década las intrusiones e incidentes han aumentando en gran escala debido al elevado e indebido uso de Internet, de manera paralela a la presencia de aplicaciones y comportamientos extraños del PC[4]. Se ve a diario los constantes ataques que sufren los servidores de las compañías más importantes (Microsoft, Yahoo, entre otros), pero nadie está a salvo de los ataques de los hackers. Aunque la información de un usuario final puede ser inútil, su ordenador se puede convertir en el origen de un ataque a un tercero Debido a lo anterior, las empresas a nivel mundial están siendo preparadas para contrarrestar nuevos ataques, están invirtiendo en seguridad, capacitando el personal, acondicionando diferentes herramientas, contratando empresas que se encargan de la seguridad e instalando programas que detectan y solucionan problemas de virus y ataques, debido a que el problema de inseguridad siempre va a existir aún cuando se actualice dichas herramientas. La solución de muchos usuarios es poner un Firewall que cierra todos aquellos puertos (Servicios) que no se utilizan, reduciendo de esta forma la posibilidad de ataques. Pero, ¿es esto suficiente? La respuesta es no. El Firewall representa una puerta, que prohíbe el paso a todos aquellos servicios no autorizados, pero que deja pasar aquellos que el usuario detrás del Firewall necesita usar. [6]. Dentro de la investigación que se realizó, se inició con la búsqueda de información pertinente a la Computación Forense en Colombia, en el mundo, empezando desde las bibliotecas, pasando por las universidades hasta las páginas más reconocidas sobre este tipo de información, este proceso de investigación arroja un resultado bastante evidente debido a que esta ciencia es nueva en el mundo, se observa que su nacimiento se debió a problemas que no tienen nada que ver con lo sucesos que se presentan en la red, como es el asesinato, las matanzas, a diferentes personas, hoy por hoy con el auge de la Internet donde se presenta otro tipo de infracciones que dio lugar a asociarlas a delitos y por ende darle el nombre de computación forense, posteriormente se realiza un est udio de la s her ram ient a s ex istentes y su funcionamiento, saber si eran comerciales o de código abierto, se realiza un paralelo debido a que las empresas que les interesa el software tienen solvencia económica y exigen garantía que las empresas comerciales lo ofrecen pero hay factores que no conviene debido a los problemas que genera tener Sistemas operativos como Windows donde son muy vulnerables que dichas empresas migran su tecnología a Sistemas operativos que no tengan esos inconvenientes, además se evalúa las empresas que en Colombia utilizan esta tecnología gracias a que previamente se investiga de empresas que trabajen en esa área y se encuentra con una empresa en Colombia que compra las licencias y trabaja con el software en las empresas que son los usuarios finales. además se evidencia que tan solo en el área de educación se encontró a la Universidad Los Andes como pionera en este tipo de tema pertinente a la seguridad informática, la Asociación de Ingenieros han realizado una serie de foros, seminarios sobre las herramientas existentes a nivel comercial y código abierto, además las empresas dan la razón por la cual no utilizan ese tipo de tecnología debido a la mala información que tienen sobre ellas, aduciendo que solo es necesario el antivirus, cortafuegos y Proxy para una protección completa y que a esto se le suma el costo que esto ofrece, esto lleva a realizar un listado de aplicativos que existen para solucionar todos los inconvenientes que trata la Computación Forense, asimismo se evidencia que las herramientas comerciales con muy elevados costos y que en un porcentaje muy pequeño las empresas en Colombia invierten en este tipo de software, caso cont rar io de las empresas llamadas Mipy mes (Microempresas, pequeñas y medianas empresas) donde un porcentaje bajo utiliza este tipo de software pero con licencia GLP. Por esta razón, el incidente representa un reto para la organización, ya que implica un alto grado de responsabilidad ante la compañía; para demostrar lo efectivo y eficaz que se toman las decisiones frente a un problema que aumenta día a día, además es un compromiso que se plantean para actuar de la manera efectiva y evitar problemas que puedan comprometer la información privada de la organización. La Computación Forense cuenta con una serie de especialistas con conocimientos en los problemas que se generan, dichas personas están preparadas para efectuar el correctivo apropiado, con normas y fundamentos que permiten determinar las posibles causas de la intrusión, perdida de información o presencia de aplicativos indebidos y con base a lo anterior establecer hipótesis sobre el caso presentado y obtener la evidencia que sustente la hipótesis.[1] De igual manera Rehman afirma: “para que los investigadores puedan cumplir satisfactoriamente este pro ce dim iento se han cre ado prog rama s y procedimientos para la obtención de un resultado optimo, dentro de los requisitos que exige la comunidad de seguridad en el mundo se encuentra la realización de cursos, especializaciones y certificaciones que persiguen el buen desempeño de los funcionarios responsables de una buena investigación”. [9] El presente artículo muestra cual fue el proceso para adapt ar una aplicación a una her ramient a de Computación Forense, para esto en la primera parte se hablará de la historia que rodea al área que pertenece la Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007 aplicación antes mencionada, en la segunda se dará explicará el funcionamiento alguna de las herramientas mas utilizadas de Computación Forense y cuáles son las mas utilizadas en Colombia. Posteriormente, se explicará la herramienta escogida para adaptarle el entorno gráfico, y finalmente el procedimiento que se tomo para cumplir dicho objetivo. II. ESTUDIO Para poder tener un entendimiento claro y preciso de la siguiente investigación es necesario que el lector tenga claro los conceptos de: Detector de Intrusos, Intrusión, Sniffer, Evidencia Digital, Licencia GPL y Software Libre: Los Sistemas de Detección de Intrusos, buscan delatar anomalías, equipos y aplicaciones que desean atentar con la seguridad del equipo o la red. En la figura No. 2 se muestra la estructura de un Detector de Intrusos en una Red. InterNet Servidor NIDS irregularidad o anomalía, este tipo de problema que se genera en la red, ya sea intento de ingreso por parte de personas no autorizadas, la utilización de algún aplicativo no autorizado, la presencia de virus de alguna característica en particular, esto se le llama Intrusión, así mismo se tendrá a un Sniffer que tiene como función observar y manipular los paquetes generados en una red local o Intranet o en su defecto el trafico que se genera en una máquina en particular para su posterior análisis. Posteriormente, La Evidencia Digital como elemento fundamental de la Computación Forense, que según Alder Raven es cualquier tipo de información que está sujeta a investigación por parte de personal especializado en el tema, a partir de una extracción ya sea en una red, dentro de un equipo, [8] lo importante es que después de la extracción, el investigador debe procurar no alterar la evidencia por que es la materia prima para que ellos puedan generar un reporte de lo que haya sucedido. También, el valor agregado que se le da a este tipo de herramientas es agruparlo dentro de la categoría de Software Libre que no implica que se distribuya sin costo alguno, por el contrario el objetivo es que los desarrolladores aporten alguna mejora o actualización y la dejen a disposición de la comunidad. Caso contrario sucede con las herramientas bajo Licencia GPL son aquellas que se distribuyen libremente para el uso público de esta aplicación. Retomando a la idea principal de la Computación Forense se define Según Óscar López: “la Computación Forense recibe el nombre gracias al FBI que en 1984, crea el programa de almacenamiento magnético, este inicia el equipo de análisis de computadores (CART), en 1993 se realiza la primera conferencia internacional de evidencia computacional, mas tarde en 1995 se crea la Organización Internacional de evidencia computacional (IOCE), en 1997 los países que conformaban la organización mundial deciden que el personal que iba a encargarse de este problema debía ser entrenado y equipado para tratar crímenes de alta tecnología”.[5] Figura 1. Sistema Detector de Intrusos En la figura No. 2. Se muestra la razón por la cual se crea este tipo de herramientas. Se puede observar la arquitectura de una red pequeña que consta del servidor, firewall, Sistema Detector de Intrusos, dos estaciones de trabajo, un router, además el NIDS está en un nivel inferir del firewall para detectar los puertos que el usuario define como confiables, esto hace que este software filtre los paquetes que más pueda en caso contrario el Detector de Intrusos lo haga por él. L a Comput ación Forense ofrece una ser ie de herramientas para las diferentes áreas que cubren particularmente la Detección de Intrusos, como son: Además, como se dijo anteriormente un IDS (Sistema Detector de Intrusos), busca alertar sobre cualquier • Herramientas de Recolección y Análisis de evidencia. • Herramientas de Detección de Intrusos. • Herramientas de Análisis de Paquetes (Sniffer). 53 54 Universidad El Bosque - Facultad de Ingeniería de Sistemas Obtención fraudulenta de información confidencial vía E-mail En el trabajo En lugares públicos E-mail suplantando banco o entidad de gobierno para “pescar” información real PC conectada a Red Envío masivo de E-mails para “pescar”incautos 7. Secuestro de sesión Habilita función de control de sesión Habilita función de monitoreo de sesión Observa en pantalla lo mismo que ve el usuario 1. Phishing Objetivo del fraude Administrador de Red Aplicaciones usadas Web sites visitados Obtiene información E-mails Pérdida de información Uso inadecuado de SW malicioso recursos de la PC Archivos ejecutables Juegos Imágenes Adjuntos en Script de Web pages Al ejecutar archivos Cuando pierde información El usuario se da cuenta Mediante E-mails Juegos Archivos ejecutables Dispositivos HW + SW entre PC y teclado 6. Virus Se reproduce y trasmite “Worms” / No se reproducen Caballos de Troya / Esperan tiempo para activarse “Pop ups” “Banners” Frases típicas 2. Keyloggers Fraudes por Internet Variantes Objetivo SW que muestra publicidad Anuncios repentinos en pantalla Incluyen Spyware Riesgo Sin conocimiento del usuario Sin permiso del usuario Descargar juegos Adware y Spyware Premios Videos gratis Botones “engañosos” se instalan Programas gratis Compartiendo archivos en Internet Adware Spyware Incluyen Claves de usuario Número de cliente Números de cuenta Password/Pin “estamos actualizando nuestros registros” “seguridad y mantenimiento” “investigación de irregularidades” “personalización de cuentas” “su cuenta ha sido congelada” “tenemos que reconfirmar sus datos” “su tarjeta de crédito ha sido cancelada” “usted tiene una suma grande de dinero en su cuenta, por favor verifique sus movimientos” “actualice sus datos” 3. Web Page Spoofing 5. Adware SW que envía información personal a terceros Muchos programas gratuitos de Internet Carlos Ramírez Acosta Septiembre 2005 SW Crear sitios Web falsos Capturar en “campos normales” datos personales / información de clientes El cliente “cree” que esta Digita número de usuario en una Web site real Digita contraseña Se accede a Web sites falsos x ligas concentradores de información en Web sites visitados Nombres de usuario Contraseñas mal uso de la información obtenida Propósito Hacer Enviar publicidad Al “bajar” de Internet programas ilegales espía se carga Al “bajar” de Internet programas gratuitos Información enviada 4. Spyware Sin autorización Sin conocimiento Almacenar texto que se digita en teclado Recuperar archivo y conocer información Identificador de usuario Equipos públicos y contraseñas Cafés Internet Hoteles Riesgo mayor Salas de aeropuertos Alguien con acceso físico a PC propia Figura 2. Problemas generados en Internet Sin embargo y según consideración de Óscar López “la seguridad exige en el entorno actual una inversión de grandes cantidades de dinero debido a que las empresas utilizan software comercial que es muy costoso y esto se refleja en la credibilidad ante las grandes compañías como también en la garantía que ofrecen”.[5] Dentro de las áreas más estudiadas en Colombia de Computación forense se encuentra la Informática Forense que tiene mucho que ver con el análisis de dispositivos de almacenamiento, pero según Óscar López “la Informática Forense como el acto de recolección, análisis, identificación, preservación, extracción, interpretación, documentación y presentación de las pruebas en un contexto de inspección”.[5] De hecho, sobre Informática Forense se puede decir que en Colombia se relaciona con la perdida de información, que abarca, como podría ser una copia ilegal, intrusión desde o hacia un PC sin acceso absoluto, es por eso que los investigadores realizan unos procedimientos estándar para no alterarla. Entre tanto se puede mencionar 3 importantes herramientas mas utilizadas en Colombia: • Encase • Forensic Toolkit • WinHex (Forensic Edition). [2] Dentro de las herramientas mencionadas se destaca encase, que realiza una copia y análisis de la información de los dispositivos, el aspecto negativo de esta herramienta se destaca dos aspectos, la primer a es la inversión que cuesta comprar la licencia y contratar la persona para la capacitación correspondiente y el otro factor se debe a que no esta diseñada para ambientes Web. III. IDS (SISTEMA DETECTOR DE INTRUSOS) De igual forma existen herramientas dentro de la Computación Forense que se mencionaron anteriormente y son los Sistemas de Detección de Intrusos que están compuestos por 3 elementos: • Base de Datos que proporciona los eventos • Motor de análisis en busca de evidencia • Un mecanismo de respuesta, por lo general es una alerta en forma de archivo que proporciona la información necesaria para conocer sobre el evento. La primera es el origen de los datos, es decir el sistema que genera las alertas de precaución, están clasificadas por categorías, sin olvidar que los Sistemas Detectores de Intrusos trabajan bajo 7 ambientes: Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007 • Basados en una maquina • Basados en varias maquinas • Basados en aplicación • Basados en objetivos • Monitores híbridos • Basados en nodo de red La primera recoge datos generados por un PC, la segunda muy similar a la anterior pero como su nombre lo indica es inspeccionar los datos generados por dos o mas PCS, La tercera categoría registra la actividad generada por una aplicación en particular, la cuarta, generan registros propios que comparan con los paquetes que están en al red, la quinta categoría combina la funcionalidad de un Sniffer con la efectividad de un monitor basado en aplicaciones o en su defecto un Sistema detecto de Intrusos basado en red, y por ultimo la séptima es un caso particular y muy especial ya que se sitúa en el host para monitorear todo los paquetes que circulan en la red, realizando filtros, comparando patrones. De la misma manera que son herramientas poderosas por su grado de efectividad en el momento de la intrusión, también tiene puntos vulnerables o desventajas como son: • Producen una gran cantidad de falsas alarmas debido al comportamiento poco predecible de usuarios y sistemas. • Frecuentemente se requieren extensos "sesiones de entrenamientos" para el aprendizaje de eventos del sistema con el objetivo de obtener los perfiles de comportamiento “normal”. Pero fortalezas frente a aplicaciones de la misma funcionalidad, como los firewall: • Detectan comportamientos inusuales y poseen la habilidad de detectar síntomas de ataques sin tener un conocimiento detallado del mismo. Pueden producir información que luego se emplee para definir patrones de ataques y pueden ser usados para realizar un análisis de tendencias de las amenazas de seguridad. funcionalidades, como dar estadísticas de los datos encontrados. Requiere conocimientos de seguridad, o de lo contrario se pierde mucha de su potencia. Existe una versión para Windows2000/NT. • Dragon: Otro IDS para Linux/Unix. Tiene 3 componentes, un NIDS, un HIDS y un monitor que permite recibir información de los NIDS/HIDS.[3] Es una buena opción si no se desea entrar en gran cantidad de detalles SNORT La primera opción fue el aplicativo que se seleccionó para realizar el proyecto de adapatacion de una herramienta de Software Libre, ver figura No. 3. Figura 3. Sistema Detector de Intrusos “Snort” De la misma manera Snort hace parte del grupo de Software bajo GPL, requisito vital para incorporar a la investigación inicial y adicionalmente es multiplataforma, durante el desarrollo del aplicativo se evidencio del rustico uso de Snort y a pesar de que el autor del Libro oficial donde afirma sobre la sencilla forma de creación de patrones o reglas para el uso de Detección de Intrusos, la persona que se le asigne la administración de este software debe tener conocimientos básicos de redes, debido a que en el momento de que se crean las reglas se puede filtrar, por protocolo y puertos entre otros aspectos. Para el Desarrollo de la aplicación que se define como el Desarrollo de una Aplicación de Software Libre Multiplataforma para una herramienta de Computación Forense, se basa en el software dedicado a los Sistemas Detectores de Intrusos, Sniffer, a esto se le suma que su funcionamiento se debe aplicar tanto en Windows como en Linux. No requiere de actualización constante de patrones. IV. HERRAMIENTAS IDS Existen algunos programas de libre distribución, principalmente basados en Linux. A continuación se presentan algunos IDS y software asociado: • Snort: Este es el IDS más famoso y potente en el mercado. [3] Está basado en análisis de patrones, aunque poco a poco empieza a implementar otras Figura 4. Inicio Snort 55 56 Universidad El Bosque - Facultad de Ingeniería de Sistemas El aplicativo posee 3 funcionalidades como se muestra en la figura No. 4. Que desempeña en la red y que fueron anteriormente explicadas, las cuales son: • Sniffer • Registro de Paquetes • IDS Posteriormente el Registro de paquetes o loggueador de paquetes, además de mostrar la estadística, visualizará los paquetes que se monitorea para dar una idea de que está entrando a la red. El procedimiento para obtener tal resultado se compone de la siguiente manera: primero, se solicita la usuario la interfaz que se utilizará, que podría ser Eth0 que es la tarjeta de red principal que se utilizará o Loopback que es un tipo especial de interfaz que permite hacer conexiones condigo mismo, seguido del tiempo de ejecución y posteriormente las funcionalidades de modo Sniffer con la diferencia de desplegar en una ventana todos lo paquetes que se monitorearon. Figura 5. Menú Snort El objetivo de la primera funcionalidad es proporcionar una estadística de los paquetes que están entrando y saliendo de la red perteneciente a los protocolos TCP, UDP, ARP y FTP, como se puede observar en la figura No. 6 donde solicita al usuario la interfaz o tarjeta de red, seguido de el tiempo en la cual se va a ejecutar dicha funcionalidad y por ultimo selecciona la acción que se ejecutará, el resultado de lo anterior se podrá observar en la figura No. 7 donde se desplegará un gráfico de la estadística de la información que se escaneo. Figura 6. Snort en Modo Sniffer Figura 7. Estadística del Modo Sniffer Figura 8. Snort en Modo Registro de paquetes Figura 9. Paquetes detectado en Registro de paquetes Por último el IDS que pretende, detectar el uso de programas prohibidos en las compañías como son emule, msn Messenger y el acceso a paginas de Internet para mayores de edad, estos patrones se definen en la figura No. 10, donde se escoge la interfaz, el tiempo de monitoreo y finaliza con la regla a evaluar, donde se evaluará una serie de irregularidades que el usuario define y al finalizar mostrará una advertencia e historial de ataques al PC en la figura No. 11. Revista de Tecnología - Journal of Technology • Volumen 6, No. 2, Julio - Diciembre 2007 Durante el proceso de elaboración del aplicativo se concluye que Snort tiene dos aplicativos totalmente separados, uno para redes inalámbricas y otros con redes de cableado y por tal razón se oriento el desarrollo a redes de cableado ya que las inalámbricas están iniciando su crecimiento en Colombia. Figura 10. Snort en Modo IDS Durante la investigación de Computación Forense, se concluye que en Colombia no hay conocimiento amplio del tema, causa por la cual no es utilizado este tipo de herramientas, debido a que es un tema muy reciente en el mundo según lo manifiestan las empresas que trabajan en esta área, pero que poco a poco está ganando terreno debido a los diferentes problemas que esta generando el auge del Internet, tan solo un 20% de la grandes empresas utilizan este tipo de tecnología. Muchas empresas colombianas familiarizan los problemas de intrusión con hackers únicamente y creen que solo el Firewall puede combatir este tipo de inconveniente, esto unido al problema de inversión hacen que las compañías no profundicen en el tema. VI. REFERENCIAS Figura 11. Alerta enviada Snort en Modo IDS V. CONCLUSIONES Durante el desarrollo de la aplicación se concluyó que Snort requiere de conocimientos previos en redes como protocolos y puertos, debido de que este software filtra e inspecciona estos elementos para la detección efectiva de intrusos. Así mismo, para el funcionamiento óptimo del aplicativo que se desarrolló se utilizó una base de datos o reglas, los cuales son patrones de detección y se utilizan para filtrar el contenido de la red. Además, Snort requiere ser instalado en el servidor de la red, debido a que requiere bastantes recursos para cargar efectivamente las reglas o patrones de filtro. Artículo de Reporte de Caso. Sometido a Arbitraje. El Autor Edward Andrés Corredor Rondón Ingeniero de Sistemas Universidad El Bosque. [email protected] [1] Caloyannides Michael, Artech House, Boston, Computer and Intrusion, 2003. [2] Casey, E. (2000) Digital Evidence and Computer Crime, Academic Press [3] Días, Luis Miguel, Sistema de Detección de Intrusos, Universidad Carlos III de Madrid. [4] Gramajo, Alejandro. (2005, julio, 25), Introducción a conceptos de IDS y técnicas avanzadas con Snort Madrid: http://people.baicom.com/_agramajo/pgp.asc [5] López Óscar., Informática Forense: Generalidades, aspectos técnicos y herramientas, Bogotá (Colombia) [6] Rodríguez, Miguel Ángel, Snort: Análisis de la herramienta visión práctica. [7] Scientic Working Group on Digital Evidence SWGDE (2000) Digital Evidence,: Standards and Principles. Forensics Science Communications. Aprl. V2. No 2 [8] División forense de la Armada, http://www.forensicsintl.com/art12.html, mayo de 2007. [9] Página Oficial de Snort, www.Snort.org, mayo de 2007. [10] Servicios de Computación Forense, www.computerforensics.com Computer Forensic Ltda. 57