Conecta con nosotros

Noticias

Threat Hunting, ¿cómo se detecta una amenaza?

Publicado el

Punto de mira

Esta es una pregunta que cualquier persona interesada en la seguridad (no solo en la ciberseguridad, sino en la seguridad en general) se ha formulado en más de una ocasión: ¿cómo se detecta e identifica una amenaza, sea del tipo que sea? Evidentemente, los sistemas varían sustancialmente de unos casos a otros, pero en todos hay elementos comunes (como la escucha constante o la búsqueda de patrones y de anomalías), que nos puede poner sobre la pista. Y es que uno de los principales objetivos de los ciberdelincuenes, e incluso de los simples «gamberros» que solo pretenden crear un patógeno y lograr la máxima difusión por cuestión de vanidad, es que sus acciones pasen desapercibidas. Por lo tanto, realizan un importante esfuerzo para enmascarar las acciones de sus virus, pues saben que la más mínima señal de su existencia puede dar al traste con sus planes.

Pero, antes de seguir abordando este asunto, es interesante recordar la regla 80/20, una convención aceptada por la comunidad de expertos en ciberseguridad, y que dice que solo el 20% de los atacantes son lo suficientemente avanzados (en lo referido a su nivel de conocimientos) y cuentan con el tiempo y los recursos necesarios para llevar a cabo ataques sofisticados y complejos con un alto nivel de probabilidades de éxito. Ojo, en ocasiones esta proporción se puede ver alterada, principalmente por la aparición de entornos de desarrollo de malware personalizado, así como de servicios con los que podemos contratar a profesionales para que desarrollen patógenos que se ajusten a lo que estamos buscando. No obstante, podemos confiar en 80/20 como una regla que se cumple de manera regular.

Así pues, con un mínimo (realmente mínimo) de cuidado, ya es posible prevenir el 80% de los ataques que podamos sufrir. ¿Esto es una buena noticia? Sin duda, especialmente si al principio pensábamos que todos los ataques compartían el mismo nivel de peligrosidad. Las medidas de seguridad básicas y la formación adecuada al respecto, nos permitirán respirar con tranquilidad con respecto a ocho de cada diez intentonas. Claro, que ser conscientes de esto también nos devuelve otra realidad: los otros dos ataques pueden ser especialmente sofisticados, diseñados a medida de su objetivo (nosotros) y, por lo tanto, sí que suponen una seria y peligrosa amenaza.

IBM, en su blog SecurityIntelligence, recuerda tres verdades que, desgraciadamente, debemos asumir antes de seguir por el proceloso camino de la autoprotección:

  • No puedes prevenir todos los ataques.
  • Tu red se verá comprometida.
  • El 100% de seguridad no existe.

Sensacional, ¿verdad? En resumen: hagamos lo que hagamos, estamos amenazados, y la posibilidad de un ataque exitoso existirá siempre. No obstante, es imprescindible que tengas este planteamiento muy presente, siempre. ¿Por qué? Pues porque confiar en que una solución de seguridad, por completa y efectiva que sea, nos ofrece un 100% de seguridad, puede ocasionar que nos relajemos, dejemos de supervisar nuestros sistemas en busca de anomalías y señales y, por lo tanto, el nivel de riesgo al que nos enfrentamos se vea incrementado por nuestra pasividad a este respecto.  Así pues, si hemos optado por un enfoque holístico de la seguridad, y contamos con sistemas avanzados de prevención, control, respuesta y análisis forense, el consenso de la comunidad afirma que podremos olvidarnos de nueve de cada diez ataques.

Aplicando las matemáticas

Entonces, y por hacer una composición de lugar, la suma de la ineficacia de gran parte de los ataques, combinada con una política integral de ciberseguridad, nos protege de nueves de cada diez. El problema es que el que completa la decena es, sin duda, el más sofisticado de todos, y por lo tanto es el que más nos costará repeler o, en el peor de los casos, identificar cuando ya haya efectuado su tarea, y queramos, al menos, cerrar la puerta por la que ha logrado entrar. Y aquí es cuando ya abordamos, de lleno, el proceso de thread hunting, ¿cómo detectamos las amenazas?

Lo primero que debemos tener claro es que, aunque nos podemos apoyar en determinadas herramientas que pueden ser de gran ayuda, al menos parte del proceso será, siempre, manual, es decir, que no podremos delegarlo en una solución automática. Además, cuando analicemos una infraestructura sin tener evidencias de que se ha producido una agresión, o tan siquiera de si existe alguna brecha de seguridad, tendremos que basarnos en nuestros propios conocimientos (tanto genéricos, en lo referido a seguridad, como específicos de la infraestructura que estamos supervisando), y aplicarlos para desarrollar hipótesis de ataques. Una vez que tengamos una que sea plausible, revisaremos el sistema para comprobar si hay indicios que apunten a que ha podido ocurrir. ¿Negativo? Pues tomaremos las medidas para evitar que pueda ocurrir. ¿Positivo? En tal caso procederemos, de inmediato, a «cerrar todas las puertas» y, a continuación, realizaremos un análisis forense completo, con el fin de determinar los daños, tomar las medidas necesarias para evitar los riesgos, actuar contra los atacantes si esto es posible, etcétera.

