análisis y diseño de una herramienta proactiva de seguridad en

Anuncio
ANÁLISIS Y DISEÑO DE UNA HERRAMIENTA PROACTIVA DE
SEGURIDAD EN REDES WAN
Autor: Blanco Torrente, Francisco.
Director: Javier Jarauta Sánchez y Rafael Palacios Hielscher.
Entidad Colaboradora: ICAI- Universidad Pontificia Comillas y Sistemas Informáticos
Abiertos, S.A. (SIA).
RESUMEN DEL PROYECTO
El propósito de este proyecto es estudiar, analizar y diseñar una herramienta de
utilidad para las empresas/personas en el ámbito de la seguridad informática. Se trata de
una herramienta que ayude antes de que el ataque se haga efectivo, es decir, que sea
proactiva, para que permita una rápida detección de ataques y, así, poder minimizar los
tiempos de análisis y de respuesta evitando, en la mayor medida posible, los falsos
positivos.
Palabras clave: Proactiva, Seguridad, Ataque, Twitter, Logs, ElasticSearch, Kibana.
1. Introducción
En la actualidad, la seguridad informática se centra, principalmente, en
herramientas y estrategias reactivas, que sirven para recuperarse y eliminar una amenaza
o vulnerabilidad. Con este proyecto, se pretende crear una herramienta que sirva para
poder prevenir amenazas y complementar la seguridad que ofrecen las herramientas
reactivas. Además, se trata de una herramienta automática, la cual sólo necesitará la
intervención humana a la hora de incluir los términos que se desean buscar para obtener
información acerca de un tema (o temas) que puedan ser útiles para analizar, si se cree
que puede haber amenazas relacionados con ellos.
2. Definición del proyecto
Para abordar el proyecto, primero se estudiará y analizará qué es lo que existe
hoy en día en este ámbito, con objeto de saber por dónde se puede dirigir y que su
utilidad sea mayor, es decir, un estado de la cuestión, en el que se verán las diferentes
estrategias que se pueden seguir (reactiva y proactiva).
También se analizan las herramientas reactivas más útiles en la actualidad y
cómo está evolucionando la seguridad informática.
Posteriormente al estudio inicial, se ha de establecer un diseño, basándose en lo
que se quiere ofrecer y conseguir para que esta herramienta pueda ser de utilidad. En ese
diseño, se selecciona un conjunto de herramientas y programas que ayudarán a poder
implementar las funcionalidades a realizar.
La última gran etapa será la de implementación de la herramienta como tal, en la
que se usarán los programas seleccionados y se programará lo necesario para poder
tratar la información, y conseguir los resultados esperados de una herramienta de
seguridad, es decir, si se considera que hay una posible amenaza o no.
Finalmente, se procederá a una fase de continuo desarrollo, ya que se ha de tener
la herramienta lo mejor actualizada y afinada posible. Se pasa a una fase de continuas
pruebas para incluir o quitar reglas para el análisis de la información, en función de
cómo se esté desarrollando y evolucionando el tema de los ataques y las
vulnerabilidades en ese momento.
3. Desarrollo de la herramienta
El desarrollo de la herramienta como tal se dividirá en módulos. Habrá un
primer módulo llamado “Sondas”, un segundo llamado “Registro de evidencias” y un
tercer “Módulo de análisis”. A continuación se comenta brevemente cada uno, teniendo
en cuenta que se explican con mayor detalle en la memoria.
 Sondas: aquí se encuentran los programas que recopilarán y tratarán la
información. Se utilizan los programas ElasticSearch y Kibana. El primero es un
buscador en tiempo real, y el segundo una interfaz gráfica para ese buscador que
permite tratar grandes volúmenes de datos, filtrarlos y realizar gráficos.
 Registro de evidencias: este módulo se compone del fichero con la información
recopilada de ElasticSearch, así como información proveniente de logs de la
empresa SIA. Todos estos datos, serán analizados y tratados en el siguiente
módulo, para obtener información útil de ellos. Además, se dispondrá de un
fichero con palabras clave de seguridad, además de uno con software y
hardware de la empresa, para buscar información acerca de ellos en relación a
vulnerabilidades.
 Módulo de análisis: aquí se programarán unas reglas para analizar la
