Seguimos con Security Onion y Sguil. Vimos en la primera parte su instalación, configuración y reseña de uso.
En esta ocasión vamos a analizar una alerta usando algunas de las herramientas / técnicas de que dispoonemos en Sguil.
Analizando una alerta en Sguil.
Como todos los días repasamos las alertas recibidas. Se desecha algún falso positivo, etc y me centro en un par de alertas en concreto:
Se trata de dos alertas:
- ET SCAN Sipvicious Scan
- ET SCAN Spvicious User-Agent Detected…
Es la primera vez que veo esta alerta pero me imagino a que se debe (Sipvicious).
¿ Es la única o hay más ?
En la columna Event Message nos situamos en el evento y botón derecho ratón Quick Query Event:
Pues hay más y desde 3 IPs diferentes.
Escogemos una IP para ver si solo se trata de este evento o es responsable de alguno más. Lo hacemos en la columna Src IP y Quick Query > Query Event Table > Query Src IP:
El resultado es que esrespnable de dos eventos / alertas:
- ET SCAN Sipvicious Scan
- ET SCAN Spvicious User-Agent Detected…
Bien, vamos a ver que regla a disparado la alerta y algo del información del paquete capturado. como tengo marcado Show Packet Data y Show Rule:
Vemos claramente el origendel scan, que se trata de un datagrama UDP y en el campo de datos vemos OPTIONS sip. Ya lo tenemos mucho más claro.
Se trata de un scan en el que se envía una petición OPTIONS genérica a la IP de destino. La petición OPTIONS tiene como objetivo la solicitud de información de capacidades de un determinado servidor como métodos soportados, tipos de contenidos, extensiones, los codecs, etc.
Lo normal es que antes el atacante hubiese realizado un scan de descubrimiento de servicios (tipo nmap ) y luego el SIP scan. Con lo que se supone, puede ser un scan aleatorio a múltiples objetivos.
SIPVicious svmap.py.
La alerta nos avisa de SIPvicious. Indagando un poco veo que se trata de un set de herramientas basadas en Python para auditoría VOiP. En este caso no se trata precisamente de una auditoría.
Dentro de este set de herramientas hay una en concreto: svmap.py. Esta herramienta escanea una o un rango de direcciones IP en busca de dispositivos / servidores SIP. La secuencia de comandos usada por el atacante podría ser algo así como:
- python svmap.py -p5060 xxx.xxx.xxx.xxx/24 -m OPTIONS -v
En este caso no hubo respuesta.
Sguil y Wireshark.
volvemos a Sguil par analizar algo más en profundidad el datagrama capturado por Snort / Sguil. Para ello, nos situamos en la columna Alert ID > Wireshark y se abre Wireshark con el datagrama indicado:
Efectivamente, comprobamos que se trata de una sesión de iniciación con un Request y método OPTIONS.
¿ Qué es lo que vemos aquí ?… y recordando lo visto en otro artículo al respecto (Wireshark. Captura conversaciones VoIP. Protocolo SIP, SDP y RTP. Extracción de audio.):
Tenemos el Request-Line o tipo de mensaje. Tipo de mensaje OPTIONS. Mensaje SIP dirigido a 100@xxx.xxx.xxx.xxx. Vemos también la versión SIP que es SIP/2.0. El puerto de destino es 5060 y origen 5096.
Ahora tenemos el Message Header o cabecera que contiene:
- Via. Campo que usado para el registro de ruta. De esta forma la respuesta seguirá el mismo camino que el Request o petición OPTIONS. Contiene también en trasporte usado (SIP/UDP) y el branch o identificación de la transacción.
- From. Cliente que realiza la llamada o petición (sipvicious).
- To. Cliente al que se realiza la petición.
- Call-ID. Identificador únicio de la sesión. Identifica a los mensajes que corresponden a la misma llamada.
- C-Seq. Número de secuencia.
- Contact. URI SIP Contact address. Contiene la IP y puerto donde el que realiza la petición OPTIONS espera recibir resupesta.
Aunque el sensor los tenemosen eth0 IP local, y el destino es otra IP local, dentro del datagrma podemos ver la IP pública destino del scan SIPvicious y la IP del atacante que ya está identificada.
Relacionado:
IDS / IPS Suricata. Instalación, configuración y puesta en marcha.
La pimera parte de este artículo:
Snort. Security Onion Live. SGUIL, Squert y Suricata. Todo en uno. Parte I
===
Hasta aquí por hoy. Hasta la próxima-