Para determinar las hipótesis, que posteriormente intentaremos desarrollar, contamos con tres enfoques de partida: basada en analíticas, en conocimientos de seguridad y en análisis de la situación concreta de riesgo. Evidentemente, es posible crear hipótesis complejas en las que podemos combinar varias de estas fuentes. En tal caso, incrementaremos el tiempo necesario para formular cada hipótesis, reduciendo el número total de ellas que podemos probar. No obstante, tendremos más probabilidades de identificar una potencial amenaza con cada una de ellas.

Cuando hablamos del modelo basado en analíticas, sí que abrimos la puerta en gran medida a soluciones capaces de automatizar gran parte del proceso. Con las herramientas y servicios de análisis User and Entity Behavior Analytics (UEBA),. Recordemos que Gartner define UEBA como un sistema que emplea diversos métodos analíticos, tanto básicos como avanzados, para crear perfiles de usuarios y dispositivos. En función a estos dos elementos se pueden detectar cualquier comportamiento que resulte sospechoso (por anómalo) y adoptar rápidamente las medidas que sean necesarias. Dicho de otra manera, el sistema determinará qué es «normal» y, con esa información, buscará irregularidades. Para lograr afinar cada vez más los resultados, estas soluciones se apoyan en Machine Learning. Lo importante, no obstante, es que una solución UEBA nos proporcionará, de manera rápida y automática, mucha información que, en otro caso, nos costaría decenas (o centenares) de horas de revisión de logs. Sin embargo, esto no significa que nos vaya a indicar cuál es el problema concreto, solo señalará anomalías. Interpretarlas es cosa nuestra. Y esta puede ser la parte más compleja. Porque, por ejemplo, supongamos que el siguiente texto es parte de un log, en el que guardamos los inicios de sesión de uno de nuestros empleados, cuando llega por la mañana para empezar a trabajar:

User01 – login time – log.txt

dd/mm/yyyy – hh.mm.ss
03/05/2017 – 09.00.15
04/05/2017 – 09.00.15
05/05/2017 – 09.00.15
06/05/2017 – 09.00.15
07/05/2017 – 09.23.42
08/05/2017 – 09.00.15
09/05/2017 – 09.00.15
10/05/2017 – 09.00.15

La pregunta es: ¿cuántas anomalías ves en ese registro? Una, ¿verdad? El 07/05 encontramos que se rompe la uniformidad en las horas de inicio de sesión de los días anteriores y posteriores. Así, quizá sea interesante profundizar un poco en las actividades de ese usuario ese día en concreto, ¿no? Pues en realidad no o, al menos, solo a medias. ¿No ves otra anomalía en el log? ¿Algo que pueda hacernos sospechar? Te daré una pista: somos personas, no robots…

Efectivamente, ¿quién inicia sesión, exactamente a la misma hora (en el mismo segundo del mismo minuto de la misma hora, para ser más exactos) todos los días? Un día entramos un poco más tarde, otro llegamos más pronto pero paramos para servirnos un café, otro día madrugamos y somos el primero en llegar a la oficina… todo eso puede ocurrir en un margen de +/- 10 minutos, pero lo que es increíblemente improbable que ocurra, es que pese a esas particularidades de cada día, todos los días encendamos nuestro ordenador e iniciemos sesión en el sistema con esa puntería. Entonces, ¿de qué debemos sospechar más? La hora tardía puede señalar, simplemente, que un empleado se ha dormido y ha llegado un poco tarde. Sin embargo, la repetición de la hora, con ese grado de exactitud, puede apuntar a que hay un sistema que inicia sesión de manera automática, todos los días, y con las credenciales de uno de nuestros empleados.

Este ejemplo es, en realidad, particularmente sencillo, pero lo que debemos entender es que una solución de análisis de comportamiento de usuarios y entidades (UEBA) señalará anomalías, pero seremos nosotros los responsables de interpretar los datos y de llegar a conclusiones. Es, en este punto, dónde tendremos que basarnos en nuestros conocimientos, en la lógica y, claro, en la información de la que dispongamos, tanto de riesgos y tendencias en el campo de la seguridad, como específica de los activos que debemos proteger y del funcionamiento de nuestros sistemas y nuestra infraestructura.

Click para comentar

Lo más leído