Facultad de Informática Ingeniería Informática PROYECTO FIN DE CARRERA VIGILANCIA DIGITAL David Tapia Santamaría Director: José Miguel Blanco Junio de 2014 Resumen En esta memoria se presenta un Proyecto Final de Carrera de Ingeniería Informática para la Universidad del País Vasco - Euskal Herriko Unibertsitatea, proyecto que ha sido llevado a cabo en las empresas PCI Security Doctors y S21sec. El objetivo de este proyecto ha sido establecer las bases que envuelven la Vigilancia Digital desde la fase de diseño hasta la implantación de una plataforma para llevar a cabo esta actividad. Al mismo tiempo, se ha realizado un estudio sobre la legislación aplicable a esta disciplina y se ha estudiado la viabilidad de monitorizar nuevas fuentes de información. La parte más importante del proyecto ha girado en torno a la plataforma de Vigilancia Digital desarrollada por S21sec IRATI con la que se ha trabajado durante gran parte del proceso. 3 Índice 1. Introducción .............................................................................................................. 10 2. Antecedentes ............................................................................................................. 13 2.1 Presentación de PCI Security Doctors ................................................................. 13 2.1.1 Oficina de Miñano ..................................................................................... 14 2.1.2 Equipo humano en PCI Security Doctors .................................................. 15 2.2 Presentación de S21sec S.A ................................................................................. 15 2.2.1 Oficina de San Sebastián ........................................................................... 15 2.2.2 Equipo humano en S21sec ......................................................................... 16 2.2.3 Análisis de antecedentes y motivación ...................................................... 17 3. Objetivos .................................................................................................................... 18 4. IRATI......................................................................................................................... 20 4.1 Presentación de la plataforma .............................................................................. 20 4.2 Arquitectura de la plataforma .............................................................................. 21 4.3 Funciones de la plataforma .................................................................................. 22 4.3.1 Recolección de documentos ...................................................................... 22 4.3.2 Limpieza de documentos ........................................................................... 22 4.3.3 Almacenamiento de los documentos ......................................................... 23 4.3.4 Filtrado de los documentos ........................................................................ 23 4.3.5 Procesamiento de la información ............................................................... 23 4.4 Técnicas y herramientas utilizadas por la plataforma. ......................................... 23 4.4.1 Conectores ................................................................................................. 23 4.4.1.1 Conectores de tipo crawler ............................................................ 24 4.4.1.2 Conectores de tipo RSS ................................................................. 24 4.4.1.3 Conectores basados en APIS ......................................................... 25 4.4.1.3.1 API de Twitter.......................................................................... 25 4.4.1.3.2 API de Facebook ...................................................................... 27 4.4.1.3.3 API de Bing.............................................................................. 28 4.4.2 Webcleaning .............................................................................................. 29 4.4.3 Blacklisting ................................................................................................ 32 4.4.3.1 Blacklisting Absoluto .................................................................... 32 4.4.3.2 Blacklisting Selectivo .................................................................... 32 4.4.4 Índice Inverso ............................................................................................ 33 4.4.4.1 Características ............................................................................... 33 4.4.4.1 Funcionamiento ............................................................................. 33 5. Legislación aplicada a la Vigilancia Digital ........................................................... 35 5.1 Introducción ........................................................................................................ 35 5.2 Leyes que deben aplicarse .................................................................................. 36 5.3 Los datos de carácter personal ............................................................................ 36 5.3.1 La dirección de correo electrónico ............................................................ 37 5.3.2 La dirección IP ........................................................................................... 37 5.3.3 Nombres de cuenta en redes sociales ......................................................... 37 5.4 Internet como fuente pública .............................................................................. 38 5.5 El fichero de datos de carácter personal ............................................................. 39 5.5.1 Determinar si existe fichero con datos de carácter personal ...................... 39 4 5.5.2 Dar de alta el fichero.................................................................................. 39 5.6 Legitimización para tratar datos de terceros en el ámbito de la Vigilancia Digital ................................................................................................................................... 39 5.7 Derecho al olvido y a la no conservación indefinida de los datos de carácter personal ...................................................................................................................... 40 5.8 Seguridad del fichero de datos ............................................................................. 41 5.9 Cumplimiento de los derechos A.R.C.O.............................................................. 42 5.10 Buenas prácticas en Vigilancia Digital .............................................................. 42 5.10.1 Recogida de datos de carácter personal aleatorios y sin intencionalidad 42 5.10.2 Recogida de datos de carácter personal concretos y con intencionalidad 44 6. Estudio de implantación de IRATI ......................................................................... 47 6.1 Adquisición de servidores .................................................................................... 47 6.1.1 Características ............................................................................................ 48 6.1.2 Costes asociados a la adquisición de servidores ........................................ 48 6.2 Integridad de los datos ......................................................................................... 51 6.2.1 RAID 1 (Mirroring) ................................................................................... 51 6.2.3 RAID 5 ....................................................................................................... 52 6.3 Estado actual de la arquitectura de red ................................................................ 53 6.4 Seguridad de la plataforma .................................................................................. 56 6.4.1 Seguridad a nivel de red ............................................................................ 56 6.4.2 Seguridad física ......................................................................................... 57 6.5 Revisión del estudio de implantación de IRATI .................................................. 60 7. Implantación de IRATI ............................................................................................ 62 7.1 Objeto del proyecto .............................................................................................. 62 7.2 Servicios ofertados en el proyecto ....................................................................... 63 7.3 Instalación de la plataforma IRATI ..................................................................... 63 7.4 Definición de activos ........................................................................................... 64 7.5 Definición de categorías ...................................................................................... 65 7.6 Selección de fuentes............................................................................................. 65 7.7 Selección de términos de búsqueda ..................................................................... 65 7.8 Selección del criterio de indexación .................................................................... 66 7.8.1 Criterio de localización .............................................................................. 66 7.8.2 Criterio de fuente crítica ............................................................................ 66 7.9 Definición de entidades ....................................................................................... 67 7.10 Definición de “Jobs” .......................................................................................... 67 7.11 Creación de boxes .............................................................................................. 68 7.12 Creación de cuadros de mando .......................................................................... 69 7.13 Generación de alertas ......................................................................................... 70 7.14 Generación de informes ..................................................................................... 71 7.15 Pruebas y refinamiento ...................................................................................... 72 7.16 Revisión y seguimiento ...................................................................................... 73 8. Nuevas fuentes de monitorización ........................................................................... 74 8.1 Markets de aplicaciones móviles ........................................................................ 74 8.1.1 Monitorización del App Store de iTunes ................................................... 75 8.1.2 Monitorización de Google Play ................................................................. 76 8.1.2.1 Recursos oficiales .......................................................................... 76 8.1.2.2 Recursos no oficiales ..................................................................... 77 5 8.1.3 Resumen de características de markets ...................................................... 79 8.2 Chats IRC ......................................................................................................... 79 8.2.1 Clientes con interfaz gráfica ...................................................................... 79 8.2.2 Clientes basados en scripting ..................................................................... 81 9. Gestión del proyecto ................................................................................................. 82 9.1 Gestión del alcance .............................................................................................. 82 9.2 Gestión de plazos ................................................................................................. 85 9.3 Gestión de riesgos y adquisiciones ...................................................................... 88 9.4 Gestión de dedicaciones....................................................................................... 89 10. Conclusiones ............................................................................................................ 91 Anexo A: Manual de instalación y configuración de IRATI .................................... 97 Anexo B: Glosario de términos ................................................................................... 98 6 Lista de Figuras y Tablas Figura 2 - 1 Logotipo de PCI Security Doctors ............................................................................. 14 Figura 2 - 2 Ubicación de PCI Security Doctors ........................................................................... 14 Figura 2 - 3 Logotipo de S21sec................................................................................................... 15 Figura 2 - 4 Localización de S21sec ............................................................................................. 16 Figura 2 - 5 Organigrama de S21sec ............................................................................................ 16 Figura 3 - 1 División de objetivos por empresa ........................................................................... 19 Figura 4 - 1 Arquitectura básica de IRATI .................................................................................... 21 Figura 4 - 2 Análisis de comportamiento de IRATI ...................................................................... 22 Figura 4 - 3 Estructura de funcionamiento de un crawler .......................................................... 24 Figura 4 - 4 Tokens de autenticación en Twitter ......................................................................... 26 Figura 4 - 5 Resultados entregados por la API de Twitter ........................................................... 26 Figura 4 - 6 Token de autenticación en Facebook....................................................................... 27 Figura 4 - 7 Resultados entregados por la API de Facebook ....................................................... 27 Figura 4 - 8 Compra de consultas en la API de Bing .................................................................... 28 Figura 4 - 9 Resultados entregados por la API de Bing ............................................................... 28 Figura 4 - 10 Consulta realizada a la web de Amazon.es ............................................................ 29 Figura 4 - 11 Cuadro de mando de WebCleaner ......................................................................... 30 Figura 4 - 12 Ejemplo de dirección web con ruido ...................................................................... 31 Figura 4 - 13 Resultado de pasar una URL a través de WebCleaner ........................................... 31 Figura 4 - 14 Ejemplo de tweet considerado como falso positivo .............................................. 32 Figura 4 - 15 Resaltado de palabras desde IRATI ........................................................................ 34 Figura 5 - 1 Cuenta de anonymous en Twitter ............................................................................ 38 Figura 5 - 2 Documento detectado relacionado con phishing que contiene datos de carácter personal....................................................................................................................................... 43 Figura 5 - 3 Datos de carácter personal recogidos en documento de phishing.......................... 43 Figura 5 - 4 Formación de la persona a monitorizar ................................................................... 44 Figura 5 - 5 Perfil de Facebook del sujeto monitorizado............................................................. 45 Figura 5 - 6 Lista de tweets publicados por el sujeto monitorizado ........................................... 45 Figura 6 - 1 Servidor HP Proliant DL380p .................................................................................... 49 Figura 6 - 2 Servidor Hp ProLiant DL360p ................................................................................... 49 Figura 6 - 3 Servidor DL180 G6 .................................................................................................... 49 Figura 6 - 4 Servidor 7158E2G ..................................................................................................... 49 Figura 6 - 5 Servidor HP ProLiant DL380p ................................................................................... 50 Figura 6 - 6 Servidor HP ProLiant DL360p ................................................................................... 50 Figura 6 - 7 Servidor IBM System x3630...................................................................................... 50 Figura 6 - 8 Estructura de RAID 1 ................................................................................................ 52 Figura 6 - 9 Estructura de RAID 5 ................................................................................................ 53 Figura 6 - 10 Arquitectura de red de PCI Security Doctors ......................................................... 54 7 Figura 6 - 11 Arquitectura de red en situación ideal ................................................................... 55 Figura 6 - 12 Servidor comprometido ......................................................................................... 55 Figura 6 - 13 Pivoting en la red interna de la empresa ............................................................... 56 Figura 6 - 14 Nueva arquitectura de red tras revisión ................................................................ 57 Figura 6 - 15 Cuatro de rack ........................................................................................................ 58 Figura 6 - 16 Control de acceso a cuarto de rack ........................................................................ 58 Figura 6 - 17 Sala blindada para la gestión de incidentes ........................................................... 59 Figura 6 - 18 Centro de gestión de incidentes ............................................................................ 59 Figura 6 - 19 Arquitectura de red tras revisión de costes ........................................................... 60 Figura 7 - 1 Security Operations Center en Madrid .................................................................... 63 Figura 7 - 2 Panel de activos de IRATI ......................................................................................... 64 Figura 7 - 3 Definición de fuentes en IRATI ................................................................................. 66 Figura 7 - 4 Ejemplo de BOX en IRATI.......................................................................................... 68 Figura 7 - 5 Resultados obtenidos tras parametrización del BOX ............................................... 69 Figura 7 - 6 Cuadro de mando en IRATI....................................................................................... 70 Figura 7 - 7 Configuración de alerta en IRATI .............................................................................. 71 Figura 7 - 8 Informe creado mediante Crystal Reports ............................................................... 72 Figura 8 - 14 Generación de RSS en Appszoom Figura 8 - 15 Formulario de búsqueda en Google Play Figura 8 - 16 Resultados obtenidos tras realizar una búsqueda en Google Play Figura 8 - 17 RSS obtenido a través de Androidpit.es Figura 8 - 18 Configuración de conexión en miIRC Figura 8 - 19 Log generado por el cliente miIRC Figura 8 - 20 Log generado por cliente IRC escrito en Python 76 77 77 78 80 80 81 Figura 9 - 1 Estructura de descomposición de trabajo................................................................ 84 Tabla 6 - 1 Requisitos hardware .................................................................................................. 48 Tabla 6 - 2 Presupuesto hardware .............................................................................................. 51 Tabla 6 - 3 Presupuesto hardware revisado ................................................................................ 61 Tabla 7 - 1 Tabla de activos Tabla 7 - 2 Tabla de categorías................................................. 67 Tabla 7 - 3 Tabla de entidades compuestas ................................................................................ 67 Tabla 8 - 2 Resumen de monitorización de markets 79 Tabla 9 - 1 Gestión de plazos....................................................................................................... 86 Tabla 9 - 2 Gestión de riesgos ..................................................................................................... 88 Tabla 9 - 3 Gestión de adquisiciones ........................................................................................... 89 Tabla 9 - 4 Gestión de dedicaciones ........................................................................................... 90 8 9 1 Introducción Cuando Internet fue creado, jamás se imaginó las dimensiones que adquiriría en el futuro. Hoy por hoy1, con más de 5000 millones de dispositivos conectados, Internet se ha convertido en medio en la que se comparten más de 5 millones de TB de información. Sabedores de la importancia de ello, muchas empresas e instituciones han realizado grandes esfuerzos por localizar y aprovechar esta información accesible a cualquier persona desarrollando una nueva disciplina denominada como Open Source Intelligence o Vigilancia Digital. ¿Pero cuáles son realmente los objetivos de la Vigilancia Digital? Aunque puedan perseguirse otros fines, los principales objetivos de la Vigilancia Digital, realizada de forma legal, son los siguientes: Prevención y lucha contra el crimen organizado en internet Con un aumento exponencial del uso de las tecnologías por parte de la población mundial, Internet se ha convertido en un medio en el que los criminales han encontrado una forma fácil y rápida de actuar. Estafadores, pedófilos, mafias y cibercriminales se mueven en un entorno en el que el anonimato es su mejor protección. La continua monitorización de las fuentes abiertas (foros, chats, blogs...) que utilizan estas bandas es indispensable con el fin de hacer un Internet más seguro para todos. Gracias a la Vigilancia Digital se consigue una alerta temprana y gestión de incidencias 1 Junio de 2014. 10 frente a acciones de piratería, fraude on-line, control de los canales de distribución así como una protección de la propiedad intelectual e industrial. Protección y control de la reputación de las marcas A diferencia de la marca, que se puede generar a través de medios publicitarios, la reputación no está bajo el control absoluto del sujeto o la organización, sino que la 'fabrican' también el resto de personas cuando conversan y aportan sus opiniones. Esto es especialmente importante en Internet, dónde resulta muy fácil y barato verter información y opiniones a través de mecanismos como foros, blogs o redes sociales. La transformación de la reputación real en reputación online es un cambio cualitativo por las consecuencias que genera. Es sencillo que rumores o filtraciones puedan deteriorar o mejorar la reputación profesional y personal de determinadas personas. En el extremo más negativo, estas personas pueden ver cómo se filtran partes de su vida íntima sin que puedan controlarlo. A ello contribuyen el anonimato que permite Internet a través del uso de seudónimos y avatares, y la fácil reproducción de las noticias e ideas, que a gran escala es lo que conocemos como contenidos virales. La Vigilancia Digital proporciona la detección y monitorización de información en las fuentes on-line proporcionando una valoración cuantitativa y cualitativa de las menciones y del potencial impacto sobre la marca o empresa, así como en los activos críticos. Prevención de fugas de información (DLP “Data Leak Prevention”) En seguridad de la información se entiende por fuga de información una salida no controlada de información que hace que esta llegue a personas no autorizadas o sobre la que su responsable pierde el control. En internet existen medios críticos en los que este tipo de información es publicada, en la mayoría de los casos, por grupos de cibercriminales y organizaciones de la competencia por lo que la continua motorización de los mismos es la única vía para mitigar su impacto. Por la importancia de todas ellas, se ha querido llevar a cabo este proyecto en el que se mostrarán desde los aspectos legales a tener en cuenta cuando se desarrolla una actividad de este tipo hasta los medios y tecnologías para llevarlo a cabo. La estructura de esta memoria, que recoge el trabajo de fin de carrera realizado, es la siguiente: En el segundo capítulo se detallan los antecedentes del proyecto. En él se dan a conocer las dos empresas en las que se ha desarrollado el proyecto así como cuál es su estructura organizativa. En el tercer capítulo se muestran cuáles han sido los objetivos que se han buscado en este proyecto, separados por los que corresponden a una empresa o a otra. En el cuarto capítulo se explican los detalles técnicos y funcionalidades de la plataforma de Vigilancia Digital desarrollado por S21sec, IRATI. En el quinto capítulo se expone la legislación vigente en materia de Vigilancia Digital y cuáles son los puntos más importantes que deben 11 cumplirse. El sexto capítulo se detalla el estudio realizado para la implantación de IRATI en la empresa PCI Security Doctors. Este capítulo se centra principalmente en los requisitos hardware y software así como en las medidas de seguridad que deberá tomar la empresa. En el séptimo capítulo se explica cómo se lleva a cabo un proyecto de Vigilancia Digital desde la captura de requisitos y puesta en marcha de la plataforma hasta la generación de informes. En el octavo capítulo se recogen los estudios realizados para monitorizar nuevas fuentes de información como son los markets de aplicaciones móviles y los chats IRC. En el noveno capítulo se detalla la gestión llevada a cabo durante el transcurso de este proyecto. En él se incluyen los diferentes aspectos relacionados con la gestión de un proyecto como son el alcance, plazos o los cambios acontecidos durante el desarrollo del mismo. En el décimo capítulo se exponen el conjunto de conclusiones y lecciones aprendidas tras haber concluido este proyecto. En el undécimo capítulo se citan las diferentes fuentes consultadas a modo de bibliografía. Respecto a los anexos de este proyecto, se ha redactado un manual de instalación y configuración de IRATI que no ha podido ser incluido en la memoria final por motivos de propiedad intelectual por parte de la empresa S21sec. Finalmente se incluye un glosario con las palabras más comunes utilizadas en ciberseguridad y Vigilancia Digital. 12 2 Antecedentes En este capítulo se presentan las empresas en las que se ha llevado a cabo este proyecto. Al mismo tiempo, se detallarán los equipos de cada empresa con los que se ha trabajado tanto en la fase de formación como en la de implantación del proyecto. 2.1 Presentación de PCI Security Doctors PCI Security Doctors S.L. es una empresa altamente especializada, dedicada a resolver los problemas de seguridad de las personas y organizaciones en estrecha colaboración con el cliente. Su lema “PROTECCIÓN Y CONTROL DE LA INFORMACIÓN”, es la base sobre la que fundamentamos la seguridad de sus clientes. Más de 22 años en el sector público avalan su profundo conocimiento de las amenazas y los modus operandi de las bandas organizadas que acosan hoy en día a la sociedad. Además, esta experiencia les ha facilitado el acceso no sólo a proveedores y tecnologías punteras del sector, sino también a formación exclusiva sólo al alcance de los grupos más especializados. 13 El compromiso de PCI Security Doctors con la innovación y la mejora tecnológica queda patente al decidir formar parte del Parque Tecnológico de Álava, que tiene en estas dos características el eje de su filosofía como entramado empresarial. PCI Security Doctors S.L. aporta además a su clientes valores tales como confidencialidad, disponibilidad, compromiso, rigor, profesionalidad, dedicación personalizada y sensibilidad. Figura 2 - 1 Logotipo de PCI Security Doctors 2.1.1 Oficina de Miñano Aunque PCI Security Doctors S.L se encuentra en un proceso de internacionalización, implantando delegaciones tanto en Quito como en Lima, su sede principal y en la que se ha realizado parte de este proyecto se encuentra en Parque Tecnológico de Álava de la localidad de Miñano. Con unas oficinas de cerca de 40 empleados, la empresa posee su central receptora de alarmas, y buque insignia de la compañía en esta sede. Todas las imágenes que provienen de las cámaras instaladas en los clientes así como la señal de las alarmas, son recogidas en este centro de operaciones en el que son gestionadas en un formato de 24x7x365. Figura 2 - 2 Ubicación de PCI Security Doctors 14 2.1.2 Equipo humano en PCI Security Doctors El trabajo en las oficinas de PCI Security Doctors se ha llevado a cabo junto al equipo técnico de la compañía. Su labor dentro de la organización es la de realizar los diseños de las medidas de seguridad que posteriormente son implantadas en los clientes. Para la consecución de este proyecto su experiencia y aportación ha sido vital a la hora de llevar a cabo el “Estudio de implantación de IRATI” puesto que han ayudado a diseñar el mapa de red de la empresa, así como a resolver las dudas ha surgido durante el proceso. Dado que los destinatarios finales de la plataforma es esta empresa, su opinión también ha sido tenida en cuenta a la hora de realizar el diseño. 2.2 Presentación de S21sec S.A S21sec es una multinacional especializada en servicios y tecnología de seguridad cuya finalidad es garantizar el desarrollo efectivo de los negocios. En la actualidad cuenta con 300 empleados y su objetivo es la protección de los activos digitales de mayor valor y críticos en las organizaciones: la información, las operaciones y la imagen de la compañía. S21sec se centra en lo que para ellos es la esencia de la seguridad: la prevención. Apuestan por un nuevo modelo de ciberseguridad gestionando la seguridad de los clientes, llevando la confianza a las nuevas tecnologías a las infraestructuras críticas y a los usuarios. El trabajo diario de la empresa, así como la colaboración con entidades públicas y privadas posibilita responder a tiempo y con éxito al fraude online y a las amenazas de ciberseguridad. Figura 2 - 3 Logotipo de S21sec 2.2.1 Oficina de San Sebastián En la actualidad S21sec S.A cuenta con oficinas en cinco países y lleva a cabo proyectos en más de veinticinco. En España posee oficinas en diversas ciudades concretamente en Barcelona, Madrid, Pamplona, León y San Sebastián., esta última sede principal de la compañía y en la que gran parte de este proyecto ha sido llevado a cabo. 15 Las oficinas de San Sebastián se encuentran situadas en el Parque Empresarial de Zuatzu. En estas oficinas trabajan 50 empleados, divididos en los departamentos de auditoría, integración de productos de terceros y, por último vigilancia digital, en la que se ha desarrollado gran parte de este proyecto. Figura 2 - 4 Localización de S21sec 2.2.2 Equipo humano en S21sec La oficina de S21sec en San Sebastián posee la siguiente estructura jerárquica: Gerencia Lookwise Integración de Productos Ecrime Consultoría Auditoría Vigilancia Digital Figura 2 - 5 Organigrama de S21sec El desarrollo de este proyecto ha sido llevado a cabo en el departamento de Vigilancia Digital compuesto por: Un Responsable de Departamento Dos Analistas 16 Un Implantador Un Administrador de Sistemas Parte de este equipo humano se encuentra en Madrid y otra parte en San Sebastián. Principalmente este proyecto se ha llevado a cabo apoyado por el analista y el implantador aunque la comunicación ha sido constante con el personal situado en la oficina de Madrid. Su aportación en el desarrollo de este proyecto ha sido la de realizar la formación en instalación, explotación y mantenimiento de la plataforma así como la de orientación durante el proyecto de Vigilancia Digital en el que se ha participado. 2.2.3 Análisis de antecedentes y motivación La necesidad de llevar a cabo este proyecto surge de la empresa PCI Security Doctors. Esta empresa, conoce la existencia de una plataforma de Vigilancia Digital que su “partner” empresarial S21sec ha desarrollado. El deseo de la compañía es el de implantarla en sus oficinas para ofrecer este servicio a sus clientes más importantes, así como a aquellos futuros que deseen contratarlo. El Parque Tecnológico de Álava emitió una serie de subvenciones a las que se podían acoger aquellas empresas pertenecientes al parque que desearan realizar proyectos de I+D+i. La idea de PCI es la de aprovechar esta oportunidad para adquirir el hardware y licencias de software necesarias para llevar a cabo el proyecto que supondrán el mayor desembolso económico del mismo. Dado que la plataforma de Vigilancia Digital que posee S21sec necesita de una formación tanto para su instalación y configuración como para su explotación, PCI Security Doctors planifica enviar a una persona a la oficina de San Sebastián de S21sec para llevar a cabo esta formación. Una vez formada esta persona debería volver a las oficinas de PCI Security Doctors para realizar la implantación de la plataforma. A principios de Octubre de 2013 comienzan las conversaciones entre ambas compañías para acordar cómo será el desarrollo del proyecto, declarando los recursos que serán necesarios así como la negociación sobre la cesión de licencias para la consecución del mismo. La incorporación del autor de este proyecto es el 11 de noviembre de 2013, en el que se inicia la formación, necesaria para la implantación de la plataforma, en las oficinas de S21sec San Sebastián. La Vigilancia Digital es una disciplina desconocida para gran parte de la mayoría de la sociedad y no existen muchas empresas a nivel mundial que se dediquen a ello. Como amante de la ciberseguridad, he considerado una gran oportunidad formar parte de un proyecto de estas características así como poder trabajar dentro de una multinacional de la seguridad digital como es S21sec. 17 3 Objetivos El objetivo principal de este proyecto es el de establecer las bases necesarias para implantar y explotar la plataforma de Vigilancia Digital de S21sec IRATI. Para ello se han establecido los siguientes puntos: Comprender el funcionamiento de la plataforma de Vigilancia Digital IRATI desde su parte más técnica; base de datos, código fuente, conexiones entre los componentes etc. De esta forma se permite que puedan adaptarse características de la plataforma a las necesidades del cliente. Aprender a implantar, mantener y explotar la plataforma. Se trata de una plataforma que aunque resulta intuitiva en su explotación, no lo es tanto a la hora de ser implantada, ya que soporta múltiples arquitecturas y el procedimiento de instalación no se encuentra automatizado al 100%. Elaboración de un manual de instalación de la plataforma. Fruto de lo aprendido durante esta formación se genera un manual que servirá como guía para los futuros implantadores de IRATI. Estudio y conocimiento de los aspectos legales que envuelven un trabajo de Vigilancia Digital. La labor de todo profesional es conocer el marco legal en el que se encuentra la actividad que está desarrollando y esto es posible mediante la realización de este estudio. Estudio de implantación de la plataforma IRATI en PCI Security Doctors. Determinar el hardware, software y requisitos de seguridad a nivel de red y físico necesarios para llevar a cabo la implantación de la plataforma en las oficinas de Vitoria-Gasteiz. 18 Realizar un proyecto de Vigilancia Digital para un cliente de S21sec. Este es llevado a cabo siguiendo las fases de captura de requisitos, implantación, pruebas y generación de informes. Estudiar las alternativas existentes para nuevos modelos de negocio de Vigilancia Digital como son los markets de aplicaciones para smartphones y los chats de IRC. Los objetivos quedan divididos por compañía en la que se desarrollan de la siguiente forma: Objetivos: Objetivos: • Realizar el estudio de implantación de IRATI. • Legislación aplicable a la Vigialancia Digital. • Comprender el funcionamiento de la plataforma. • Formaciión en implantación mantenimiento y explotación. • Elaborar el manual de instalación de IRATI. • Llevar a cabo un proyecto para un cliente de S21sec. • Estudio de alternativas para nuevos modelos de negocio en Vigilancia Digital. Figura 3 - 1 División de objetivos por empresa 19 4 IRATI 4.1 Presentación de la plataforma IRATI es una plataforma de Vigilancia Digital creada por la empresa S21sec que permite la recuperación y filtrado de contenidos de Internet. Surge como la evolución de su producto Bitacora® utilizado para el análisis de logs2, ampliando sus funcionalidades para poder realizar análisis de la información en Internet. Movida por el motor de búsqueda “Sinequa Engine”, desarrollado por la empresa Sinequa, la plataforma es capaz de procesar más de 100.000 documentos diarios. Algunas de sus características más importantes son las siguientes: 2 • Herramienta modular, con capacidad de ampliación en función de necesidades concretas, esto proporciona una adaptabilidad a los cambios puesto que internet tiene un gran dinamismo. • Procesamiento de diferentes tipos de fuentes de información (Redes sociales, RSS, noticias, portales web…). La plataforma posee diferentes tipos de conectores que le permiten interactuar con las diferentes fuentes de información. Registro oficial de eventos durante un rango de tiempo en particular. 20 • Almacenamiento local de los resultados obtenidos y generación de copias de seguridad para garantizar su integridad. Es vital que los resultados obtenidos permanezcan en el tiempo ya que el análisis del pasado aumenta las posibilidades de predecir el futuro. • Generación de informes y estadísticas que proporcionan una visión humana de los datos recopilados por la plataforma. • Generación de alertas cuando se detecten ciertos comportamientos en la web que puedan afectar al interesado. IRATI supone un gran avance en Vigilancia Digital puesto que permite automatizar muchos procesos que hasta la fecha se realizaban de forma manual o semiautomática. 4.2 Arquitectura de la plataforma Aunque tal y como se ha dicho anteriormente la plataforma es adaptativa, la configuración básica de ésta se encuentra compuesta por dos servidores. Un primer servidor llamado “Core” que se encarga del análisis, filtrado y procesamiento de la información, soportando el mayor volumen de trabajo, y un segundo servidor “Frontal” que se encarga de soportar la interfaz de usuario destinada de realizar búsquedas, generación de estadísticas, informes… a través de sus peticiones a la base de datos. Una representación básica de la plataforma sería la que se muestra en la Figura 4-1. Figura 4 - 1 Arquitectura básica de IRATI En ella la información entra por el servidor1, siendo procesada en su interior, para posteriormente mostrarse desde el servidor2. Esto no es más que un sencillo esquema de cómo se comporta la plataforma, si se realiza un análisis de su comportamiento la figura a mostrar sería la que se muestra en la Figura 4-2. 21 Figura 4 - 2 Análisis de comportamiento de IRATI 4.3 Funciones de la plataforma 4.3.1 Recolección de documentos En el contexto de IRATI, se denomina documento a cada texto contenido en una URL diferente, independientemente de su procedencia, Twitter, Facebook, etc. Todos los documentos que procesa IRATI son recogidos a través de sus conectores. Cada uno de estos conectores se encuentra programado para recopilar documentos sobre una determinada fuente de información. Actualmente existen conectores para la adquisición de información en portales de noticias, blogs, foros, redes sociales, Pastebin y buscadores. Dado que la plataforma es dinámica, permite que se generen más conectores en caso de que surgieran nuevas necesidades. En próximos apartados se detallará más el funcionamiento de estos. 4.3.2 Limpieza de documentos Una vez el documento es obtenido, pasa por un filtro para ser limpiado de anuncios, banners3, enlaces, etc. Esto facilita el procesamiento de la información y ayuda también a que se generen menos falsos positivos. 3 Inclusión de una pieza publicitaria dentro de una página web. 22 4.3.3 Almacenamiento de los documentos Todos los documentos obtenidos desde los conectores son volcados a una base de datos, concediéndole a cada uno de ellos un identificador unívoco con el fin de que un mismo documento no sea almacenado dos veces. Esto impide, por una parte, multiplicar la información almacenada con la consiguiente necesidad de espacio de almacenamiento, y por otra parte que se generen confusiones ya que, por ejemplo, si se está realizando un estudio sobre reputación y se almacena dos veces un comentario positivo sobre una empresa, esto dará lugar una desviación del estudio puesto que el comentario positivo solo ha existido una vez y no dos. 4.3.4 Filtrado de los documentos Tras el almacenaje de la información, esta pasa a ser filtrada. Los filtros en IRATI, por lo general, se basan en que el documento contenga una o una serie de palabras concretas para que estas sean suprimidas. El funcionamiento de la parametrización de los filtros de IRATI y su comportamiento será explicado en apartados posteriores. 4.3.5 Procesamiento de la información La fase de procesamiento de información consiste en clasificar el documento y extraer la información relevante para su estudio. Esto es realizado mediante el motor Sinequa y sus técnicas de procesamiento del lenguaje, en el caso de la clasificación se utiliza el índice inverso que también Sinequa contiene. Una vez concluida esta fase los documentos quedan listos para el uso de los analistas. 4.4 Técnicas y herramientas utilizadas por la plataforma. Tal y como se ha visto en la arquitectura de IRATI, los documentos indexados pasan por una serie de fases en las que se utilizan diferentes herramientas y técnicas. El objetivo de este apartado es describir aquellas más significativas y su funcionamiento. 4.4.1 Conectores La base de toda plataforma es la recolección de información de la forma más automatizada posible. Al igual que realizan los buscadores más importantes de Internet, es necesario tener una serie de arañas4 que naveguen por la web en busca de información. Dado que la información en internet se muestra en diferentes estructuras, y en el caso de la Vigilancia Digital, cobra una gran importancia el análisis de las redes 4 Programa que inspecciona las páginas del World Wide Web de forma metódica y automatizada. 23 sociales, es requisito indispensable tener diferentes modelos de conectores puesto que con un único conector sería imposible acceder a toda la información. 4.4.1.1 Conectores de tipo crawler Este tipo de conector es el conector más utilizado hoy en día y el empleado por la mayoría de buscadores en Internet. Su funcionamiento es sencillo, el crawler o araña recorre una determinada dirección web guardando todo el texto que se encuentra en ella. Una vez el texto es adquirido, éste es procesado buscando URLs dentro de él. Para cada nueva URL encontrada, la araña navega dentro de la dirección repitiendo el procesado de texto y detección de URLs. Evidentemente, estos conectores tienen un gran potencial de indexación pero al mismo tiempo es posible que llenen mucho espacio en disco con información irrelevante, por tanto, en el caso de IRATI existe la posibilidad de parametrizar la profundidad de búsqueda de la araña, es decir, el máximo número de URLs hacia abajo a las que este podrá navegar. De esta forma se evita perder el control de la araña y acotarla a unos intereses determinados. Fuente Wikipedia: http://en.wikipedia.org/wiki/Web_crawler#mediaviewer/File:WebCrawlerArchitecture.svg Figura 4 - 3 Estructura de funcionamiento de un crawler 4.4.1.2 Conectores de tipo RSS El RSS es un formato XML para compartir contenido en la web. Se utiliza para difundir información actualizada, frecuentemente a usuarios que se han suscrito a una determinada fuente de contenidos. El formato permite distribuir contenidos sin necesidad de un navegador, lo que permite utilizar otro tipo de software para leer los contenidos de una web. 24 A continuación se muestra un modelo de RSS que representa a las últimas noticias publicadas en “elcorreo.com”5. Dado que el RSS se trata de un tipo de formato de XML, es muy fácil acceder a la información gracias a las etiquetas que indican el lugar en el que esta se encuentra. IRATI se alimenta con diferentes fuentes de este tipo, las cuales, son visitadas periódicamente por los conectores RSS buscando modificaciones desde la última vez que estas fueron visitadas. En el caso de que el XML haya sido modificado, entran en la URL especificada y cargan el texto para su procesamiento. 4.4.1.3 Conectores basados en APIS API son las siglas de Application Programming Interface, es el conjunto de funciones y procedimientos (o métodos, en la programación orientada a objetos) que ofrece cierta biblioteca para ser utilizado por otro software como una capa de abstracción. En la actualidad cada vez más portales web incluyen su propia API para desarrolladores con el fin de que estos puedan crear aplicaciones que interactúen con ellos. En el caso de la Vigilancia Digital esto es una ventaja ya que se puede obtener información de sitios en los que de otra forma resultaría realmente complicado. 4.4.1.3.1 API de Twitter Twitter proporciona una API que permite leer y escribir tweets6 así como leer mensajes interactuando directamente con ella. Actualmente, existen librerías para múltiples lenguajes de programación y una documentación muy extensa que permite crear una aplicación de forma relativamente fácil. 5 6 5 de Abril de 2014. Mensaje enviado a través de Twitter. 25 El único requisito para poder acceder a esta API es poseer una cuenta de Twitter y darse de alta como desarrollador. Una vez realizado este paso se entregan dos tokens7 que servirán para autenticarse. Figura 4 - 4 Tokens de autenticación en Twitter Las opciones de la API son múltiples, obtener tweets en base a una búsqueda, obtener los tweets relacionados con un hashtag8, número de retweets, seguidores… Incluso si esta se encuentra disponible, la geolocalización desde la que el tweet fue realizado. Los resultados se devuelven en formato JSON9 para facilitar su posterior procesado, tal y como se muestra en la Figura 4-5. Figura 4 - 5 Resultados entregados por la API de Twitter 7 Cadena de caracteres que se entrega a un usuario autorizado de un servicio computarizado para facilitar el proceso de autenticación. 8 Cadena de caracteres formada por una o varias palabras concatenadas y precedidas por una almohadilla (#). 9 Subconjunto de la notación literal de objetos en JavaScript en formato ligero. 26 4.4.1.3.2 API de Facebook Al igual que la API de Twitter, la API de Facebook únicamente necesita registrarse como desarrollador para comenzar a disfrutar de su uso. Mediante este registro Facebook concede un token de autenticación que será el encargado de identificar al desarrollador que está haciendo uso de la API. Figura 4 - 6 Token de autenticación en Facebook Facebook permite una interactuación completa con la plataforma permitiendo postear, consultar los comentarios de una persona, likes10, etc. El formato en el que Facebook devuelve los datos es JSON. A modo de ejemplo se muestra el resultado de una búsqueda sobre los likes que ha realizado la página en Facebook de la UPV-EHU, el resultado obtenido se refleja en la Figura 4-7. Figura 4 - 7 Resultados entregados por la API de Facebook 10 Característica de ciertas redes sociales en la que el usuario puede expresar su gusto por cierto contenido. 27 Cabe destacar que los resultados obtenidos dependerán de los niveles de privacidad que cada usuario haya implementado en una cuenta. Así por ejemplo, si una persona tiene su perfil limitado únicamente a aquellas personas que sean sus amigos, la información visible será mínima comparándola con aquellas que la de aquellas que tengan el perfil abierto. 4.4.1.3.3 API de Bing No solo las redes sociales poseen API sino que existen otros portales, como por ejemplo Bing, que también proporciona esta opción. Este buscador ofrece hasta 5000 consultas gratuitas, tanto de búsquedas comunes como de imágenes. Figura 4 - 8 Compra de consultas en la API de Bing Los resultados obtenidos pueden encontrarse tanto en formato XML como formato JSON. Realizando la búsqueda de la palabra “UPV-EHU” mediante el uso de la API con la siguiente consulta: https://api.datamarket.azure.com/Bing/Search/Web?$format=json& Query=%27UPV-EHU%27 El resultado obtenido es el que se muestra en la Figura 4-9: Figura 4 - 9 Resultados entregados por la API de Bing Al igual que ocurre con otro tipo de APIS los resultados entregados se encuentran en formato JSON por lo que deberán ser parseados11 para clasificar su información. 11 Proceso por el cual se analiza una determinada cadena de caracteres. 28 Tal y como se puede ver las APIs proporciona un acceso rápido y sencillo una gran cantidad de información. El problema reside en la programación de cada conector para el uso de dicha API. IRATI posee múltiples conectores para llevar a cabo este cometido que no han sido mostrados en este documento, pero las APIs citadas en los puntos anteriores son algunas de las empleadas. 4.4.1.3 Conectores basados en Web Scraping El Web Scraping es una técnica utilizada mediante programas de software para extraer información de sitios web. Dado que la información en internet por lo general se encuentra desestructurada, en ocasiones es necesario el uso de esta técnica para obtener datos estructurados. Si se realiza, por ejemplo, una búsqueda en la web de “Amazon.es” sobre la palabra “EHU” el resultado obtenido es el siguiente12: Figura 4 - 10 Consulta realizada a la web de Amazon.es Podría darse el caso de que se generara la necesidad de guardar para cada libro su nombre, el precio, y su autor en una base de datos. Para ello sería necesario analizar el código HTML de la web y detectar el nombre para dichos campos y guardarlos estructuradamente en una base de datos. El Web Scraping pudiera ir en contra de los términos de uso de algunos sitios webs, por lo que antes de llevar a cabo este tipo de prácticas será necesario cerciorarse de que no se está incumpliendo ninguno de los términos legales del portal. 4.4.2 Webcleaning Hoy en día los portales web se encuentran repletos de anuncios, banners, menús y otro tipo de elementos que rodean a todo el contenido que se muestran en sus páginas. 12 Datos obtenidos en Abril de 2014. 29 Su cometido es el de dinamizar el portal web aportando un valor añadido a lo que se muestra en una dirección web concreta. Desde el punto de vista de la Vigilancia Digital esto se considera ruido, puesto que lo que se dice en estos elementos carece de valor y en la gran mayoría de ocasiones no tiene nada que ver con la temática del sitio web en el que se muestran. Para evitar esto, es importante disponer de una herramienta que ayude a eliminarlos y extraiga únicamente el contenido relevante de cada URL. En el caso de IRATI, se hace uso de un proxy HTTP llamado WebCleaner. Escrito en C, Webcleaner parsea todo el código HTML en busca de este tipo de añadidos y los elimina. En el caso de que el proxy no detecte estructuras HTML, simplemente lo deja pasar a través del proxy, esto es de mucha utilidad cuando se están trabajando por ejemplo con ficheros de tipo XML ya que si no habría que activar y desactivar el proxy continuamente. Al mismo tiempo, WebCleaner ejecuta todo el código Javascript en busca de código ofuscado, ventanas emergentes y funciones del tipo document.write() para ser eliminadas. Por otra parte, WebCleaner es 100% modificable y si, por ejemplo, se quiere eliminar un tipo de etiqueta HTML en concreto, esta es añadida al filtro para que sea eliminada. A continuación se muestra una imagen del cuadro de mando del proxy con algunas reglas creadas: Figura 4 - 11 Cuadro de mando de WebCleaner Para visualizar el funcionamiento de la herramienta se ha tomado una noticia que con varios banners a la derecha que contienen publicidad. 30 Figura 4 - 12 Ejemplo de dirección web con ruido Si se hace pasar esta URL a través del proxy se puede ver como los banners, formatos y menús desaparecen para dejar únicamente el contenido de la noticia. Cabe destacar que en este caso se ha configurado la herramienta para que la foto correspondiente a la noticia se mantenga, por si esta pudiera aportar un valor añadido. Figura 4 - 13 Resultado de pasar una URL a través de WebCleaner 31 4.4.3 Blacklisting Uno de los grandes problemas que existe en el procesado de información dentro de la Vigilancia Digital es la ambigüedad de algunas palabras. Pongamos por ejemplo que se está realizando un servicio de popularidad sobre la entidad financiera Caja Laboral. Existe la posibilidad de que se detecte un tweet similar al el de la Figura 4-14. Figura 4 - 14 Ejemplo de tweet considerado como falso positivo Tal y como se ve en la imagen, se trata de un tweet que tiene dos palabras de connotación negativa y el nombre Caja Laboral, por lo que se podría interpretar que se trata de un tweet con connotación negativa hacia la Caja Laboral. Esto no es cierto ya que el tweet se refiere al equipo de baloncesto y no a la entidad en sí por lo que se trataría de un falso positivo. Este tipo de situaciones se dan en múltiples ocasiones y es necesario tomar medidas de blacklisting para evitarlas. IRATI implementa dos tipos de blacklisting: selectivo y absoluto. 4.4.3.1 Blacklisting Selectivo Cuando IRATI aplica este tipo de blacklisting ignora las palabras que se le han indicado, es decir, carga todo el documento pero se comporta como si las palabras señaladas no existieran. Este tipo de blacklisting es útil cuando existen términos que aparecen en muchos documentos generando falsos positivos. Poniendo como ejemplo la entidad financiera BBVA que patrocina la competición de futbol “Liga BBVA” podrían generarse múltiples falsos positivos si se relacionara con la palabra “crack”. Por ello cada vez que las palabras “liga BBVA” aparezcan dentro de un documento, estas se tratarán como inexistentes. Un documento con la frase “Cristiano Ronaldo jugador de la liga BBVA es un crack” IRATI lo verá como “Cristiano Ronaldo jugador de la es un crack” 4.4.3.1 Blacklisting Absoluto En el caso del blacklisting absoluto, IRATI rechaza totalmente un documento en el caso que aparezca la palabra señalada. Volviendo al ejemplo anterior se podría aplicar 32 un blacklisting absoluto a los documentos que contengan la palabra “Baloncesto” si se está haciendo un trabajo para la Caja Laboral. 4.4.4 Índice Inverso La tarea de indexar tiene como resultado la creación de índices cuya finalidad es presentar los conceptos, las relaciones entre conceptos, las referencias u ocurrencias necesarias para describir los documentos y permitir su recuperación. IRATI utiliza un tipo de índice denominado como Índice Inverso. Este tipo de índice organiza los términos utilizados para indexar los documentos adjuntando a cada uno de ellos una lista de los documentos donde dicho término aparece. Al mismo tiempo, cada entrada es asociada a un identificador de documento y a un identificador de campos que señala en qué lugar del documento aparece el término. 4.4.4.1 Características 1. Se trata de un fichero compuesto por la siguiente estructura: palabra clave (término que describe el documento), identificador de documento (único para ese documento), identificador de campo (en qué campo del documento aparece la palabra clave. Se suele incluir además información del párrafo y frase donde se encuentra el término. 2. Es un tipo de fichero indexado. Por cada palabra o término que aparece en la colección, un fichero inverso lista cada documento donde aparece. La estructura de acceso a un fichero inverso es normalmente una palabra clave, id-documento, id-campo. 3. Es un índice que permite al programa recuperar los documentos por su contenido 4.4.4.1 Funcionamiento El índice inverso de IRATI indexa cada una de las palabras significativas que se encuentran en un documento creando un fichero nuevo, es decir, el fichero inverso que contiene todos los términos indicando la posición de los mismos. A continuación se muestra un ejemplo de cómo quedaría un índice inverso tras indexar cinco documentos. Palabra Arbusto Casa Coche El Gato Documento 1 3;5 1;2;4 1;3;4;5 2 Línea 32 12;20 43;18;32 18;12;54;31 54 33 Nº palabra 7 10;19 3;23;10 2;14;15;7 22 La ventaja de utilizar este tipo de índice es que en el momento de realizar una búsqueda entre los documentos indexados, no es necesario buscar en cada documento, sino que sencillamente se debe buscar en el fichero inverso cada una de las ocurrencias de los términos buscados Gracias al índice inverso y a los operadores booleanos u operadores lógicos la información es recuperable. La combinación de los términos mediante operadores lógicos crea una ecuación, la cual puede ser transformada con el objetivo de seleccionar y comparar, mediante la aplicación de la teoría de conjuntos, los resultados de la consulta al fichero inverso, y selecciona, de acuerdo a los operadores establecidos por el usuario, aquellos que responden a la lógica de la ecuación de búsqueda. Aplicando el ejemplo anterior, si se realiza la búsqueda en el índice de documentos que contenga la cadena “El coche”, el buscador actuará de la siguiente manera. El buscador obtiene los documento asociados a cada palabra en este caso {1;2;4} y {1;3;4;5} Realizando la intersección entre ambos grupos se obtiene los documentos que contienen ambas palabras: {1;2;4} ∩{1;3;4;5} = {1;4} Este tipo de operaciones facilita la búsqueda en los documentos y la recuperación de información. Las posibilidades que ofrece este método son muy amplias y quedan libres a las necesidades del desarrollador. IRATI utiliza también el índice inverso para resaltar palabras relevantes. En el ejemplo que se muestra a continuación, se puede ver como localiza la palabra “viajes” y la diferencia del resto gracias a los datos del índice inverso: Figura 4 - 15 Resaltado de palabras desde IRATI 34 5 Legislación aplicada a la Vigilancia Digital 5.1 Introducción La Vigilancia Digital, como todas las disciplinas del mundo de la seguridad, se encuentra sujeta a una legislación, especialmente cuando durante el desarrollo de esta se están tratando datos de carácter personal. No se debe olvidar que España es uno de los países más restrictivos en el mundo en cuanto a datos de carácter personal se refiere, y toda actividad que se desarrolle dentro del país tendrá que cumplir con la legislación vigente. La labor de todo profesional que se encuentre trabajando en cualquier sector, y en el contexto de este proyecto, en el sector de la informática, es cerciorarse de que la actividad que está llevando a cabo cumple con la legislación vigente. Independientemente de la labor que le encomiende la empresa, un profesional tendrá que saber desmarcarse de ella en caso de que esta no sea legal o presenta irregularidades. El resultado de este apartado, dentro de la documentación del proyecto “Vigilancia Digital”, es fruto del estudio y reflexión de la legislación española vigente, con el fin de: Garantizar que la labor que se ha estado desarrollando tanto en PCI Security Doctors como en S21sec se encuentra sujeta a la ley actual. 35 Establecer las exigencias y medidas necesarias de seguridad que tendrá que tomar PCI Security Doctors cuando realice la implantación de su propia plataforma de Vigilancia Digital. 5.2 Leyes que deben aplicarse La Vigilancia Digital se basa en los principios de recogida, filtrado, procesamiento y análisis de información. En base a estos principios, la legislación aplicable en el marco Europeo es la “Directiva 95/46/CE del parlamento europeo y del consejo de 24 de octubre de 1995 relativa a la protección de las personas físicas en lo que respecta al tratamiento de datos personales y a la libre circulación de estos datos” Aunque aplicable, una directiva es una disposición normativa de derecho comunitario que vincula al estado destinatario en la consecución de resultados u objetivos concretos en un plazo determinado dejando, sin embargo, a las autoridades internas competentes la debida elección de la forma y los medios adecuados a tal fin. Por tanto, en España será de aplicación La Ley Orgánica 15/1999 de 13 de diciembre de Protección de Datos de Carácter Personal, a partir de ahora LOPD. Al mismo tiempo el “Real Decreto 1720/2007, de 21 de diciembre, por el que se aprueba el Reglamento de desarrollo de la Ley Orgánica 15/1999, de 13 de diciembre, de protección de datos de carácter personal” establece las medidas de seguridad que deben tomarse en aquellos fichero que contengan datos de carácter personal por lo que su aplicación también será de obligado cumplimiento. 5.3 Los datos de carácter personal Según la LOPD se define dato de carácter personal como “cualquier información concerniente a personas físicas identificadas o identificables”. Por tanto en el ámbito de la Vigilancia Digital surgen las siguientes preguntas ¿Es la dirección de correo electrónico un dato de carácter personal? ¿Es la dirección IP un dato de carácter personal? ¿Es el nombre de cuenta de una red social un dato de carácter personal? 36 5.3.1 La dirección de correo electrónico La Agencia Española de Protección de Datos, a partir de ahora AEPD, emitió en 1999 un informe jurídico donde se pronunciaba respecto a si la dirección de correo electrónico encajaba o no dentro de la definición de dato personal que nos da el artículo 3 de la LOPD. En él dictaminó que, cuando la dirección de correo electrónico está constituida por un conjunto de signos que permitan la vinculación, directa o indirecta, con una persona física, tendrá la consideración de dato de carácter personal. Por el contrario, si no puede establecerse tal vinculación, la dirección de correo electrónico no será un dato de carácter personal. Así sucede en el caso de direcciones de correo departamentales o genéricas (Por ejemplo: [email protected]) que son buzones impersonales dirigidos a un departamento, servicio o empresa que puede ser gestionado por una o varias personas indistintamente. Conviene precisar que, aun cuando la dirección de correo aparezca como una simple combinación alfanumérica sin significado alguno, si se puede proceder a la identificación del titular mediante la consulta del servidor que gestiona el dominio referenciado a la misma, tendrá la consideración de dato de carácter personal. 5.3.2 La dirección IP El informe 327/2003 emitido por la AEPD afirmaba que “aunque no siempre sea posible para todos los agentes de Internet identificar a un usuario a partir de datos tratados en la Red, la AEPD parte de la idea de que la posibilidad de identificar a un usuario de Internet existe en muchos casos y, por lo tanto, las direcciones IP tanto fijas como dinámicas, con independencia del tipo de acceso, se consideran datos de carácter personal.” Esta decisión fue tomada basándose en que un proveedor de acceso a Internet que tiene un contrato con un abonado a Internet, mantiene un fichero histórico con la dirección IP (fija o dinámica) asignada, el número de identificación del suscriptor, a fecha la hora y la duración de la asignación de dirección. Por tanto, con la asistencia de terceras partes responsables de la asignación, se puede identificar a un usuario de Internet y en consecuencia cualquier IP siempre será considerada como dato de carácter personal. 5.3.3 Nombres de cuenta en redes sociales La LOPD es una ley aprobada en 1999, y aunque se han emitido ciertos informes, la AEPD todavía no se ha pronunciado al respecto. En las redes sociales podemos encontrar tres tipos de cuentas, cuentas personales, cuentas empresariales o de colectivos, y cuentas anónimas que suelen representar a un personaje ficticio también denominado como “cuenta fake”. 37 Aplicando la definición de la LOPD de dato de carácter personal se puede afirmar que el primer tipo de nombre de cuenta sí que será considerado un dato de carácter personal, sin embargo, los del tipo dos y tres no pueden ser considerados como tal puesto que no afectan a personas o no contienen datos que identifiquen ni hagan identificables a una persona. Figura 5 - 1 Cuenta de Anonymous en Twitter 5.4 Internet como fuente pública La LOPD deja claro que internet no es una fuente pública y no podrá ser tratada como tal a efectos de tratamiento de datos de carácter personal. Así lo manifiesta en el artículo 3, en el que se cita que únicamente se considerarán fuentes públicas: El censo promocional, regulado conforme a lo dispuesto en la Ley Orgánica 15/1999, de 13 de diciembre. Las guías de servicios de comunicaciones electrónicas, en los términos previstos por su normativa específica. Las listas de personas pertenecientes a grupos de profesionales Los diarios y boletines oficiales. Los medios de comunicación social. Por si quedara alguna duda de ello, en el informe 0342/2008 la AEPD manifestó que la LOPD contiene una enumeración taxativa de lo que podría considerarse como fuentes accesibles al público lo que impide considerar a los portales web como tal. 38 5.5 El fichero de datos de carácter personal 5.5.1 Determinar si existe fichero con datos de carácter personal El primer paso antes de iniciar un proyecto de Vigilancia Digital es determinar si se va a trabajar con datos de carácter personal o no. Este paso es fundamental, puesto que la decisión que se tome repercutirá en todas las acciones que se tomen a posteriori. Por lo general, durante un proyecto de estas características, deberemos interpretar que sí vamos a tratar con datos de carácter personal. Aunque este no sea el propósito del proyecto, es inevitable que información de este tipo sea recopilada a través de comentarios en blogs, tweets, etc. Por tanto deberemos ajustarnos a la LOPD aplicando las medidas correspondientes. 5.5.2 Dar de alta el fichero En el contexto que se desarrolla este análisis, se entiende que por lo general, la Vigilancia Digital se encuentra destinada a dar servicio a un cliente. Es importante destacar esto puesto que existen dos formas de dar de alta el fichero en base al responsable y el encargado del tratamiento de los datos del mismo. En ambos casos el encargado del tratamiento será la empresa que ofrece el servicio, mientras que el responsable del fichero podrá ser el cliente o la empresa que ofrezca el servicio. En cualquiera de los dos casos el responsable del fichero deberá notificar a la AEPD la existencia del fichero responsable del fichero indicando la finalidad del mismo, su ubicación, el tipo de datos de carácter personal que contiene, las medidas de seguridad, con indicación del nivel (esto se explicará en apartados posteriores) y las cesiones de datos de carácter personal que se prevean realizar y, en su caso, las transferencias de datos que se prevean a países terceros. Haciendo referencia a la Vigilancia Digital, es recomendable que el cliente sea el propietario del fichero y la empresa que ofrece del servicio únicamente ejerza el tratamiento del fichero puesto que esto otorgará ventajas a la hora de realizar el tratamiento de los datos. 5.6 Legitimización para tratar datos de terceros en el ámbito de la Vigilancia Digital La LOPD establece que “Cuando los datos de carácter personal no hayan sido recabados del interesado, éste deberá ser informado de forma expresa, precisa e inequívoca, por el responsable del fichero o su representante, dentro de los tres meses siguientes al momento del registro de los datos”. En este punto entra en juego la forma, 39 intencionalidad y fin con el que estos datos han sido recogidos puesto que influirán en si el afectado debe ser informado o no de que sus datos han sido recogidos. Aunque la AEPD no se ha pronunciado en lo que se refiere a la Vigilancia Digital, sí que lo hizo el 1 de Diciembre de 2007 mediante la “Declaración de buscadores en Internet”. Una plataforma de Vigilancia Digital, guardando las distancias, se asemeja en gran parte a lo que un buscador en internet pueda hacer y es por ello que algunos de los fundamentos son aplicables para legitimar el tratamiento de datos de terceros en actividades de Vigilancia Digital. En dicho documento se cita que los fines alegados por los prestadores de servicios de búsqueda en internet para el tratamiento de datos de carácter personal son los de: a) Permitir la prestación del servicio de búsqueda y mejorarlo a la vista de la experiencia de los usuarios. b) Garantizar la seguridad del servicio. c) Detección de actividades fraudulentas. d) Conservación de la información a disposición de las autoridades competentes. e) Procesos financieros y de auditoría. Extrapolando estos puntos a la Vigilancia Digital se podría decir que, siempre y cuando el objetivo del proyecto sea la de garantizar la seguridad del servicio, en este caso de la empresa, o el de detectar actividades fraudulentas, el tratamiento de datos de carácter personal estará justificado. Al mismo tiempo, la AEPD añadía un párrafo en el que se pronunciaba sobre los sitios en los que “la información de las personas se encuentra disponible en sitios web posibilitando que los motores de búsqueda la capten” alegando que “la legitimización para la difusión de información personal en internet, debe ser exigible, en primer lugar, a quienes la hacen accesible en internet” y que “en la medida que los buscadores en internet se limitan a indexar esta información, la legitimización en su tratamiento sería responsabilidad, en origen, de quienes permiten el acceso a la misma”. Cabe destacar que las fuerzas Fuerzas y Cuerpos de Seguridad del Estado podrán ejercer el tratamiento de datos de carácter personal con otros objetivos especialmente con el de investigar el terrorismo y formas graves de delincuencia. 5.7 Derecho al olvido y a la no conservación indefinida de los datos de carácter personal Aunque la AEPD legitime en algunos casos el tratamiento de datos de carácter personal, no permite que estos sean conversados indefinidamente. En la “Declaración de buscadores en Internet” deja claro que una vez que la información deje de ser necesaria para las finalidades propias del servicio, tendrá que ser cancelada. También en Mayo de 40 2014 el Tribunal de Justicia de la Unión Europea ha dictado una sentencia en la que obliga a dar la opción a los usuarios de ejerceré el derecho al olvido sobre la información en los buscadores de internet. Al mismo tiempo, a partir del momento en el que los fines que justifican el uso de los datos puedan conseguirse sin identificar a un usuario específico deberá procederse a hacerlos anónimos de forma que la información que se conserve no pueda vincularse a usuarios concretos. 5.8 Seguridad del fichero de datos Las referencias en la LOPD a la seguridad del fichero de datos son bastante limitadas y generales, es por ello que se creó el Reglamento RD-1720/2007 que regula lo referente a la seguridad del fichero que contenga datos de carácter personal. Para la aplicación de este reglamento, la primera premisa es determinar el nivel de seguridad que se deberá aplicar siendo categorizado como de nivel básico, medio o alto. Aunque el objetivo del fichero generado para elaborar tareas de Vigilancia Digital no es, por norma general, el de la elaboración de perfiles, sí que a partir de los datos almacenados en él, estos podrían ser generados, por tanto las medidas necesarias a aplicar en este tipo de casos serán las de nivel medio. El reglamento realiza una especificación detallada de lo que implica la categorización de un fichero como de nivel de seguridad medio. Algunos de los puntos más importantes son los siguientes: Será obligatorio la creación de un documento de seguridad en el que se especificarán el ámbito de aplicación del fichero, las medidas, normas y procedimientos de seguridad así como el responsable de seguridad del fichero. Es importante dejar claro en este documento quién será el encargado del tratamiento de los datos de carácter personal. El fichero deberá ser auditado tanto interna como externamente al menos cada dos años, o siempre que realicen cambios sustanciales en los sistemas de información. Será necesario implantar medidas para la identificación y autenticación usuarios a la hora de acceder al fichero. Dado que este fichero posee un nivel de seguridad medio, el número de intentos reiterados de acceso no autorizado deberá estar limitado. Deberán generarse mecanismos para que cada usuario pueda acceder únicamente a aquellos datos y recursos que sean imprescindibles para el desarrollo de sus funciones. Del mismo modo, deberá existir un control de acceso físico a los locales donde se encuentren ubicados los sistemas de información. 41 Al menos semanalmente, deberá crearse una copia de seguridad en base a un procedimiento de copias de respaldo y recuperación de datos. Toda incidencia que ocurra con relación al fichero de datos deberá quedar registrada. Cuando se realicen procedimientos de recuperación de datos, estos deberán ser autorizados por el responsable del fichero. Siempre que se acceda al fichero a través de las redes de telecomunicaciones, se deberá garantizar un nivel de seguridad equivalente a los accesos en modo local. 5.9 Cumplimiento de los derechos A.R.C.O Los derechos de acceso, rectificación, cancelación y oposición, conocidos como los derechos A.R.C.O, son el conjunto de derechos a través de los que la LOPD garantiza a las personas el poder de control sobre sus datos personales. Como en toda actividad en la que se trate con datos de carácter personal, deberá crearse un procedimiento que permita ejercer a las personas los derechos A.R.C.O. En dicho procedimiento deberán incluirse el formato de los formularios para ejercer el derecho correspondiente así como los plazos que en los que el responsable del fichero de datos de carácter personal llevará a cabo las acciones oportunas para su cumplimiento. 5.10 Buenas prácticas en Vigilancia Digital Tal y como se ha podido ver, la legislación española es muy restrictiva en lo que a datos de carácter personal se refiere. A continuación se mostrarán dos casos de ejemplos de Vigilancia Digital. Un primero que sería el ejemplo de una Vigilancia Digital que respeta la legislación vigente, y otro en el que se vulnera por completo los restricciones del uso de datos de carácter personal establecidas por la LOPD. 5.10.1 Recogida de datos de carácter personal aleatorios y sin intencionalidad La mayor parte de las veces que se esté realizando un trabajo de Vigilancia Digital será inevitable recopilar datos de carácter personal sin ningún tipo de relevancia para el objeto de la vigilancia. Esto podría equipararse a la grabación de los alrededores de un edificio con el fin de garantizar su seguridad, en el que los transeúntes que pasen por allí serán filmados. La LOPD establece en su Artículo 5 que “Los interesados a los que se soliciten datos personales deberán ser previamente informados de modo expreso, preciso e inequívoco” a lo que añade “no será de aplicación lo dispuesto en el apartado anterior 42 cuando la información al interesado resulte imposible o exija desproporcionados, a criterio de la Agencia de Protección de Datos” esfuerzos Para este caso se supondrá que se está realizando una labor de Vigilancia Digital en la que el objetivo es detectar posibles casos de phishing13 a través de la información que se muestra en la red. A través de una serie de búsquedas, se obtiene un documento en el que se menciona un caso de phishing y se muestran una serie de datos de carácter personal. En concreto, el nombre y apellidos de la persona que escribe el artículo, su fotografía y al mismo tiempo se incluye una descripción sobre su carrera profesional. Figura 5 - 2 Documento detectado relacionado con phishing que contiene datos de carácter personal Figura 5 - 3 Datos de carácter personal recogidos en documento de phishing Dado que el documento se encuentra relacionado con la temática vigilada, este quedará indexado, quedándolo también los datos de carácter personal que aparezcan en ese código HTML. Estos datos, que son parte del artículo, es inevitable que queden recogidos dentro de la base de datos de documentos. Según la LOPD esto estará permitido ya que se debe tener en cuenta por los siguientes motivos: El objetivo de esta Vigilancia Digital es la de detectar actividades fraudulentas. La búsqueda de documentos de este tipo se realizará de forma masificada siendo desconocido el momento en el que un dato de carácter personal quede indexado en la base de datos. En ningún momento se generará un perfil sobre esta persona ya que el objetivo de la Vigilancia Digital es detectar casos de phishing. La legitimación para el tratamiento de datos de carácter personal de esta persona viene dada cuando ella misma los hace accesibles a través de internet. 13 Delito informático por el cual, mediante la suplantación de identidad de una empresa, se intenta adquirir información confidencial. 43 Aunque se tratara de localizar a la persona cuyos datos han sido recogidos, esto implicaría el manejo de más datos de carácter personal puesto que se debería buscar una dirección de contacto o teléfono. La comunicación debería ser manual y nunca automatizada puesto que se caería en la paradoja de la necesidad de crear un nuevo fichero de datos de carácter personal, esta vez sí, creado con la intencionalidad de crear perfiles sin el consentimiento del afectado. Por tanto, en base a lo explicado, se podría concluir diciendo que este tipo de Vigilancia Digital sí que podría realizarse, siempre y cuando se tenga en cuenta que el su objetivo no sea la recopilación de información sobre personas y bajo ningún concepto de aquellos datos especialmente protegidos como son la “ideología, afiliación sindical, religión y creencias”. 5.10.2 Recogida de datos de carácter personal concretos y con intencionalidad Tomando como ejemplo el apartado anterior, se podría pensar en realizar una labor de Vigilancia Digital para monitorizar a la persona que escribió dicho artículo y generar un perfil sobre ella con su formación, gustos, aficiones, ideología, etc. Con la ayuda de las fuentes abiertas en internet sería viable obtener una gran cantidad de datos que dieran lugar a la generación de un perfil sobre la persona y más con la ayuda de una plataforma dedicada a la Vigilancia Digital. Realizando simples consultas a los principales buscadores de internet, puede determinarse que esta persona “es Ingeniero en Informática y está especializado en infraestructuras de sistemas empresariales. Es socio fundador de Tecsisa”. Al mismo tiempo también se puede observar que tiene un perfil en Linkedin, Twitter, Google+ y Facebook. Accediendo a dichos perfiles se podría obtener más información como por ejemplo las empresas en las que ha trabajado: Figura 5 - 4 Formación de la persona a monitorizar 44 También podrían obtenerse sus imágenes abiertas en facebook de las que se deduce que es un apasionado de los caballos. Figura 5 - 5 Perfil de Facebook del sujeto monitorizado O monitorizar su lista de amigos y publicaciones en twitter: Figura 5 - 6 Lista de tweets publicados por el sujeto monitorizado Mediante una herramienta de Vigilancia Digital monitorizar a una persona, o a un grupo de ellas, es una tarea sencilla si se aplican las parametrizaciones adecuadas. Al contrario que ocurría en el ejemplo en el que los datos de carácter personal eran recopilados e introducidos en la base de datos sin un fin específico, en este caso la intencionalidad es clara y el objetivo que se busca con esta Vigilancia Digital es 45 contrario a las legitimizaciones que concede la AEPD. Al mismo tiempo el párrafo del Artículo 5 de la LOPD en el que se dice “no será de aplicación lo dispuesto en el apartado anterior cuando la información al interesado resulte imposible o exija esfuerzos desproporcionados, a criterio de la Agencia de Protección de Datos” dejaría de tener sentido puesto que en este caso el objetivo de la Vigilancia Digital es muy concreto y localizable. Por tanto en este caso podemos concluir que según la legislación vigente, la Vigilancia Digital no estará permitida para estos casos por los siguientes puntos: Se trata de una Vigilancia Digital focalizada en personas determinadas en la que no existe otro objetivo que la creación de perfiles. La localización de las personas cuyos datos de carácter personal han sido recogidos es relativamente sencilla por lo que su consentimiento será requisito indispensable para que estos puedan ser almacenados. El objetivo de la Vigilancia Digital en este caso dista mucho de los objetivos que son considerados como legítimos para desarrollar actividades de este tipo. 46 6 Estudio de implantación de IRATI IRATI es una plataforma dinámica que puede adoptar diferentes arquitecturas en función de los requisitos necesarios. También deben de tenerse en cuenta para el diseño de la arquitectura las medidas de seguridad que deberá implementar la plataforma Para la consecución de este proyecto se ha realizado un estudio con el fin de determinar el hardware y la arquitectura de red más adecuada para realizar la instalación de la plataforma. 6.1 Adquisición de servidores En la actualidad existen infinidad de proveedores que suministran hardware tanto a empresas como a particulares. Aunque PCI Security Doctors posee su propio proveedor de hardware, se ha creído oportuno realizar un estudio previo para determinar los requisitos que deberá tener la plataforma y al mismo tiempo estimar un coste de las adquisiciones necesarias antes de solicitar un presupuesto final al proveedor. 47 6.1.1 Características PCI Security Doctors tiene como objetivo ofrecer el Servicio de Vigilancia Digital a un grupo reducido de ocho clientes. IRATI no tiene unos requisitos específicos de funcionamiento, estos varían en función de las necesidades del usuario y el volumen de datos con el que se vaya a trabajar. Para este proyecto se han tenido en cuenta los siguientes factores: El número de clientes a los que se prestará el servicio. El volumen de información en la que se encuentran presentes los clientes en la Web 2.0. Los objetivos a alcanzar por parte de cada cliente. El número de activos de cada cliente. El número de categorías de cada cliente. Tomando como referencia la experiencia de S21sec y la orientación recibida por parte del departamento de Vigilancia Digital, se ha determinado que el hardware más adecuado para iniciar con la plataforma IRATI en PCI Security Doctors es la siguiente: Servidor Frontal Core Requitisos Ténicos Funciones 1 x Quad Core 2.60 GHz 6GB RAM 2 x HDD 300GB Contener la base de datos y realizar el procesamiento de información 1 x Quad Core 2.60Ghz 16 GB RAM 2 x HDD 300 GB Muestra la información de la base de datos y sirve como punto de acceso a la para los clientes. Tabla 6 - 1 Requisitos hardware Estos datos son aproximados y quedarán sujetos a los costes asociados de que los equipos que se fueran a adquirir cumplieran con los requisitos económicos y la disponibilidad del proveedor. 6.1.2 Costes asociados a la adquisición de servidores Para garantizar que los requisitos son viables y que se ajustaban a lo presupuestado, se ha realizado un estudio sobre el precio que alcanzan estas máquinas en el mercado 14. Para ello se han tomado como referencia dos de los principales portales online en la venta de servidores. S21sec utiliza servidores HP, es por ello, que aprovechando su buena experiencia con ellos, la búsqueda se ha centrado en la gama DL de HP, sin dejar de lado otros fabricantes. 14 Precios obtenidos entre los meses de enero y febrero de 2014. 48 A continuación se muestran algunos de los resultados obtenidos en el portal http://www.senetic.es: 642119-421 HP ProLiant DL380p Gen8 E5-2630 2.3GHz 6-core Figura 6 - 1 Servidor HP Proliant DL380p 646901-421 HP ProLiant DL360p Gen8 E5-2630 2.3GHz 6-core Figura 6 - 2 Servidor Hp ProLiant DL360p HP DL180 G6 E5520 3x2GB 8LFF Svr Figura 6 - 3 Servidor DL180 G6 7158E2G x3630 M4, Xeon 6C E5-2420 95W 1.9GHz/1333MHz/15MB Figura 6 - 4 Servidor 7158E2G 49 Y estos son los obtenidos en http://www.amazon.com : HP ProLiant DL380p G8 670854-S01 2U Rack Server - 2 x Xeon Figura 6 - 5 Servidor HP ProLiant DL380p HP ProLiant DL360p G8 670634-S01 1U Rack Server 2 x Xeon E5-2640 2.5GHz 16GB Figura 6 - 6 Servidor HP ProLiant DL360p IBM System x3630 M4 7158 - Xeon E5-2440 2.4 GHz (7158ECU) – Figura 6 - 7 Servidor IBM System x3630 50 Una vez realizadas las búsquedas, las estimaciones de precios fueron las siguientes: Producto Servidor1 Frontal Servidor2 Core RAM, HHDD, cableado… TOTAL Precio 3500€ 2500€ 1000€ 7000€ Tabla 6 - 2 Presupuesto hardware Dado que la mayoría los servidores del mercado no incluyen discos duros y su memoria RAM es ampliable, ha sido necesario incluir un apartado extra para cubrir estos costes añadidos. Tal y como se ve en la Tabla 6-2, los costes totales se encuentran dentro del presupuesto, a falta de realizar la consulta al proveedor de la empresa el 10 de febrero de 2014 en que se determinará el presupuesto final. 6.2 Integridad de los datos IRATI recopila datos ininterrumpidamente que deben estar disponibles 24 horas al día 365 días a la semana. Al mismo tiempo mucha de esta información es crítica por lo que debe existir un procedimiento para que en caso de fallo la información pueda ser recuperada. Por tanto, para garantizar la satisfacción de estos requisitos, es indispensable establecer un sistema en el que en caso de pérdida de información, esta pueda ser recuperada y que al mismo tiempo garantice una alta disponibilidad. Existen múltiples soluciones para implantar este sistema de conservación de la integridad de la información tanto hardware como software. En este proyecto en concreto, han sido consideradas únicamente las soluciones hardware. 6.2.1 RAID 1 (Mirroring) Un RAID 1 crea una copia exacta (o espejo) de un conjunto de datos en dos o más discos. Esto resulta útil cuando el rendimiento en lectura es más importante que la capacidad. Un RAID 1 clásico consiste en dos discos en espejo, lo que incrementa exponencialmente la fiabilidad respecto a un solo disco, puesto que para que el conjunto falle es necesario que lo hagan todos sus discos. 51 Figura 6 - 8 Estructura de RAID 1 Ventajas: Es posible dividir “el espejo”, marcar un disco como inactivo, hacer una copia de seguridad de dicho disco y luego reconstruir el espejo. Se dispone de un mayor rendimiento de lectura multiusuario, puesto que pueden leerse ambos discos al mismo tiempo. Desventajas: El costo de la unidad de almacenamiento por byte usable se multiplica por dos, puesto que se necesitan dos unidades para almacenar los mismos datos. 6.2.3 RAID 5 Un RAID 5 es una división de datos a nivel de bloques distribuyendo la información de paridad entre todos los discos miembros del conjunto. El RAID 5 ha logrado popularidad gracias a su bajo coste de redundancia. Generalmente, el RAID 5 se implementa con soporte hardware para el cálculo de la paridad. Cada vez que un bloque de datos se escribe en un RAID 5, se genera un bloque de paridad dentro de la misma división. Un bloque se compone a menudo de muchos sectores consecutivos de disco. Si otro bloque, o alguna porción de un bloque, es escrita en esa misma división, el bloque de paridad (o una parte del mismo) es recalculada y vuelta a escribir. Las escrituras en un RAID 5 son costosas en términos de operaciones de disco y tráfico entre los discos y la controladora. 52 Figura 6 - 9 Estructura de RAID 5 Ventajas: Posibilidad de realizar operaciones de lectura y escritura de forma solapada haciendo un uso más eficiente de las unidades de disco Facilita una cantidad de almacenamiento usable superior al de la RAID 1, dado que la redundancia acarrea una reducción del almacenamiento de, aproximadamente, el 20%, en vez del 50%. Desventajas: La necesidad de un mínimo de tres discos por grupo RAID. Un nivel de rendimiento del sistema de almacenamiento significativamente inferior mientras se lleva a cabo la reconstrucción de una unidad. Posibilidad de perder totalmente los datos de un grupo RAID si falla una segunda unidad mientras se está realizando la reconstrucción de la primera. Una vez analizados tanto el RAID 1 como el RAID 5 se ha optado por utilizar una estructura de los discos duros en forma de RAID 1. El factor de decisión para elegir esta opción ha sido que aunque el RAID 5 obtiene mayor rendimiento, puede darse el caso de que se pierdan todos los datos si falla una segunda unidad mientras se está reconstruyendo la primera. Otro factor importante ha sido la necesidad de contar con al menos tres discos duros para implementar un RAID 5, mientras que el RAID 1 únicamente necesita dos. 6.3 Estado actual de la arquitectura de red Uno de los pasos esenciales para realizar el estudio de implantación ha sido determinar el estado actual de red de la empresa PCI Security Doctors. Para ello, se ha elaborado un mapa en el que se identifican los principales dispositivos y subredes que componen la red interna de la compañía. 53 Figura 6 - 10 Arquitectura de red de PCI Security Doctors Tal y como se puede ver en la imagen, actualmente la arquitectura de red de PCI se encuentra compuesta por los siguientes elementos: Cuatro redes ADSL que comunican la red interna de la empresa con el exterior. Dos Servidores de datos para los ordenadores de la oficina (Backups, archivos comunes…) Receptoras de video y alarmas. Estos dispositivos se encuentran alojados en la sala de vigilancia 24x7. Un Firewall Juniper que separa la red interna de la externa. La instalación de IRATI tendrá un impacto en esta red ya que deberán agregarse dos servidores nuevos con una configuración específica. El grado de impacto no será alto pero sí que deberán realizarse ciertas modificaciones para garantizar la seguridad de la red. Tal y como se ha mencionado en apartados anteriores, IRATI se encuentra compuesto por dos servidores. Si uno de los servidores no necesitara tener acceso desde el exterior, la implantación sería sencilla puesto simplemente se deberían incluir los dos servidores en la sala en la que se encuentra el resto. 54 Figura 6 - 11 Arquitectura de red en situación ideal Dado que este no es el caso puesto que los clientes accederán a la información en dicho servidor desde el exterior, se deberán tomar medidas adicionales ya que un atacante podría comprometer el servidor accesible y pivotar a través de él para intentar comprometer el resto de equipos de la red y hacerse dueño de la red interna por completo. Expresándolo de un modo gráfico, en las figura 6-12 y 6-13 se muestra un esquema básico de un ataque que podría sufrir la empresa. En ellas un atacante aprovecha una vulnerabilidad en el servidor y lo compromete. Figura 6 - 12 Servidor comprometido 55 Posteriormente utiliza el servidor hackeado para comprometer otras máquinas dentro de la propia red de la empresa o simplemente esnifar15 el tráfico de la red interna. Figura 6 - 13 Pivoting en la red interna de la empresa 6.4 Seguridad de la plataforma 6.4.1 Seguridad a nivel de red En base a la problemáticas existente, se ha creído que la mejor solución para paliarla sería la creación de una DMZ dentro de la red empresarial. Una DMZ, siglas de “Desmilitarized Zone” en inglés “Zona Desmilitarizada” en castellano, es una red local que se ubica entre la red interna de una organización y una red externa, en este caso Internet. El objetivo de una DMZ es que las conexiones desde la red interna y la externa a la DMZ estén permitidas, mientras las conexiones desde la DMZ solo se permitan a la red. Esto permite que los equipos de la DMZ puedan dar servicios a la red externa a la vez que protegen la red interna en el caso de que intrusos comprometan la seguridad de los equipos (host) situados en la zona desmilitarizada. En base a este planteamiento la red interna de PCI Security Doctors quedaría de la siguiente forma: 15 Capturar el tráfico de una determinada red. 56 Figura 6 - 14 Nueva arquitectura de red tras revisión Gracias a esta arquitectura se permite que únicamente ciertos servicios accedan a la red interna de la empresa. Al mismo tiempo en caso de que se consiguiera un acceso a la máquina expuesta, el acceso a la red interna no sería posible. 6.4.2 Seguridad física A parte de las medidas de seguridad a nivel de red, también será necesario implementar una serie de medidas de seguridad física con el objetivo de proteger la información que se encuentra en estos servidores y al mismo tiempo cumplir con el apartado de seguridad del fichero de datos de carácter personal establecido en el Real Decreto 1720/2007. PCI Security Doctors es una empresa que se dedica al mundo de la seguridad física y como tal, posee medidas de seguridad para proteger sus equipos. Esto ayuda a la implantación de la plataforma puesto que no sería necesario un gasto adicional para proteger físicamente los equipos. El servidor “Core” que contiene las bases de datos y realiza el procesamiento de la información se situaría en el cuarto que la empresa tiene destinado para el almacenamiento del rack y otros servidores (ver Figura 6-15). 57 Figura 6 - 15 Cuatro de rack Este cuarto posee un control de accesos y se encuentra vigilado por cámaras de vigilancia por lo que se podría controlar en todo momento quien tiene acceso físico al dispositivo. El control de acceso se basa en un lector RFID que otorga el acceso a la sala a aquellas personas que tienen los privilegios necesarios para ello. Figura 6 - 16 Control de acceso a cuarto de rack Por otra parte el servidor “Frontal” se situaría en la sala de monitorización de la empresa. Esto proporcionaría un acceso más rápido a los datos por parte de los operadores y reduciría el tiempo de respuesta en caso de caída del servicio. Esta sala se encuentra blindada lo que garantizaría la privacidad de los clientes tal y como se ve en las Figura 6-17 y 6-18. 58 Figura 6 - 17 Sala blindada para la gestión de incidentes Figura 6 - 18 Centro de gestión de incidentes 59 6.5 Revisión del estudio de implantación de IRATI Tras presentar este documento, PCI Security Doctors ha creído que el desembolso a realizar es demasiado alto por lo es necesario realizar una revisión para abaratar los costes asociados a la adquisición de hardware. Tal y como estaba pensada inicialmente el diseño de arquitectura de la plataforma, esta se encuentra compuesta por dos servidores uno que ejerce como “Core” encargado de procesar la información y otro como “Frontal” encargado de mostrarla. La primera acción ha sido contactar con el equipo de S21sec y preguntar si cabría la posibilidad de realizar la instalación en un único servidor en lugar de dos. S21sec nunca ha realizado la instalación de esta forma, por lo que se realizan una serie de pruebas en máquinas pertenecientes a la compañía. El resultado no es del todo satisfactorio puesto que el rendimiento disminuye considerablemente repercutiendo en la velocidad a la que la información es procesada. Realizando un nuevo ensayo con el volumen de clientes para el que está previsto que PCI Security Doctors realice la implantación de IRATI, se observa que el rendimiento sigue decayendo pero que se encuentra dentro de los márgenes de calidad mínimos para el correcto funcionamiento de la plataforma. Por ello el nuevo esquema de red quedaría de la siguiente forma: Figura 6 - 19 Arquitectura de red tras revisión de costes En esta nueva distribución se mantiene el esquema de red añadiendo una DMZ, pero en lugar de contar con dos servidores comunicados entre sí, la instalación se realiza sobre un único servidor. Al haber suprimido un servidor el nuevo presupuesto se vería claramente disminuido 60 Producto Servidor Frontal / Core RAM, HHDD, cableado… TOTAL Precio 3500€ 500€ 4000€ Tabla 6 - 3 Presupuesto hardware revisado Tal y como puede apreciarse se produce una reducción aproximada de 3000€ sobre el coste inicial. 61 7 Implantación de IRATI Aunque durante la estancia en PCI Security Doctors no se ha podido completar el proyecto de implantación de la plataforma, sí que he tenido la oportunidad de hacerlo en S21sec, participando en la instalación de la plataforma en diferentes arquitecturas, entre las que se incluye la virtualización de la misma, y participar en varios proyectos para clientes de la compañía. En este apartado se explicarán los diferentes pasos que se han seguido para realizar uno de los proyecto citados anteriormente. Por motivos de confidencialidad todos los datos que se mostrarán a continuación estarán anonimizados o serán ficticios, sin olvidar que todos los procesos que se describirán serán reales. 7.1 Objeto del proyecto El objeto de este proyecto consiste en realizar la instalación, configuración y mantenimiento de una plataforma de Vigilancia Digital IRATI para un cliente determinado con el fin de protegerle de potenciales ciberataques, así como a la prevención de fugas de información sobre datos sensibles de la compañía. Al mismo tiempo, el cliente recibiría un informe semanal generado por el equipo de analistas de S21sec en el que se le realizaría un resumen de la actividad de su empresa en la red así como el nivel de riesgo sobre posibles ataques. 62 7.2 Servicios ofertados en el proyecto Tras realizar los contactos pertinentes con el cliente, se concretó un servicio de Vigilancia Digital basado en dos modelos de servicio. El primer servicio se trataría del acceso 24x7 a la plataforma de Vigilancia Digital IRATI en el que el cliente podría realizar consultas sobre los documentos indexados así como visualizar los cuadros de mando para interpretar la información obtenida. Para ello se realizaría una instalación completa de la plataforma dedicada al cliente en exclusividad. Por otra parte, el segundo servicio constará del envío de alertas en caso de riesgos críticos a una determinada cuenta de correo y la generación de un informe semanal más detallado, realizado por parte de los analistas de S21sec, que le proporcionará una visión concreta de la situación de la compañía en internet frente a los riesgos mencionados anteriormente. 7.3 Instalación de la plataforma IRATI El primer paso para llevar a cabo el proyecto ha sido realizar la instalación de la plataforma IRATI. Ésta se ha realizado en una de las máquinas del SOC (Security Operations Center) que S21sec posee en Madrid. Toda la instalación se realizó en remoto por lo que no fue necesario desplazarse a ciudad. Figura 7 - 1 Security Operations Center en Madrid 63 El proceso de instalación de la plataforma queda descrito en el anexo A “Manual de Instalación y Configuración de IRATI” que se ha generado durante el desarrollo de este proyecto16. 7.4 Definición de activos El primer paso cuando se realiza un proyecto de Vigilancia Digital es determinar los activos, es decir, las entidades, personas, marcas, etc. que se desean proteger. En este proyecto la lista de activos proporcionados por el cliente se ha categorizado de la siguiente manera: Nombres oficiales de la compañía y servicios. Altos cargos de la compañía. IPs y nombres de dominio pertenecientes a la compañía. Direcciones de email pertenecientes a la empresa. La lista de activos entregada por el cliente ha sido pasada por un proceso de análisis y revisión, intentando garantizar al máximo que todos los activos sean cubiertos. Para ello se han realizado las siguientes operaciones: Búsqueda de terminología en el ámbito coloquial relacionada con la empresa. Por ejemplo, la empresa Telefónica es llamada “Timofonica” o la empresa Iberdrola es llamada “Ibertrola” en ciertos contextos. Escritura de los nombres oficiales de la compañía y altos cargos en todas sus modalidades incluyendo faltas de ortografía. Por ejemplo Banc Sabadell puede ser escrito como Banco Sabadell, BancSabadell, BancoSabadell entre otros. Una vez finalizados los activos fueron incluidos en su apartado correspondiente. Figura 7 - 2 Panel de activos de IRATI 16 El Anexo A ha sido generado durante el desarrollo del proyecto pero suprimido de esta documentación por motivos de propiedad intelectual de S21sec. 64 7.5 Definición de categorías Al contrario que ocurre con los activos, en Vigilancia Digital, las categorías determinan aquello de lo que queremos proteger a los activos. Dado que en este proyecto los objetivos son la detección temprana de ciberataques y prevención de fuga de información, la terminología definida para la elaboración de las categorías ha sido desarrollada empleado los siguientes criterios: Lista de principales grupos de cibercriminales. Terminología relacionada con el mundo del hacking y el fraude online. Terminología relacionada con la fuga de información. Del mismo modo que ocurre con la lista de activos, esta información ha sido pasada por un proceso de análisis y revisión incluyendo todas las posibles formas de escritura de cada palabra como por ejemplo, “phishing”, “phising” y “fising”. Al mismo tiempo, también se ha incluido la traducción de gran parte de la terminología al inglés para ampliar el rango de búsqueda. Dado que el alcance del proyecto únicamente contempla la monitorización de palabras en castellano y en inglés, no ha sido necesaria la conjugación de verbos puesto que el propio motor de Sinequa es capaz de reconocer tanto verbos como sus conjugaciones. Por tanto si se ha pasado como parámetro a la plataforma la palabra “ataque” esta será capaz de reconocer “atacando”, “atacado” o “atacaron” entre otros. 7.6 Selección de fuentes Tal y como se explica en el apartado de conectores de esta documentación, IRATI posee varios conectores que le permiten obtener documentos de las fuentes de información. Para este proyecto se han seleccionado todos los conectores disponibles y se categorizado las fuentes en dos grupos; fuentes comunes y fuentes críticas. Las fuentes comunes son aquellas en las que la aparición de un activo no implica que exista un riesgo claro para el mismo, por ejemplo un periódico. Sin embargo, la aparición del nombre de un activo en una fuente crítica, implica un alto riesgo de que este sufra un ataque como por ejemplo una cuenta de twitter de un grupo de hackers. 7.7 Selección de términos de búsqueda Algunos de los conectores de IRATI necesitan un criterio de búsqueda para comenzar a capturar información. En este caso es importante incluir el nombre de todos los activos así como aquellas categorías más críticas. En el caso de Twitter también se 65 ha creído conveniente incluir ciertos hashtags que podrían implicar un riesgo de ataque hacia los activos. La plataforma soporta operadores booleanos, lo que facilita altamente la creación de términos de búsqueda así como optimizar el número de consultas lanzadas contra las aplicaciones. (Activo1) AND (Categoría1 OR Categoría2) Figura 7 - 3 Definición de fuentes en IRATI 7.8 Selección del criterio de indexación Se define criterio de indexación como la regla que un determinado documento debe cumplir para que este sea incluido en la lista de documentos indexados. A continuación se explicarán los dos criterios incluidos en este proyecto para la indexación de los documentos: localización y fuente crítica. 7.8.1 Criterio de localización El motor de IRATI es capaz de reconocer tanto párrafos como frases dentro de un documento y es en esto en lo que se basa el siguiente criterio. Bajo la utilización de éste, la plataforma indexará siempre un documento que contenga un activo y una categoría en la misma frase, o siempre que estos se encuentren con relativa proximidad dentro de un párrafo. 7.8.2 Criterio de fuente crítica Independientemente de que un activo se encuentre o no relacionado con una categoría, este siempre será indexado si es mencionado en una fuente crítica. De esta forma se garantiza una alta mitigación de los futuros ataques publicados en internet. La 66 palabra “Kutxabank” puede que no tenga ninguna relevancia en una fuente común mientras que en una fuente crítica puede ser clave para la alerta temprana. 7.9 Definición de entidades La definición de entidades es la base para que se cumplan los criterios de indexación. Cada grupo de activos o categorías recibe una entidad que será relacionada con el resto de entidades para su indexación. A continuación se explicará su funcionamiento: En primer lugar se definen las entidades básicas en base a los activos y categorías: ACTIVOS Entity1 Nombres _Compañia Entity2 Nombres_Persona Entity3 Dominios CATEGORÍAS Entity4 Terminos_hacktivismo Entity5 Terminos_hacking Entity6 Data_Leak_Prevention Tabla 7 - 1 Tabla de activos Tabla 7 - 2 Tabla de categorías Una vez definidas las entidades básicas se definen las entidades compuestas. Para este caso se hicieron todas las posibles combinaciones mostrándose las siguientes a modo de ejemplo: Entity7 Entity8 Entity9 ENTIDADES COMPUESTAS Nombres_Compañia_REL_Terminos_hacktivismo Nombres_Persona_REL_Data_Leak_Prevention Dominios_REL_Terminos_Hacking Tabla 7 - 3 Tabla de entidades compuestas Una vez creadas todas las entidades se indica si se quiere que sean indexadas o no y en base a qué criterio. Por lo general las entidades de activos entrarán en el criterio críticos mientras que las compuestas en el de localización. 7.10 Definición de “Jobs” Los jobs son la periodicidad con la que se lanzará cada conector para recibir información. Por lo general los diferentes portales ofrecen APIs con un número limitado de consultas por lo que no es conveniente su saturación ya que el Token de autenticación será dado de baja. Calcular la frecuencia con la que se lanza cada job es sencillo. En primer lugar se debe comprobar el número de consultas que admite una API, estas suelen ser a nivel de mes. Tomando como ejemplo la API de Bing que admite 10000 consultas mensuales, este número es dividido entre el número de días de un mes natural, es decir, 30 días. 10000 consultas / 30 días = 333 consultas diarias. 67 Suponiendo que se tienen 30 consultas por cada token, esto implicará que cada job de Bing podrá ser lanzado una vez cada 2 horas. Ciertas APIs no poseen límite de consultas, pero sí que bloquean los accesos cuando entienden que estos son abusivos. Al mismo tiempo otras ofertan la opción de pagar por aumentar el número de consultas. En vista de la magnitud de este proyecto, se ha creído oportuno realizar un desembolso en la compra de consultas para aumentar la eficacia de los resultados. 7.11 Creación de boxes Con el fin de que las búsquedas de documentos sean más sencillas, IRATI permite la creación de boxes. Un box es un elemento propio de IRATI que ayuda a realizar búsquedas predefinidas por un determinado parámetro, fuente, idioma, etc. Estas cajas han sido creadas siguiendo el objetivo del proyecto resaltando la terminología más importante y las fuentes de las que esta procedía. A continuación se muestra una pantalla de configuración para crear un box que muestre la terminología crítica referente a ciberseguridad que más se encuentra presente en los documentos. Figura 7 - 4 Ejemplo de BOX en IRATI Tras parametrizar el box, el resultado es el siguiente: 68 Figura 7 - 5 Resultados obtenidos tras parametrización del BOX Los boxes pueden ser de diverso tipo y proporcionar información como por ejemplo fechas, hashtags o dominio del que procede la información dependiendo del tipo de consulta que se realice a la base de datos. 7.12 Creación de cuadros de mando Los cuadros de mando proporcionan al cliente una serie de gráficos en los que en un simple golpe de vista este puede tener una idea general de los resultados que se están obteniendo gracias a la Vigilancia Digital de su empresa. En este caso se han realizado una serie de cuadros de mando que muestran un resumen de los documentos indexados tanto desde el inicio del proyecto como de la última semana. Al igual que los boxes los cuadros de mando son consultas a una base de datos en los que los datos se muestran de forma gráfica para ser más fáciles de analizar. El objetivo de este documento no es el de explicar cómo se realizan las consultas pero un ejemplo de la misma podría ser la siguiente: SELECT DISTRIBUTION('entity15', 'count=10') AS dist FROM ---WHERE ((entity10 LIKE ('%CONTAINS%,BANK')) OR ((collection LIKE ('%REGEX%,.*critic.*')) AND (entity1 <> '' OR entity2 <> ''))) AND (sourcecsv4 NOT LIKE ('%REGEX%,.*papelera.*')) AND (entity21 <> '' OR entity41 <> '' OR entity61 <> '' OR entity81 <> '' OR entity22 <> '' OR entity42 <> '' OR entity62 <> '' OR entity82 <> '' OR entity24 <> '' OR entity44 <> '' OR entity64 <> '' OR entity84 <> '') Tal y como se puede ver, se trata de consultas complejas en un SQL especifico del motor de búsqueda cuyo valor dependerá de la eficacia del configurador y administrador de la plataforma. Entre los cuadros de mando que se han creado destacan el histórico de la indexación de documentos y sus fuentes, los activos más mencionados, o las categorías de ciberseguridad críticas. 69 A modo de ejemplo, en la Figura 7-6, se muestra uno de los cuadros de mando creados para este proyecto en el que se muestran los documentos indexados a lo largo del tiempo y la fuente de procedencia de los mismos. Figura 7 - 6 Cuadro de mando en IRATI 7.13 Generación de alertas Uno de los objetivos de la Vigilancia Digital es la alerta temprana ante futuros incidentes de seguridad, o si estos ya han ocurrido, mitigarlos lo antes posible. Para este proyecto se han generado una serie de alertas en las que cuando el nombre de un activo aparezca en una fuente determinada, un correo electrónico será enviado al cliente advirtiéndole del posible riesgo de seguridad. Estas alertas son generadas mediante un driver JDBC17 que queda a la escucha a la espera de que una regla se cumpla. Cuando esta regla es cumplida, salta el trigger desencadenando una serie de comandos para enviar la alerta al cliente. Dado que se trata de un evento que sucede durante la indexación de los documentos, las alertas deben de ser programadas en el motor de búsqueda de la plataforma. 17 API que permite la ejecución de bases de datos desde el lenguaje de programación Java. 70 Figura 7 - 7 Configuración de alerta en IRATI La imagen superior muestra el código de configuración de una alerta de tipo genérico, en la que esta enviará un correo cuando se detecte el nombre de un activo en una fuente crítica. El uso de alertas también se encuentra destinado a la gestión de la plataforma. Es por ello que se generan alertas por si no se han indexado documentos en una determinada franja de tiempo o si el número de documentos indexados es excesivamente alto, con el fin de detectar posibles anomalías en su funcionamiento. 7.14 Generación de informes Periódicamente se ha acordado con el cliente la generación de un informe detallado en el que se realice un análisis exhaustivo de toda la información indexada en base a sus activos. La herramienta utilizada para este cometido ha sido Crystal Reports. Crystal Reports es una aplicación de inteligencia empresarial utilizada para diseñar y generar informes desde una amplia gama de fuentes de datos. La aplicación permite seleccionar filas y columnas específicas de una determinada base de datos, ofreciendo la posibilidad de organizar la información adquirida en un informe de formato específico. Al mismo tiempo, Crystal Reports ofrece la posibilidad de generar subinformes dentro de un informe general, lo que añade dinamismo y eficacia a la hora de trabajar. Al igual que en los cuadros de mando, mediante el uso de esta herramienta se ha creado un informe basado en los riesgos de ciberataques y prevención de fuga de información. Tal y como se muestra en la imagen, las consultas a la base de datos permiten plasmar la información de forma clara y ordenada. En la Figura 7-8 se muestra la evolución de los datos indexados en función del tiempo. 71 Figura 7 - 8 Informe creado mediante Crystal Reports 7.15 Pruebas y refinamiento Una vez parametrizada la plataforma, se comenzaron a lanzar los primeros jobs con el fin de realizar una toma de contacto y comprobar si los resultados obtenidos estaban siendo satisfactorios. Se pudo observar que existían ciertos términos que se encontraban produciendo altos niveles de ruido, provocando que se indexaran documentos de aparente criticidad que finalmente resultaban ser irrelevantes. Por tanto, se diseñaron una serie de listas negras en las que se incluían ciertas combinaciones de palabras para evitar esta situación. La plataforma se encontró bajo continuos análisis y refinamiento en las búsquedas durante un periodo de 15 días hasta conseguir unos niveles bajos de ruido y coherencia en los documentos indexados. 72 7.16 Revisión y seguimiento Un proyecto de Vigilancia Digital nunca puede darse por terminado ya que requiere de la continua revisión y seguimiento, tanto del estado de la plataforma como de los datos que se están obteniendo. Respecto al estado de la plataforma es necesario una labor de mantenimiento, garantizando que los conectores y servicios funcionan correctamente, que existe espacio de disco duro, que la base de datos está cumpliendo con su cometido, etc. Por otra parte, respecto a los datos que se están obteniendo, es muy importante darse cuenta de que la información en internet se encuentra constantemente sufriendo cambios. Cada día se generan nuevas amenazas y riesgos que necesitan ser incluidos en la plataforma, así como posibles fuentes de ruido. Por tanto, la revisión y mejora continua es indispensable para garantizar un proyecto de Vigilancia Digital satisfactorio. 73 8 Nuevas fuentes de monitorización Aunque la plataforma de Vigilancia Digital IRATI abarca gran parte de la información en Internet, todavía existen campos en los que la empresa S21sec no ha podido investigar lo suficiente. Estos son los markets de aplicaciones móviles y los chats IRC. En este apartado se muestra el trabajo fruto del estudio realizado para obtener los medios con los que comenzar a monitorizar estas fuentes de información. 8.1 Monitorización de markets de aplicaciones móviles En la actualidad el número de aplicaciones críticas (Banca móvil, Aplicaciones de almacenaje de contraseñas, Tiendas online…) ocupan un amplio lugar en las principales tiendas online de aplicaciones móviles. Debido a la sensibilidad de los datos que manejan estas aplicaciones, es vital garantizar que no surgen aplicaciones nuevas que suplanten a las originales con la intención de robar de credenciales, secuestrar dispositivos móviles, usurpar una identidad, etc. Los numerosos markets oficiales y no oficiales que se pueden encontrar en internet, hacen que la monitorización y búsqueda de nuevas aplicaciones se haya convertido en una tarea difícil de llevar a cabo. Algunos de estos sitios ofrecen soluciones en forma de API o RSS realizar esta tarea, pero la gran mayoría de ellos no disponen de ningún tipo de soporte. 74 8.1.1 Monitorización del App Store de iTunes 8.1.1.1 Recursos oficiales En la actualidad Apple ofrece una API de búsqueda de aplicaciones muy completa. Con una simple consulta a través de HTTP, ésta proporciona un fichero en formato JSON con múltiple información. La API permite realizar búsquedas en función de diferentes parámetros, alguno de ellos son: Término de búsqueda País de la tienda en la que se desea realizar la búsqueda Tipo de archivo que se desee buscar ( en este caso el interés será software) Este servicio también proporciona la oportunidad de seleccionar varios parámetros para el resultado que se devuelve: Nombre del desarrollador Número de resultados Idioma Toda la información al respecto se encuentra en el siguiente enlace http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-webservice-search-api.html 8.1.1.2 Recursos no oficiales Aunque iTunes posee una API muy completa, existen lugares alternativos mediante los que se puede realizar un seguimiento de una forma automatizada y estable, de aquellas aplicaciones que son diariamente publicadas. 148apps.com Este portal ofrece diariamente mediante RSS las nuevas apps que se encuentran disponibles en iTunes. En la URL http://www.148apps.com/feeds-services se pueden encontrar los diferentes feeds que ofrece el portal. En base al objetivo que se persigue en este caso, el feed más interesante es http://feeds.feedburner.com/148apps_newest?format=xml en el que se publican las últimas Apps añadidas a iTunes. 75 Appszoom.com Apsszoom es un portal que ofrece la creación de búsquedas en su base de datos de Apps a través de RSS. A continuación se muestra un ejemplo del servicio que proporciona este portal: 1- En primer lugar se debe ingresar la siguiente URL http://es.appszoom.com/iphone-apps/TerminoDeBusqueda sustituyendo “TerminoDeBusqueda” por el parámetro sobre el que deseamos realizar la búsqueda. (En este caso se ha utilizado la palabra Foto). 2- Si se desea, se puede refinar la búsqueda añadiendo filtros como el precio, fecha de publicación o categoría. 3- Una vez refinada la búsqueda se podrá generar un RSS haciendo click en el icono que se indica a continuación: Figura 8 - 1 Generación de RSS en Appszoom 8.1.2 Monitorización de Google Play 8.1.2.1 Recursos oficiales La tienda de Google Play no dispone actualmente de un servicio de API o RSS que permita la búsqueda automática de aplicaciones móviles. La única opción que se presenta desde el portal https://play.google.com/store/apps, es un formulario al que le podremos pasar una cadena de caracteres a buscar. 76 Figura 8 - 2 Formulario de búsqueda en Google Play Tal y como se puede apreciar, los datos proporcionados por el portal no se encuentran en ningún formato del que se puedan sustraer información de forma sencilla, por lo que la única opción sería la inclusión un crawler o “scrapear” los resultados. Figura 8 - 3 Resultados obtenidos tras realizar una búsqueda en Google Play 8.1.2.2 Recursos no oficiales Aptoide.com Aptoide ofrece una API completa para realizar búsquedas de apps dentro de su propio market, es decir, podremos podrán realizarse búsquedas de aplicaciones pero restringidas a su propio market. Desde la url http://www.aptoide.com/webservices/intro se especifican los filtros de búsqueda que ofrece la API: o Listar las aplicaciones de un repositorio determinado o Comprobar si un repositorio tiene actualizaciones para un hash concreto o Listar las aplicaciones de un idioma determinado 77 Androidpit.es El portal Androipit es un market paralelo a Google Play que permite la descarga de aplicaciones para dispositivos Android. Ofrece un RSS en el que incluye las últimas aplicaciones que han sido añadidas a su repositorio. Figura 8 - 4 RSS obtenido a través de Androidpit.es Las actualizaciones tienen un retraso que puede variar entre 1 día y un mes a las publicaciones en Google Play, por lo que no sirve para conocer con exactitud la situación actual del market, pero si para tener una visión global del mismo. Appszoom Appszoom es hasta ahora la forma más viable de monitorizar Google Play, proporcionando un RSS con las últimas aplicaciones que han sido añadidas al market. Estas aplicaciones son actualizadas con un día de diferencia respecto a Google Play, lo que los resultados obtenidos son casi idénticos a los que tendrían realizando la búsqueda en el mercado oficial. La url con el RSS de las últimas aplicaciones añadidas es la siguiente: http://feeds.feedburner.com/androidzoom/LastGamesAndApplications Por otra parte, el portal también proporciona la posibilidad de realizar búsquedas personalizadas y devolverlas en forma de RSS tal y como se explica continuación. 1- En primer lugar se debe ingresar la siguiente URL http://es.appszoom.com/android_applications/sabadell?q=TerminoDeBusqueda donde TerminoDeBusqueda es el parámetro sobre el que se desea realizar la búsqueda. (Para este ejemplo se ha utilizado la palabra “Video”) 2- Si se desea, puede refinarse la búsqueda añadiendo términos relacionados con el precio, fecha de publicación o categoría de la aplicación. 3- Una vez refinada la búsqueda pulsamos se deberá pulsar en el icono de RSS para generar el feed. 78 8.1.2.3 Resumen de características de markets A continuación se muestra una tabla, resumiendo las características de los portales oficiales y no oficiales analizados: Nombre Plataforma Oficial RSS Retardo RSS API App Store iOS SI NO - SI 148apps.com iOS NO SI 1 día NO Appszoom.com iOS/Android SI 1 día NO Google Play Android SI NO - NO Androidpit.com Android NO SI De 1 semana a 1 mes NO Aptoide.com Android NO SI No concuerda SI NO Tabla 8 - 1 Resumen de monitorización de markets 8.2 Chats IRC IRC (Internet Relay Chat) es un protocolo de comunicación en tiempo real basado en un modelo cliente-servidor. El único requisito para acceder a un canal de IRC público es ser poseedor de un cliente IRC y conocer la IP o nombre de dominio del servidor al que se desea acceder. Mediante este apartado se pretende mostrar las alternativas existentes para monitorizar este tipo de canales e incorporarlo a la disciplina de Vigilancia Digital de S21sec. 8.2.1 Clientes con interfaz gráfica Aunque el protocolo IRC se encuentra casi en desuso, todavía son varios los clientes que pueden encontrarse en internet. XChat, HydraIRC, KVIrc o mIRC son algunos de ellos. Este último posee la característica de poder almacenar logs de lo que sucede en un canal determinado por lo que resulta de gran interés en materia de Vigilancia Digital. En primer lugar se deben introducir los datos de conexión: 79 Figura 8 - 5 Configuración de conexión en miIRC Una vez realizada la conexión contra el servidor, se debe seleccionar el canal a monitorizar dentro de la lista de canales del servidor e ingresar en él mediante el comando “/join #nombrecanal”, en este caso se ha seleccionado el canal #anonops. MiIRC genera un log con toda la actividad del canal. La ruta en la que se guarda dicho log es completamente configurable y podría ser pasado a través de la plataforma IRATI para su análisis mediante la creación de un “Custom File”. Figura 8 - 6 Log generado por el cliente miIRC 80 8.2.2 Clientes basados en scripting Debido a la sencillez de este protocolo de comunicación, son múltiples los clientes que pueden encontrarse en internet escritos en diferentes lenguajes de programación y con diferentes funcionalidades. Al igual que ocurre con los clientes con interfaz gráfica, simplemente se debe indicar la dirección del servidor contra el que se desea realizar la conexión y el nombre del canal a monitorizar. A continuación se muestra el resultado de ejecutar un cliente escrito en Python contra el mismo canal: Figura 8 - 7 Log generado por cliente IRC escrito en Python La salida de este script podría ser guardada en un documento a modo de log para poder ser analizados por IRATI. 81 9 Gestión del proyecto En este capítulo se recogen los aspectos más relevantes acerca de la gestión llevada a cabo para este proyecto. Se analizarán los plazos, dedicaciones, alcance, calidad, riesgos y adquisiciones, así como aquellos cambios relevantes que hayan surgido en los diferentes aspectos del proyecto 9.1 Gestión del alcance En este apartado se recogen las diferentes tareas que se han llevado a cabo y el motivo por el cual se aceptaron o rechazaron los diferentes cambios acerca de las tareas que estaban previstas inicialmente. 9.1.1 Alcance Inicial Realizar la formación necesaria para instalar, mantener y explotar la plataforma de Vigilancia Digital IRATI. Este proceso será llevado a cabo en las oficinas de San Sebastián de S21sec de Martes a Viernes trabajando junto al equipo de Vigilancia Digital de dicha compañía. Generar la documentación necesaria para establecer un procedimiento de instalación de la plataforma que sirva de guía a los futuros implantadores. En la actualidad no existe 82 documentación al respecto y es necesario establecer unas pautas que sirvan para la estandarización de la instalación. Estudiar y conocer los aspectos legales que deben cumplirse cuando se desarrollan trabajos de Vigilancia Digital. Se elaborará una documentación al respecto incluyendo los puntos más importantes de la legislación actual que deben cumplirse. Realizar un estudio de implantación de la plataforma en PCI Security Doctors. Se deberá determinar el hardware y software necesario así como las medidas de seguridad a nivel físico y de red. Realizar la implantación de la plataforma en PCI Security Doctors de. La plataforma quedará completamente operativa para que la empresa pueda comenzar a dar el servicio de Vigilancia Digital a sus clientes. 9.1.2 Evolución del alcance Modificación del alcance Modificar el estudio de implantación de IRATI para que en lugar de dos servidores únicamente se utilice uno. Por motivos de presupuesto, PCI Security Doctors decide posponer la implantación de la plataforma por lo que este punto del alcance será sustituido por la implantación de la plataforma para un cliente de S21Sec. Ampliaciones del alcance Estudiar las vías para monitorizar las nuevas fuentes de información emergentes en internet. Las aplicaciones móviles y los chat IRC son fuentes no abordadas todavía por S21sec y se desea determinar la tecnología a utilizar para desarrollar conectores que obtengan información de ellos. No entran en el alcance Desarrollar los conectores para obtener la información de las nuevas fuentes emergentes. Este proyecto únicamente se centrará en el estudio de las posibles vías para su desarrollo pero no en el propio desarrollo. Este punto ha sido descartado del alcance por falta de tiempo para su consecución. Requisitos de la elaboración del proyecto Toda la labor realizada tanto en PCI Security Doctors como en S21sec es de carácter confidencial y no podrá ser publicada sin el consentimiento de la parte que corresponda a cada una de las compañías. 83 Estructura de descomposición del trabajo PROYECTO Tareas de Gestión Planificación Desarrollo del proyecto Formación en IRATI Estudio del marco legal de la Vigilancia Digita Estudio de implantación de IRATI Desarrollo de proyecto de Vigilancia Digital Estudio sobre nuevas fuentes a monitorizar Seguimiento y control Formación a nivel técnico Ley Organica de Protección de Datos Requisitios hardware y software Captura de requisitos Markets aplicaciones móviles Lecciones Aprendidas Formación a nivel de explotación Real Decreto 1720/2007 Requisitios de seguridad Diseño del proyecto Chats IRC Redaccion de la memoria Redacción del documento de instalación y configuración de IRATI Implantación de la configuración Presentación y defensa del proyecto Generación de alertas e informes Pruebas Figura 9 - 1 Estructura de descomposición de trabajo 9.1.3 Hitos que han propiciado cambios en el alcance Reunión de seguimiento con PCI Security Doctors 27/01/2014. En esta reunión se hace una revisión sobre el estudio de implantación de IRATI. La empresa determina que la adquisición de dos servidores supone un desembolso demasiado alto por lo que solicitan que se instale la plataforma en un único servidor en lugar de dos. Este cambio es aceptado puesto que no supone un gran impacto en el diseño inicial tal y como este estaba planteado. Reunión de seguimiento con S21sec 18/02/2014. El incremento de aplicaciones fraudulentas en los mercados de aplicaciones para smartphones provoca un incremento de la necesidad por parte de los clientes de que estos sitios sean monitorizados. Como S21sec no proporciona este servicio todavía, es necesario realizar un estudio de viabilidad para saber si se podría realizar con los recursos 84 actuales que dispone la empresa, o si por el contrario, se debería desarrollar un conector nuevo para obtener la información de dichas fuentes. En base a la carga de trabajo en ese momento, la ampliación del alcance es aceptada. Reunión de seguimiento con PCI Security Doctors 24/02/2014. La empresa tras haberle sido entregado el documento de estudio de implantación de la plataforma IRATI, considera que no puede realizar ese desembolso de dinero y que definitivamente paraliza el proyecto. Como alternativa, propone que realice un proyecto de Vigilancia Digital con S21sec participando como miembro de su equipo. Esta modificación del alcance es aceptada puesto que de otra forma el PFC no podría ser llevador a cabo con éxito. Reunión de seguimiento con S21sec 28/04/2014. En base al resultado obtenido con el estudio sobre monitorización de markets para smartphones, la empresa propone realizar un nuevo estudio para la monitorización de chats IRC. La ampliación del alcance es aceptada puesto que el proyecto de Vigilancia Digital se encuentra en una situación estable en la que únicamente necesita un mantenimiento diario de las fuentes de información. Reunión de seguimiento con S21sec 19/04/2014. Tras la finalización del estudio sobre la monitorización de chats IRC, S21sec propone desarrollar una solución para poder comenzar a ofertar este servicio a los clientes. Por no poder garantizar que esto sea finalizado antes de la finalización del contrato laboral, la propuesta es declinada. 9.2 Gestión de plazos El desarrollo de este proyecto ha transcurrido entre los meses de noviembre de 2013 y mayo de 2014. Aunque las empresas en las que ha sido desarrollado el proyecto no tenían unos plazos establecidos para la finalización del proyecto, todas las actividades han sido enfocadas para que este pudiera estar terminado durante el mes de mayo. La necesidad de establecer mayo como fecha límite para la consecución de todas las tareas, sin tener en cuenta aquellas pertenecientes al aspecto académico del proyecto, viene dada por los plazos de la Universidad del País Vascos para la presentación de Proyectos de Fin de Carrera. Es por ello que a lo largo de todo el proceso se ha cuidado mucho que ninguna de las tareas se alargara en el tiempo demorando así la fecha de presentación del proyecto. La Tabla 9-1 “Gestión de plazos” muestra las principales tareas que han sido realizadas durante el proyecto, así como las subtareas más importantes contenidas dentro de estas. A la derecha de la tabla se muestra la fecha en que cada una de ellas dio lugar a su comienzo, seguida de la fecha en que fue finalizada. 85 Tareas de desarrollo: Formación en IRATI Estudio del marco legal aplicable a la Vigilancia Digital Estudio de implantación de IRATI Desarrollo del proyecto de Vigilancia Digital Estudio sobre nuevas fuentes a monitorizar Subtarea Formación a nivel técnico Formación a nivel de explotación Redacción del documento de instalación y configuración de IRATI Ley Orgánica de Protección de Datos Fecha Inicio 10/11/2013 Fecha Fin 13/12/2013 16/12/2013 10/01/2014 13/01/2014 21/02/2014 13/01/2014 21/02/2014 Real Decreto 1720/2007 Requisitos hardware y software Requisitos de seguridad Revisión de estudio de implantación Captura de Requisitos 24/02/2014 10/03/2014 20/01/2014 10/02/2014 11/02/2014 03/03/2014 25/02/2014 10/03/2014 25/03/2014 27/03/2014 Diseño del proyecto Implantación de la configuración Generación de alertas e informes Pruebas y refinamiento Markets de aplicaciones móviles Chats IRC 28/03/2014 18/04/2014 17/04/2014 22/04/2014 23/04/2014 28/04/2014 29/04/2014 24/02/2014 08/05/2014 17/03/2014 30/04/2014 15/05/2014 10/11/2013 10/11/2013 15/05/2014 15/05/2014 11/01/2014 13/06/2014 05/06/2014 23/06/2014 Tareas de Gestión: Seguimiento y control Lecciones aprendidas Tareas académicas: Redacción de memoria Presentación y Defensa del Proyecto Tabla 9 - 1 Gestión de plazos 86 Diagrama de Gant 87 9.3 Gestión de riesgos y adquisiciones En la siguiente tabla se recogen los riesgos más significativos que se han detectado en este proyecto y las medidas que se han tomado para evitar o minimizarlos Riesgo Causa Plan de contingencia Riesgo de no poder implantar IRATI Tras el estudio presentado a PCI Security Doctors la compañía no se encuentra segura de realizar las adquisiciones necesarias para implantar la plataforma de Vigilancia Digital IRATI Trabajar sin haber realizado una planificación previa Cuando se trabaja en un proyecto en el que no se ha tenido una experiencia previa es difícil realizar una planificación que sirva como punto de referencia para determinar la situación del proyecto. Cuando se compagina una jornada laboral con los estudios universitarios se torna una tarea difícil sacar tiempo para poder dedicar tiempo a las tareas académicas. Se establece Marzo como fecha límite para la adquisición del hardware necesario. Al mismo tiempo se contacta con S21sec para poder llevar a cabo un proyecto de Vigilancia Digital con ellos. Enfatizar el seguimiento y control de las tareas a realizar evaluando si éstas podrán ser completadas o no. No poder finalizar la documentación del proyecto a tiempo. No poder dotar al proyecto del valor académico necesario por motivos de confidencialidad. Este proyecto ha tenido múltiples apartados que han tenido que ser suprimidos o parcialmente contados por motivos de confidencialidad lo que podían convertirlo en un proyecto pobre académicamente hablando. Tabla 9 - 2 Gestión de riesgos 88 Realizar planificaciones cortas de lo que se va a realizar cada semana e intentar aprovechar al máximo el tiempo libre de los fines de semana. Permanecer en constante comunicación con la empresa sobre lo que puede mencionarse en la memoria del proyecto. Buscar nuevos enfoques que aporten un valor añadido a la documentación. Anonimizar al máximo toda la información que pueda identificar a clientes en el proyecto. En la siguiente tabla se recogen las diversas adquisiciones que se han realizado para desarrollar las diferentes aplicaciones del proyecto. Adquisiciones Herramienta de Vigilancia Digital IRATI Bases de datos con palabras clave Imágenes y logotipos Herramienta desarrollada por la empresa S21sec para realizar labores de Vigilancia Digital. Algunas de las palabras clave (categorías) para llevar a cabo el proyecto de Vigilancia Digital han sido obtenidas de las bases de datos de S21sec. Los logotipos y las imágenes que aparecen en la memoria final del proyecto han sido cedidas por PCI Security Doctors y S21sec Tabla 9 - 3 Gestión de adquisiciones 9.4 Gestión de dedicaciones La principal dedicación de este proyecto ha sido invertida de lunes a viernes en horario de 8:30 de la mañana a 13:30 de la tarde ya que ha sido el horario laboral acordado con ambas empresas antes del inicio del proyecto. No obstante, debido al interés suscitado por la temática del proyecto, se han dedicado en momentos puntuales horas extras en ambas empresas para seguir trabajando con el proyecto. También ha sido indispensable dedicar un cierto número de horas fuera del horario laboral a aquellas tareas académicas como son la redacción de la memoria y la presentación y defensa del proyecto. Tareas de desarrollo: Formación en IRATI Estudio del marco legal aplicable a la Vigilancia Digital Estudio de implantación de IRATI Desarrollo del proyecto de Vigilancia Digital Subtarea Formación a nivel técnico Formación a nivel de explotación Redacción del documento de instalación y configuración de IRATI Ley Orgánica de Protección de Datos Tiempo invertido ( Hrs ) 125 Horas 100 horas 80 horas 90horas Real Decreto 1720/2007 Requisitos hardware y software 60 horas 50 horas Requisitos de seguridad Revisión de estudio de implantación Captura de Requisitos 40 horas 25 horas 30 horas Diseño del proyecto Implantación de la configuración 89 80 horas 25 horas Estudio sobre nuevas fuentes a monitorizar Generación de alertas e informes Pruebas y refinamiento Markets de aplicaciones móviles 40 horas 73horas 60 horas Chats IRC 25 horas Tareas de Gestión: Seguimiento y control Lecciones aprendidas 73 horas 35 horas Tareas académicas: Redacción de memoria Presentación y Defensa del Proyecto 60 horas Tabla 9 - 4 Gestión de dedicaciones Tiempos totales El tiempo total empleado para el desarrollo de este proyecto ha sido de 963 horas + 108 horas de gestión. Total 1071 horas 90 10 Conclusiones La Vigilancia Digital es una disciplina que cada vez más empresas practican pero existe un alto desconocimiento sobre ello. Este proyecto ha servido para conocer un mundo que hasta entonces para mí era desconocido y aprender cómo trabajan y cuáles son los métodos que emplean las empresas que se dedican a ello. Los proyectos ambiciosos también conllevan riesgos con los que uno a veces poco o nada tiene que hacer. Esto es lo ocurrido con este proyecto en el que una empresa desea realizar una inversión en una nueva tecnología pero finalmente opta por no hacerlo. Gracias a que S21sec ha querido que yo participará en uno de sus proyectos la consecución del mismo ha sido posible de otra forma hubiera tenido que optar por modificar totalmente el alcance de este. Por otra parte la confidencialidad cobra una gran importancia cuando se realizan proyecto de fin de carrera para empresas que poseen herramientas con propiedad intelectual y manejan datos críticos. Esto dificulta enormemente la labor del alumno puesto que se ve obligado a omitir apartados o a redactarlos de forma que no puedan revelarse secretos empresariales. Técnicamente hablando el proyecto me ha obligado a conocer el funcionamiento y desarrollo de nuevas tecnologías aunque tampoco he podido llegar a profundizar en ninguna de ellas, pero sí que me ha servido para darme cuenta de lo versátil que una 91 persona que se dedique al mundo de la informática debe ser y estar en constante evolución. El estudio desarrollado sobre la legislación que envuelve la Vigilancia Digital ha permitido que me moviera en un ámbito en el que los informáticos no suelen, o no quieren moverse. Hoy en días es de vital importancia que un profesional conozca las leyes relacionadas con la actividad que está llevando a cabo no únicamente para no verse involucrado en un problema de legalidad sino porque esto ayuda a que sea mejor profesional. El trabajo en equipo también ha sido un factor importante en el desarrollo de este proyecto. Entrar a formar parte de un equipo con una dilatada experiencia en el mundo de la ciberseguridad me ha enseñado como se trabaja en una gran compañía en lo referente a metodologías de trabajo, comunicación entre los miembros del equipo, reuniones de control y seguimiento etc. En resumen este ha sido un proyecto que me ha ayudado a crecer como profesional, he podido ver cómo trabajan y se estructuran dos empresas por dentro, he aprendido a tratar con clientes, he conocido nuevas tecnologías con las que antes no había trabajado y he podido formar parte de un equipo de trabajo real. Sí que es cierto que la confidencialidad y la toma de decisiones por parte de las empresas han repercutido en el desarrollo del proyecto pero finalmente mi valoración sobre este es muy positiva. A estas conclusiones le acompañan, a modo de lecciones aprendidas, una serie de conceptos de valor añadido que se han ido obteniendo; ganado importancia a lo largo de la vida de este proyecto. Sobre la dirección de proyectos Aunque a simple vista parezca una tarea más, la dirección de proyectos es un factor clave dentro del desarrollo de la actividad de una empresa. El director de proyectos conoce en todo momento las tareas que está llevando a cabo cada persona y se encarga de que estas sean finalizadas en el plazo estimado. Auto dirigirse, ayudado por el directo del proyecto, conlleva tener una gran disciplina y exigencia para cumplir con los objetivos y plazos establecidos. En múltiples ocasiones se vuelve un arma de doble filo puesto que el ser tu propio conlleva múltiples ventajas también posee otras muchas desventajas. Sobre la planificación de proyectos En proyectos como el que se ha desarrollado, la planificación no posee la relevancia que tiene en otros proyectos sino que son la gestión, el control y el seguimiento los que cobran mayor importancia. Esto hace que seguir el camino correcto del proyecto sea 92 complicado ya que comparar el estado del proyecto con la planificación suele ser un buen indicador para saber si se están haciendo bien las cosas. La confidencialidad complica sensiblemente el desarrollo de un proyecto y esto no siempre se tiene en cuenta. Antes de llevar a cabo un proyecto, debe tenerse en cuenta que deberá destinarse un porcentaje de la dedicación a garantizar que el proyecto se desarrolla bajo unas condiciones en las que se mantiene la confidencialidad en todos sus aspectos Sobre el seguimiento y control del proyectos Tener un soporte común, como el que se ha utilizado en este proyecto en S21sec, que indique la tarea que está realizando cada miembro del proyecto y en qué porcentaje de esta se ha completado, no solo ayuda a que se mejore el seguimiento del proyecto sino que motiva al equipo en general para continuar trabajando en una buena línea de trabajo. Sobre la gestión del alcance La comunicación con un cliente al que se le presta un servicio es fundamental para evitar continuas modificaciones en el alcance. Involucrarle lo máximo posible durante la captura de requisitos hace que aumente su satisfacción y evita cambios de última hora. Por mucho que se intente, existen factores dentro del alcance que son incontrolables. Siempre puede darse el caso en el que un cliente cancele un proyecto o que pida cosas que se encuentran fuera de lo acordado inicialmente. Es por ello, que es indispensable tomar las medidas necesarias antes del inicio del proyecto en forma de cláusulas o de contratos que dejen claro el acuerdo al que se ha llegado. Sobre la gestión de los recursos humanos Entrar en un equipo que lleva trabajando en conjunto durante un periodo largo de tiempo es difícil puesto que puede considerarse a la persona nueva como un intruso. Se debe prestar una especial atención los primeros días a escuchar e y mostrarse en una actitud de ganas de aprender para poder llegar a integrarse en el grupo. El trabajo es algo muy valorado por los responsables de proyecto pero más todavía la disponibilidad. Por norma general un jefe prefiere a un trabajador cumplidor que sabe que va a estar cuando sea necesario, que uno muy bueno que vaya por su cuenta. La disponibilidad de la persona que ha llevado a cabo este proyecto, ha permitido que la empresa le haya realizado una oferta de trabajo. Debe intentarse mostrar la opinión de cada uno pero siempre aportándola como algo constructivo y no como algo que contradiga la opinión de un compañero. También es 93 bueno llevar a cabo esta práctica con superiores pero siempre teniendo en cuenta que la última palabra será la de ellos. Sobre tecnologías y lenguajes de programación La comunidad informática, especialmente aquella dedicada al ámbito de la seguridad, aporta múltiples conocimientos y aplicaciones de gran utilidad. Antes de comenzar a programar algo, es recomendable acudir a sitios web como GitHub o Stack Overflow puesto que es altamente posible que alguien haya programado algo similar a lo que se desea desarrollar y puede servir como punto de partida Sobre proyectos que contienen tratamiento de datos de carácter personal. Antes de realizar proyectos que contengan datos de carácter personal es indispensable realizar un estudio sobre los puntos de la legislación vigente dependiendo del ámbito de acción de la empresa. Esto ayudará a evitar problemas legales y a aumentar la confianza del cliente final. Sobre el impacto de la Vigilancia Digital en la intimidad de las personas Debemos ser muy celosos con la información que se muestra en internet sobre nosotros. Cada vez más las empresas se preocupan por adquirir esta información y utilizarla en su beneficio. 94 11 Bibliografía 1. Ley Organica 15/1999, de 13 de diciembre, de Protección de Datos de Carácter Personal http://noticias.juridicas.com/base_datos/Admin/lo15-1999.html 2. Reglamento RD-1720/2007 http://noticias.juridicas.com/base_datos/Admin/rd1720-2007.html 3. Declaración sobre buscadores en Internet de la AEPD http://www.agpd.es/portalwebAGPD/canaldocumentacion/recomendaciones/co mmon/pdfs/declaracion_aepd_buscadores.pdf 4. Creating-a-DMZ-on-a-Juniper-SSG20-Firewall http://forums.juniper.net/t5/ScreenOS-Firewalls-NOT-SRX/Creating-a-DMZon-a-Juniper-SSG20-Firewall/td-p/75112 5. RAID http://es.wikipedia.org/wiki/RAID 6. Documentación técnica de S21sec 95 12 Agradecimientos En primer lugar me gustaría agradecer a PCI Security Doctors y a S21sec la oportunidad de haber llevado a cabo este proyecto en sus respectivas empresas. Desde el inicio del proyecto hasta el final de este, se han preocupado porque me sintiera a gusto con ellos y han hecho todo lo posible para ello. Especialmente me gustaría dar las gracias a Andoni Valverde tutor del proyecto, y a Bryam Ortiz analista en S21sec por haberme transmitido todos sus conocimientos y haberme ayudado en todo lo que ha estado en su mano. Ha sido una experiencia muy enriquecedora aprender con ellos estos meses y estoy seguro que lo vivido durante el desarrollo de este proyecto me marcará para el resto de mi carrera profesional. También quisiera dar las gracias a José Miguel Blanco, tutor del proyecto por parte de la universidad, que me ha ayudado a reflexionar y a ser autocrítico conmigo mismo en cosas que por mi cuenta ni siquiera me hubiera parado a pensar. Sus directrices y consejos han sido de gran ayuda para sacar adelante este proyecto. Finalmente me gustaría agradecer a mi familia el esfuerzo que ha hecho por que pudiera realizar este proyecto tanto en lo económico como en lo personal. A lo largo de toda mi educación nunca han dudado en apoyarme en todas las decisiones que he tomado y siempre me han ayudado a superar los momentos difíciles. Gracias a todos. 96 Anexo A: Manual de instalación y configuración de IRATI Por la presente certifico haber accedido al manual de “INSTALACION Y CONFIGURACION de IRATI” elaborado por D. David Tapia Santamaría dentro del trabajo realizado en S21sec como parte de su proyecto de Fin de Carrera. El Manual con Copyright de S21sec consta de 35 páginas y está organizado en 9 apartados siendo los más relevantes los correspondientes a la configuración del servidor Internet Information Server (IIS), configuración de Sinequa, así como a las instalaciones de Bitacora y los correspondientes conectores. Los contenidos del manual están orientados a dar soporte a los futuros implantadores de la plataforma. Fmdo: José Miguel Blanco 97 Anexo B: Glosario de términos Vigilancia Digital: Proceso sistemático y permanente de búsqueda, captación, recolección, análisis y difusión de información pública estratégica. OSINT: Open Source Inteligence, su traducción al castellano es la de Inteligencia de Fuentes Abiertas. Conector: Aplicación destinada a la recolección de información en internet. Falso positivo: Amenaza detectada que finalmente resulta ser un fallo en la interpretación de los datos. Web Scraping: Programa que simula la navegación de un humano en la World Wide Web para obtener información concreta. Web Crawler: También conocido en castellano como Araña Web, es un programa que inspecciona las páginas de la World Wide Web de forma metódica y automatizada. Web Cleaning: Proceso mediante el cual se limpian los banners y frames no necesarios que contiene un documento HTML. 98
© Copyright 2024