información de ElasticSearch y la de los logs, para poder tener una primera idea
de si se han encontrado posibles amenazas o no.
A continuación, se muestra la Ilustración 1, en la que se puede ver un esquema
de cómo es la herramienta:
Ilustración 1: Esquema resumen del funcionamiento
4. Resultados
Los resultados se obtendrán una vez recopilada la información, y analizada con
unas reglas programadas. Esas reglas se basan en agrupar la información por horas, y
analizar tanto el número de veces que aparecen ciertas palabras cada hora, o de ver
cuántas direcciones IP aparecen cada hora, así como contar el número de tweets de cada
intervalo, para ver si se puede obtener información útil.
Dicha información, será recopilada en ficheros de texto (uno por cada día), y
tendrá el formato: "hora" "cantidad", es decir, la primera columna será las horas, y la
segunda la cantidad de direcciones, palabras, número de tweets...
Finalmente, esos ficheros serán dibujados en gráficos para analizarlo de forma
más sencilla. A continuación se adjunta un ejemplo de la Ilustración 2, referente a la
información de un día específico (26/06/2014) y la cantidad de direcciones IP por hora:
Ilustración 2: Cantidad de direcciones IP por hora el día 26 (Nota: el eje X muestra la hora más
uno)
Se puede ver cómo, para ciertas horas, el volumen de direcciones IP aumenta de
forma considerable, por lo que puede ser un indicio de que algo puede estar pasando, y
se generará una alerta de forma automática por superarse el umbral.
ANALYSIS AND DESIGN OF A PROACTIVE SECURITY TOOL IN
WAN NETWORKS
Author: Blanco Torrente, Francisco.
Supervisor: Javier Jarauta Sánchez and Rafael Palacios Hielscher.
Collaborating Entity: ICAI – Universidad Pontificia Comillas and Sistemas
Informáticos Abiertos, S.A. (hereafter, SIA)
ABSTRACT
The aim of this project is to study, analyze and design a helpful tool for
companies/individuals in the field of security. It will be a tool useful to help before the
attack being effective, that is, a proactive tool, to allow early detection of attacks and
minimize the time of analysis and response, and to avoid as much as possible, the false
positives.
Keywords: Proactive, Security, Attack, Twitter, Logs, ElasticSearch, Kibana.
1. Introduction
Today, computer security focuses primarily on tools and strategies which are
reactive, what means they are useful to recover or eliminate a threat or vulnerability.
The aim of this project is to create a tool that is good to prevent security threats and
complement the security that reactive tools offer, and the most important, it will be an
automatic tool, which only needs human intervention at the moment of inserting the
terms that you want to search for information about a topic (or topics) that may be
useful to analyze, if you believe that there may be threats associated with them.
2. Proyect definition
To address the project, the first thing is to study and analyze what exists
nowadays in this area, so you know what you can do to create a tool with a high utility,
that is, a state of the art, in which you will see the different strategies that can be
followed (reactive and proactive), the most useful reactive tools today and how
computer security is evolving, which is important to see the continued development, so
every day you have to take more into account the issue of security.
After initial study, it is the time to think of a design, based on what you want to
offer to make this tool serviceable. In this design, a set of tools and programs that help
to implement the functionalities designed is selected.
The last major step will be the implementation of the tool, wherein the selected
programs will be used and program what will be needed to treat information that you
have, and then, get the expected results of a security tool, that is, consider whether there
is a potential threat or not.
Finally, we will proceed to a stage of continuous development, because you
must have the tool well updated and refined as possible, that is, a phase of continuous
testing to include or remove rules for the analysis of information, depending on how are
threads and vulnerabilities at that time evolving.
3. Tool description
The development of the tool is divided into modules. There will be a first
module called Probes, a second one called "Evidence record" and a third named
"Analysis module". Below each will be commented briefly, considering that it will be
explained in greater detail in the statement.
 Probes: here you can find programs that collect and process the information.
Those programs are ElasticSearch and Kibana. The first is a real-time search
engine, and the second one a graphical interface for the first one, which allows
to treat large volumes of data, filter and make graphics with them.
 Evidence record: this module consists of the file with the information gathered
from EasticSearch and logs information from the company SIA. All these data
will be analyzed and processed in the following module to obtain useful
information from them. In addition, there will be files with security keywords as
well as another with hardware and software of the company to find information
about them related to vulnerabilities.
 Analysis Module: here, rules are programmed to analyze the information from
ElasticSearch, and the logs from SIA in order to have a first idea of whether
potential threats are found or not..
Here, Ilustración 3 is shown, and it shows an outline of the tool:
Ilustración 3: Schematic overview of the operation
4. Results
The results will be obtained once the information is collected, and analyzed with
some programmed rules. These rules are based on dividing the information gathered for
hours, and see how many times a certain word appears each hour, or see how many IP
addresses appeared, and count the number of tweets published during each interval to
see if you can get some useful information.
Such information will be collected in text files (one per day), and will have the
format: "time", "quantity", that is, the first column will be the hours and the second the
number of addresses, words, number of tweets...
Finally, these files will be drawn on graphics to be viewed more easily. An
example is the Ilustración 4, which information concerning the day 26th and the
number of IP addresses per hour is showed:
Ilustración 4: Hourly amount of IP addresses at day 26 (NOTE: the X axis shows the time plus one)
You can see how, for some hours, the volume of IP addresses increases
considerably, so it may be an indication that something is happening, and an alert will
be automatically generated because of exceeded the threshold.
Descargar