Attack detection Flashcards
Como funciona un IDS
Los IDSs asumen que la actividad legítima y las intrusiones son distintas siempre, por lo que esto causa a veces que un usuario normal pueda ser detectado como intruso.
Cómo funciona un IDS:
-Se auditean los datos. -Los datos pasan al sensor. -El sensor se encarga de traducir los datos para poder pasarlos al motor de decisión y del filtrado de cosas útiles y no. El sensor es muy importante saber donde ponerlo -El motor de tráfico decide con el knowledge sí detectar o no detectar un ataque. -Si detecta un ataque, el sistema de respuesta hace una respuesta. Ej: logging o una alerta.
IDS que los diferencia
Tipos de IDS:
-Dividimos por ámbito:
+host: El input de datos de este son actividades del host. Ej: Logs de aplicaciones , syscalls…
+red: El input de datos de esto son de red. Ej:Paquetes de red …
-Manera de obtener los datos del IDS:
+Centralizada, todos los datos vienen del mismo punto
+Distribuido, diferentes puntos de obtención de datos.
-Tipo de respuesta:
+Deteccion = Se avisa
+`Prevencion= Se intenta bloquear
Signature detection explicar
Signature-based detection:
El knowledge está basado en unos patrones ya conocidos de antes llamados “signatures”.
-Ej:
-El IDS audita el input data en busca de estas firmas. Si una firma es encontrada el evento se flagea como una intrusión.
-La performance del IDS está directamente relacionada a la cantidad y calidad de este set de firmas, conocidas como “signature databases”.
-Los IDS de firmas son los más utilizados.
-Pros:
+Muy bajo número de falsas alarmas. Si se detecta una firma probablemente sea un ataque.
+Es muy fácil de interpretar, ya que esto sale de una firma asignada a un evento de seguridad concreto que es conocido ya.
-Cons:
+No se pueden detectar ataques de día cero, ya que no existe firma de estos por su novedad.
+Muy caras las DB de firmas completas y recientes.
ADS tipos:
Rule-based:
Un operador define reglas a mano. El problema es que es muy difícil definir las reglas a mano en un modelo de funcionamiento de red.
EJ:
Machine Learning-based:
La actividad previa es modelada usando ML.
-Supervisado: \+Basado en algoritmos de clasificacion: SVM, RandomForest … \+Una clase: OK/NOK \+Multiclase: OK/Attack1/Attack2/Attack3… \+Pros: >Funciona bien detectando ataques previos \+Cons: >Es dificil etiquetar los datos >Es imposible contemplar todos los tipos de ataques >No es bueno detectando algo no detectado antes -No supervisado: \+Basdo en: Clustering, reducción de dimensionalidad… \+Pros: >No es necesario etiquetar los datos >Agrupa lo normal y detecta los outliers que serían las anomalías \+Cons: >Cuando una anomalía se detecta es difícil saber qué o por qué está pasando
Los ADS funcionan mejor en sistemas estáticos / deterministas como sistemas de control industrial IoT…
Pros:
-Son capaces de detectar ataques desconocidos en base de la desviación del funcionamiento normal.
Cons:
-Extraer features de datos crudos es complicado (paquetes, logs …)
-Podemos detectar un síntoma de un ataque pero no su causa
-Más falsos positivos que un IDS de firmas
Como evaluar IDS
Cómo evaluar un IDS:
rollo clasificacion, TPR FPR, FNR… (matriz de confusión)
ROC …
Otras metricas:
-Escalabilidad
-Habilidad de procesamiento de data de entrada
-Velocidad de procesamiento
-Overhead
Honeypots:
Que es, tipos…
Honeypots:
Sistemas falsos que aparentan ser sistemas reales para que atacantes potenciales intentan atacarlos. En teoría no debería haber nunca interacción con ellos a menos que montemos un multi honeypots (honeynet).
Diferentes objetivos:
-Producción: Detectar ataques
-Investigación: Aquellos cuyo objetivo es ver que nuevos ataques se están dando en el mundo. Las firmas se consiguen a base de honeypots de investigación de internet.
Diferentes tipos de interacción:
-Alta:Imitan los sistemas de producción en sistemas más complejos. Este intenta recopilar la manera de actuar para conseguir información.
+Honey SSH server: Deja a los atacantes entrar, responde al atacante y loguea los comandos para intentar obtener más información.
-Baja: Funciones simples y consumen pocos recursos y no responden a las peticiones de los atacantes.
+Honey SSH server: Abre puerto y servicio, nadie puede entrar al servicio pero los intentos son registrados.
Honeynet: una network de honeypots para simular sistemas. Suelen interactuar entre hosts para simular una red real.
Los Honeypots también pueden ser peligrosos porque suelen correr software vulnerable.
-Pueden tener más de las vulnerabilidades que se piensa y poder aumentar la superficie de ataque.
-Pueden hackear el honeypot y hackear a la empresa
-Hay que tener los honeypots aislados de la network y muy controlados.
Es muy importante configurar los honeypots ya que si no están correctamente securizados pueden ser contraproducentes (p.e. si nos descargamos un honeypot, cambiar la id para que no sea fácilmente reconocible por el atacante).
SNMP
Simple Network Monitoring Protocol (SNMP)
Protocolo estándar para la recoleccion y gestion de informacion de dispositivos en la red
Se aplica en el OSI 7
UDP 161 en general y 162 en trampas (CON TLS 10161/10162)
Actores:
-Managed device: El dispositivo monitorizado
-SNMP Agent: Software que corre en el managed service que permite recibir SNMP queries.
-Network Management Station (NMS): El master que hace queries a los agentes para recibir info.
Dos tipos de información y su principal uso:
-Pull: NMS pregunta por información a los agentes (Lo más común)
-Push: El agente envia infor al NMS sin query previa. AKA SNMP traps.
(Esto serían alertas realmente que son eventos que ocurren cuando se sobrepasa algún límite como la CPU)
MIB
Management Information Bases (MIBs)
-Son arboles jerarquícos que definen las entidades de una red.
-Usan OID como estandar de nombres. EJ:
Es bidireccional, podemos modificas variables de estas colecciones pero de manera limitada.
Problemas:
-De seguridad general
-Diferentes versiones de SNMP incompatibles, a veces las compañías hacen downgrade a la más básica para no tener problemas.
Remote Network Monitoring RMON:
Remote Network Monitoring RMON:
MIBs estandares que extienden SNMP para monitorizar LANes.
-Estadisticas
-Generar alarmas
-Filtrar paquetes previos a captura
Tiene como objetivo reemplazar los MIBs específicos de los proveedores por un MIB estándar, que se consulta a través de SNMP
V1 OSI 1,2 = Bytes enviado al host …
V2 (RMON2) OSI 3+ = IP/MAC …
Netflow
Netflow
Tecnologia creada por Cisco para recoger data del trafico de red IP. Es un protocolo y un setup de monitorizacion.
Actores:
-NetFlow exporter: El dispositivo que recoge trafico de red que luego envia como paquetes NetFlow
-NetFlow collector: El que recibe los paquetes netflow de los exporters y los guarda y preprocesa. UDP 2055 el mas comun para esto.
-NetFlow Analyzer:La aplicacion que busca en los datos para hacer queries o visualizarlos.
Una netflow tiene que tener lo siguiente:
-Input interface
-Source IP addres y puerto tcp/udp si es aplicable
-Destination IP address y tcp/udp (si aplicable, tipo de icmp y codigo de este si es)
-Protocolo IP y tipo de servicio
Versiones mas relevantes:
V5: La mas conocida, esta disponible para diferentes vendors. SOLO IPV4 flows
V9: Esta basada en templates y es mas flexible permites mas cosas. NonIPv4 por ejemplo
IP Flow Information Export (IPFIX)
IP Flow Information Export (IPFIX)
Es un formato para exportar NetFlows
Esta basado en Netflows V9
Diferencias sobre V9:
-Es un estándar
-Te da la opción de añadir data no contemplada en V9
-IPFIX collectors escuchan al puerto UDP 4379
Sampled Flow (sFlow)
Sampled Flow (sFlow)
Un estándar de industria para exportar paquetes de layer 2+ de OSI
-Similar a NetFlow/IPFIX en cuanto a como está montado (arquitectura)
-sFlow no tiene nociones de flows, este exporta paquetes truncados
+Le saca los primeros 128 bytes y los envia al collector. (OSI 2-7)
-Tiene sampling (1 paquete por cada 100)
+Menos overhead
-Esta implementado en un circuito especifico integrado (ASIC)
+Es mas optimo porque esta en otro circuito que el trafico de red.
Host monitoring: tipos:
Host monitoring:
Monitorizar el host de manera centralizada
Dos aproximaciones:
-Mirar la availability de los servicios: Icinga
-Monitorización del OS interno: osquery
Icinga:
Icinga:
Mira si el servicio esta activo(servicios de red, impresoras …) y como de bien lo esta haciendo (latencias y tal)
-Los checks se pueden hacer de mnanera pull o push o instalando un agente en el host
-Esta centrado en availability services.
El admin puede poner alarmas de eventos no deseados rollo mucha latencia en X o asi.
Tiene una pagina web para ver la monitorización visualmente
Osquery:
Osquery:
Es un frameworkde seguridad que usa comandos sql para hacer querys a hosts.
Puede hacer query a linux mac windows FreeBSD 😎🎉😎🎉😎🎉
Las tablas estan en una pagina web
Aparte de instalarlo localmente se puede gestionar remotamente.
Security Information and Event Management (SIEM)
Security Information and Event Management (SIEM)
Sistema muy usado para procesar las alertas de los firewalls IDS…
Proceso:
Gestión de la Información
+Recopilación y almacenamiento de registros (logs), así como su generación de reportes (a través de paneles de control).
Gestión de eventos
+Monitorear y correlacionar los eventos recopilados, y notificar si se considera necesario.
+Se pueden crear reglas personalizadas para las notificaciones.
El SIEM lo puede llevar una empresa de terceros
Puede funcionar como un simple ADS para detectar eventos de seguridad que las contramedidas individuales fallan en detectar.
Ejemplos siem: Alienvault OSSIM, ELK stack, Splunk, ArcSight…
Generalmente el SIEM es el centro de los Security Operations Center.