español – UNAM-Chapter – The honeynet Project https://blog.honeynet.org.mx Thu, 03 Sep 2015 14:51:22 +0000 en-US hourly 1 97611161 PNAF 0.1.2 howto básico https://blog.honeynet.org.mx/pnaf-0-1-2-howto-basico/ Mon, 03 Aug 2015 23:07:43 +0000 http://blog.honeynet.org.mx/?p=154 Este artículo tiene como objetivo presentar una prueba de concepto de Passive Network Audit Framework (PNAF), implementación de un framework basado en PNA (Passive Network Audit) el cual puede ser utilizado como herramienta de análisis pasivo de tráfico de red, aprovechando ventajas de otras herramientas. El alcance de este artículo incluye la instalación, configuración y modelos de ejecución para extracción de datos e interpretación de información. Para una mejor referencia del modelo teórico, puede consultarse el artículo “Frameworks para monitoreo, forense y auditoría de tráfico de red” del número 24 de la revista .Seguridad y la fuente original[2] de dicho framework.

Explore this article

El contenido de este artículo será publicado en el número 25 de la revista .Seguridad del UNAM-CERT.

 


CONTENIDO


 

MODELO GENERAL DE PNAF

El modelo general de PNAF (Figura 1), define el funcionamiento y flujo de datos a través del cual PNAF decodifica, filtra e interpreta información a partir del tráfico de red.

fig01_pnaf_modelo

Figura 1. Modelo de análisis de Passive Network Audit Framework (PNAF)

MODOS DE INSTALACIÓN

PNAF incluye una serie de herramientas[3] para captura y análisis de tráfico de red. Debido a sus características y capacidades, algunas de estas herramientas por sí mismas pueden involucrar complejos procesos de instalación y configuración. Por esta razón, PNAF está diseñado para proveer modos de instalación que faciliten y automaticen el proceso de manera que el analista pueda hacer uso del framework sin mayor problema. Existen cuatro modos de instalación los cuales se explican a continuación.

Instalación mediante Instalador

PNAF incluye un instalador que automatiza la descarga, compilación y configuración de todas las herramientas. Este instalador incluye un Wizard (asistente de instalación) basado en dialog. Para poder utilizar este modo de instalación es necesario cumplir los siguientes requerimientos:

  • Sistema Debian GNU/Linuxx o superior o Gentoo stage 3.x.
  • Conexión a internet durante la instalación (El instalador descarga e instala algunas dependencias via Apt o Emerge), así como algunos módulos de Perl via CPAN.

Es posible su funcionamiento en Ubuntu u otra distribución basada en Debian, sin embargo implica verificar las equivalencias en paquetes instalados por Apt. Asimismo, es posible usar el instalador en otros sistemas no basados en Debian siempre y cuando se instalen manualmente todas las dependencias necesarias para la compilación de las herramientas. Para esto se puede consultar el archivo README e instalar las dependencias equivalentes de la lista de Apt/emerge.

Debido a que PNAF instala una gran cantidad de dependencias, se recomienda instalar el framework en un ambiente chroot para evitar cualquier problema de compatibilidad de dependencias en el sistema nativo. En esta prueba de concepto se hará de esa manera y el proceso se explica a continuación.

Asumiendo que se cuenta con un sistema Debian 8 de 64 bits (amd64):

  1. Creación del ambiente chroot (via debootstrap)

 # aptitude install debootstrap
 # debootstrap --arch amd64 jessie chroot_pnaf http://ftp.mx.debian.org/debian
 # mount -t sysfs sysfs   chroot_pnaf/sys
 # mount -t proc proc     chroot_pnaf/proc
 # mount -o bind /dev     chroot_pnaf/dev
 # mount -o bind /dev/pts chroot_pnaf/dev/pts

Ahora se cambia al ambiente chroot

 # chroot chroot_pnaf
 # cd ~
  1. Descarga de PNAF

Opción 1: Desde el repositorio oficial del proyecto

# aptitude install git
# git clone https://dev.honeynet.org.mx/traffic-analysis/pnaf.git

 

Opción 2: Desde el mirror en github

# git clone https://github.com/jusafing/pnaf

Una vez descargado, ingresar al directorio y ejecutar el instalador

# cd pnaf
# ./install.sh

Esto ejecutará el asistente. Primero se deberá confirmar que se desea instalar PNAF. Posteriormente se pueden seleccionar las herramientas que se incluirán en el framework. A pesar de que no todas las herramientas se utilizan en esta versión de PNAF (v0.1.2), se recomienda seleccionar todas para utilizarlas de manera independiente. Visto de este modo, PNAF es también un asistente para la instalación de herramientas de análisis de tráfico de red.

fig02_pnaf_installer2

Figura 2. Selección de herramientas en la instalación de PNAF

Si es la primera vez que se instala PNAF se debe seleccionar una instalación limpia “clean installation”. En caso de que exista una instalación previa, la instalación limpia eliminará cualquier herramienta y archivos instalados por PNAF. Si solo se desea agregar o reinstalar ciertas herramientas, se debe seleccionar “NO” en este paso.

fig03_pnaf_installer3

Figura 3. Selección del tipo de instalación

A partir de ese momento el instalador comenzará a compilar y configurar todas las herramientas. Este proceso puede durar aproximadamente 30 minutos dependiendo de las capacidades del equipo. En caso de que exista un error en el proceso de instalación, el instalador mostrará el mensaje correspondiente y se pueden verificar los archivos install.log e install.log.exec para identificar el problema. De lo contrario, si el proceso terminó correctamente, PNAF ha quedado instalado y listo para usarse.

Como recomendación, para actualizar las variables de ambiente hay que salir del ambiente chroot y volver a entrar. Asimismo, para identificar cuando se esté dentro del directorio de chroot, es conveniente agregar una etiqueta al shell :

# echo 'PS1="(PNAF) $PS1"' >> ~/.bashrc
# exit
# chroot chroot_pnaf

Para verificar que PNAF se ha instalado correctamente:

# pnaf_auditor --help

fig04_pnaf_installer4

Figura 4. Opciones de ejecución de PNAF

 

Instalación mediante Debian chroot pre-configurado

El segundo modo de instalación corresponde al uso de un directorio chroot con todas las herramientas pre-compiladas y pre-configuradas. Esta alternativa básicamente evita todo el proceso de compilación y creación del directorio raíz con debootstrap presentada en el modo anterior. Por otro lado, facilita tener una plantilla con un directorio preparado para usar con chroot. Usando este modo solo es necesario descargar el archivo empaquetado .tar.bz2 (aproximadamente 1.3Gb) y desempaquetarlo en el sistema de archivos local.

Es importante mencionar que este modo funciona solo si el sistema local en el que se planea instalar es Debian 8 amd64 (la compilación de todas las herramientas depende de la arquitectura y de las versiones de las dependencias usadas por Apt).

 # wget http://pnaf.honeynet.org.mx/download/chroot_pnaf.tar.bz2
 # tar -jxvf chroot_pnaf.tar.bz2
 # mount -t sysfs sysfs   chroot_pnaf/sys
 # mount -t proc proc     chroot_pnaf/proc
 # mount -o bind /dev     chroot_pnaf/dev
 # mount -o bind /dev/pts chroot_pnaf/dev/pts
 # chroot chroot_pnaf

Igualmente se puede verificar que PNAF se ha instalado correctamente:

# pnaf_auditor –help

 

Instalación (uso) mediante una máquina virtual

En este modo de instalación es necesario descargar una imagen de máquina virtual en formato OVA para ser importando con VirtualBox o Vmware.

  1. Descargar la imagen en http://pnaf.honeynet.org.mx/download/pnaf-0.1.2.ova
  2. En virtual Box:

En el menú  File/Import appliance/ seleccionar el archivo OVA y crear la máquina virtual

Esta máquina virtual tiene instalado PNAF con todas las opciones mostradas en el instalador. Las credenciales de acceso para el usuario root se muestran en el mensaje de bienvenida una vez que se inicia la máquina virtual.

fig05_pnaf_vm

Figura 5. Máquina virtual pre-configurada con PNAF

Una vez dentro de la máquina virtual se debe ingresar nuevamente al directorio con chroot.

 # mount -t sysfs sysfs   chroot_pnaf/sys
 # mount -t proc proc     chroot_pnaf/proc
 # mount -o bind /dev     chroot_pnaf/dev
 # mount -o bind /dev/pts chroot_pnaf/dev/pts
 # chroot /root/chroot_pnaf

Instalación mediante módulo de Perl (Instalación independiente)

Esta opción incluye la instalación del core (núcleo) de PNAF, es decir, instalación independiente del módulo de Perl. Este modo se puede utilizar cuando se desee usar PNAF con una instalación propia de las herramientas. Sin embargo, no es recomendable ya que se necesitan configurar una gran cantidad de opciones incluyendo la ruta de los archivos binarios de cada una de las herramientas, archivos de configuración, logs, etc. Para esto, una vez descargado PNAF, editar la configuración de cada una de las herramientas:

# cd pnaf
# vim build/pnaf/Pnaf/lib/Pnaf/Core.pm (establecer rutas)
# cd build/pnaf/Pnaf
# perl Makefile.PL
# make
# make test
# make install

CONFIGURACIÓN

La mayoría de las opciones de configuración se definen directamente como argumentos al momento de la ejecución del auditor de PNAF (pnaf_auditor).

Para visualizar las herramientas incluidas en el framework se puede ejecutar

# pnaf_auditor –-version

Para mayor información sobre las opciones disponibles en PNAF 0.1.2

# pnaf_auditor –-help

En caso de necesitar una configuración específica, por ejemplo agregar firmas del IDS Suricata, se pueden modificar los archivos de configuración dentro del directorio /pnaf/etc

 


POC: ANALISIS DE CAPTURAS DE TRÁFICO DE RED

A continuación se analizarán tres archivos de captura en formato PCAP. La flexibilidad de las herramientas usadas por PNAF permite extraer e interpretar la información de maneras diferentes. El análisis en esta prueba de concepto no representa la totalidad de información que se puede obtener. Así, la PoC incluye un análisis general los archivos de captura de manera que se obtenga la siguiente información y cuyo propósito se explica en la siguiente tabla:

 

Información a identificar Propósito
Identificación de activos Identificación de los equipos que participan en el tráfico de red incluyendo estadísticas de uso por tipo de conexión, protocolos, tasas de transferencia, etc.
Posible eventos de seguridad (alertas de IDS) Identificación de posibles actividades anómalas o maliciosas a partir de un motor IDS
Recursos que se acceden Identificación de recursos como URLs, dominios, archivos transferidos
Auditoría de software usado en la organización Identificación pasiva del software utilizado en la red tanto por clientes como por servidores. A partir de esta información se lleva a cabo la identificación de potenciales vulnerabilidades basadas en CVE.

 

Ejecución inicial

Procesamiento general:

Teniendo el archivo de captura test1.cap, se ejecuta pnaf_auditor de la siguiente manera:

# pnaf_auditor –-cap test1.cap –log_dir /pnaf/www/test1

Esto ejecutará una serie de herramientas y procesará la información almacenando los resultados en el directorio /pnaf/www/test1

fig06_poc_pnaf1

Figura 6. Ejecución de PNAF

Procesamiento específico

Ahora, asumiendo que se desea obtener un filtrado específico se puede ejecutar pnaf_auditor con las siguientes opciones

# pnaf_auditor –-cap test2.cap –log_dir /pnaf/www/test2 --home_net 192.168.1.0/24 –-payload

En esta ejecución se indica que se analizará el archivo de captura test2.cap y que la red de la organización “home_net” es el segmento 192.168.1.0/24. (Se pueden indicar más segmentos en formato CIDR[4] separados por comas). Asimismo, se indica que se desea extraer el payload en caso de identificar una alerta de IDS (útil para análisis a fondo y verificación de falsos positivos).

 

Análisis e interpretación de la información

La interpretación de la información se puede llevar a cabo en distintas etapas.

1.      Logs de línea de comandos

El log generado durante la ejecución muestra el resumen de los resultados. Esta fase es importante porque se obtiene información sobre las herramientas utilizadas, asi como del panorama general de los datos obtenidos. La siguiente figura muestra la explicación del log generado por PNAF.

fig07_poc_pnaf2

Figura 7. Log de ejecución y resultados generales de PNAF

2.      Logs en interfaz web

PNAF permite una visualización de los resultados a través de una interfaz web básica. Esta interfaz permite listar:

  • Archivos de log “crudos” generados por cada una de las herramientas
  • Archivos de log pre-procesados en formato JSON[5]
  • Archivos de log con resultados de auditoría en formato JSON y visualizados en forma de árbol

Para poder utilizar la interfaz web es necesario activar el servidor web apache incluido en PNAF.

# apachectl start

Usando la configuración default, todos los directorios de resultados que se almacenen en /pnaf/www e indicados en la opción –log_dir, podrán ser visualizados en web, usando http://localhost o la dirección IP específica donde se ejecute PNAF.

fig08_pnaf_web1

Figura 8. Visualización web básica de PNAF

Dentro de este directorio se tiene la siguiente estructura y se muestra un ejemplo en la Figura 9:

tabla02


fig09_pnaf_web3

Figura 9. Archivos generados para la visualización web de PNAF

El análisis en esta PoC va de lo general a lo particular. Primeramente se puede dar un vistazo general en el contenido del archivo json/summary/dataset.html. Aquí, el analista puede acceder a la información clasificada de las herramientas. Cada herramienta contiene dos categorías principales, Summary (resumen de los datos) y Tracking (información por activos -IPs, servers, etc-). Según la necesidad del analista y los hallazgos encontrados, se pueden extraer datos a profundidad por cada herramienta y filtrar la información mediante el cuadro de búsqueda en cada árbol de herramienta.

 

fig10_pnaf_web4

Figura 10. Conjunto de datos (datasets) de las herramientas usadas en PNAF

Continuando con el análisis, ahora se visualiza el filtrado y pre-procesamiento de datos generados por PNAF, el cual lleva a cabo una correlación básica y conjunta la información creando diferentes categorías. Para ello se accede al archivo /json/summary/auditSummary.html y es aquí donde el analista puede extraer información detallada de la actividad de cada uno de los activos que intervienen en el tráfico de red. Por ejemplo, se puede obtener información sobre URL, certificados SSL, alertas IDS, archivos transferidos, Software utilizado, etc. De la misma manera, si la auditoría se prefiere hacer tomando como clasificación general a los activos, entonces se puede visualizar el archivo /json/summary/auditTracking.html

fig11_pnaf_web5

Figura 11. Resumen de auditoría. Clasificación general

fig12_pnaf_web6

Figura 12. Resumen de auditoría. Clasificación por activos

Finalmente, el archivo /json/summary/auditOutput.html muestra el resultado del análisis de vulnerabilidades basadas en CVE[6] y versiones de software encontradas. Este análisis incluye un sistema de puntaje (score) que indica el posible impacto de las vulnerabilidades identificadas. Asimismo, se muestra la lista de equipos identificados en listas negras de dominios o IP o cuya interacción estuvo involucrada con equipos de la red.

fig13_pnaf_web7

Figura 13. Resumen de auditoría. Análisis de vulnerabilidad de software basado en CVE

Conjuntando toda la información recopilada y filtrada tanto por PNAF como por el mismo analista, es posible determinar el estado general y características de la red. La información detallada dependerá del tipo de problema o necesidad que desea resolver.

Finalmente, es importante hacer énfasis en el hecho de que PNAF es susceptible a falsos positivos debido a la naturaleza misma de PNA, en donde, al no contar con la información completa y obtener datos a partir de una interpretación del tráfico de red, cierta información podría representar hechos erróneos. Así, una de las tareas del analista implica la identificación y verificación de información certera.

Actualmente PNAF se encuentra en desarrollo en la versión 0.2. Futuras versiones incluirán cambios significativos en la interfaz web y estabilidad del framework. Para actualizaciones consultar las páginas del proyecto.

 


 

Referencias

[1] Frameworks para monitoreo, forense y auditoría de tráfico de red I. Revista .Seguridad número 24.

[2] Passive Network Audit Framework, Master thesis. Santillan, Javier. Eindhoven University of Technology. The Netherlands. 2014

[3]Tabla 1. “Herramientas de análisis de tráfico de red” del artículo anterior

[4] https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing

[5] https://en.wikipedia.org/wiki/JSON

[6] https://cve.mitre.org/

]]>
154
Frameworks de monitoreo de tráfico de red https://blog.honeynet.org.mx/frameworks-de-monitoreo/ Sun, 02 Aug 2015 20:58:56 +0000 http://blog.honeynet.org.mx/?p=140 Este post corresponde a un artículo publicado en el número 24 de la revista .Seguridad


 

Actualmente existen diversas técnicas y tecnologías para el monitoreo del tráfico de red. Las redes de datos manejan información con protocolos y aplicaciones cada vez más complejas. Esto, combinado con la gran cantidad de información que se transfiere y la migración paulatina a modelos de comunicación codificados o cifrados, ha hecho también del monitoreo una tarea cada vez más compleja.

En los últimos años se han desarrollado tecnologías de análisis de datos como los SIEM (Security Information and Event Management), SIM (Security Information Management), SEM (Security Event Management), NSM (Network Security Monitoring), PNA (Passive Network Audit), etcétera. Estas tecnologías han ido madurando a través de la adición de nuevos modelos de análisis de información e incluso de nuevos mecanismos de detección e identificación de patrones, usando el aprendizaje de máquina o machine learning. En este contexto, existen también diversas técnicas y herramientas que pueden ayudar a los administradores a desarrollar o elegir un modelo de monitoreo, detección y auditoría que mejore el nivel de seguridad de sus organizaciones.

Frameworks de monitoreo

Ciertas técnicas podrían ser más efectivas, dependiendo del contexto del monitoreo y tomando en cuenta sus características, ventajas y enfoque. La Figura 1 presenta un panorama general sobre la relación entre los modelos de monitoreo y detección que se abordan en este artículo y que proveen lineamientos para desarrollar o implementar frameworks usando diversas tecnologías.

context
Figura 1. Panorama general de los modelos de monitoreo y análisis (Santillan, 2014)

Network Security Monitoring (NSM)

Es un modelo de análisis de tráfico de red que proporciona lineamientos para desarrollar un framework que incluya técnicas y herramientas para monitoreo, detección y retención de evidencia sobre incidentes de seguridad. Este modelo está basado en el análisis de datos generados por herramientas de seguridad como los IDS (Intrusion Detection Systems), analizadores de flujos, entre otros. NSM hace énfasis en las técnicas a seguir para poder alcanzar una mejor detección, es decir, no solamente describe qué herramientas pueden ser utilizadas, también cómo, cuándo y dónde utilizarlas dentro del contexto de la red, así como las consideraciones de implementación, zonas y puntos de monitoreo. Una de las herramientas más conocidas y utilizadas en este tipo de framework es Sguil[1], un front-end para el análisis de datos extraídos del IDS Snort[2] y el analizador de flujos Argus[3], entre otras herramientas.

network_ir_process
Figura 2. Proceso de atención de incidentes de red (Network Incident Response Process)[4]

Dentro del proceso de atención a incidentes de red (Network Incident Response Process) mostrado en la Figura 2, NSM está involucrado en la fase de Detección (Detect), específicamente en dos de sus procesos: Contención Pronta del Incidente (Short Term Incident Containment), donde se tiene información sobre el incidente detectado; y en Emergencia (Emergency), donde se identifica y provee evidencia del incidente. Asimismo, NSM describe el llamado Modelo de Referencia de Intrusiones (Reference Intrusion Model)[5] el cual define cuatro tipos de datos:

  • Datos de contenido completo: captura bit-a-bit.
  • Datos de sesión: Distribución de protocolos y acumulación de tráfico.
  • Datos estadísticos: Registro de conversaciones entre dispositivos.
  • Datos de alerta: Información extraída de IDS.

En relación a NSM y la detección de intrusos, algunos debates[6] mencionan que los desarrolladores de IDS buscan una “detección inmaculada”, es decir, detección precisa; mientras que los practicantes de NSM buscan una “colección de datos inmaculada”, es decir, captura de evidencia tanto como sea posible.

Security Information and Event Management (SIEM)

La minería de datos es un proceso de extracción de modelos descriptivos a partir de grandes cantidades de datos, mediante el uso de modelos de análisis estadísticos, machine learning, entre otros. En el contexto de la seguridad en TI, la minería de datos se aplica en los llamados SIEM (Security Information and Event Management) para la identificación de patrones con propósitos de detección, auditoría e interpretación de información. Las fuentes de datos a analizar pueden ser herramientas como IPS (Intrusion Prevention Systems o Sistemas de Prevención de Intrusiones), IDS, firewalls, routers, bitácoras de sistemas, etcétera. Como se muestra en la Figura 3, a partir de estos datos se lleva a cabo una correlación (correlation) con el objetivo de filtrar información (reduction) para identificación e interpretación de eventos específicos relacionados, por ejemplo, con incidentes de seguridad.

Los SIEM combinan características de los SIM (Security Information Manager) y de los SEM (Security Event Manager), cuyos enfoques en términos generales son el análisis en tiempo real (SIM) y almacenamiento a largo plazo de registros de eventos (SEM).

Log-Management-Diagram
Figura 3. Modelo general de los SIEM [7]

Entre las características principales que los SIEM proporcionan están:

  • Acumulación de datos (data aggregation): Datos de diferentes fuentes alimentan un motor de análisis centralizado.
  • Correlación: Identifican relaciones y se crean interpretaciones significativas.
  • Alertas.
  • Cumplimiento: Identificar si ciertas políticas se cumplen.
  • Retención: Almacenamiento de datos históricos.
  • Análisis forense: Creación de líneas de tiempo para reconstrucción de eventos.
  • Inteligencia: Descripción del contexto de seguridad para efectos de toma de decisiones.

Actualmente existen herramientas SIEM open source tales como OSSIM de Alien Vault[8]. También existen opciones comerciales que integran algunas características adicionales, sin embargo el fundamento base es proveer características de un SIEM. Algunas de ellas son Alien Vault USM[9], Tenable SIEM [10], Splunk[11], entre otros.

Auditoría Pasiva de Tráfico de Red

De manera similar a los SIEM, la Auditoría Pasiva de Tráfico de Red (Passive Network Audit) involucra el análisis de bitácoras y correlación de datos, sin embargo, lo que define a PNA como un modelo de análisis independiente a los SIEM es el uso de tráfico de red como su fuente principal y única para la obtención de información y generación de reportes. A su vez, PNA implica solamente la utilización de herramientas pasivas para la extracción de información, es decir, ninguna acción llevada a cabo durante el proceso de análisis altera o interviene en la operación de la red que se analiza.

Mientras los SIEM se basan en acumulación de datos (data aggregation) de diversas fuentes como firewalls, bitácoras de sistemas, IDS, IPS, routers, etcétera, PNA se enfoca al tráfico de red como fuente de información. Como se aprecia en la Figura 4, la acumulación de datos (“Multiple data aggregation”) se hace de manera interna, ya que involucra un proceso adicional que es el procesamiento y decodificación previa de datos (“Pre-processing & decoding”) para generación de “bitácoras” o datos que normalmente serían la fuente de información inicial para un SIEM, sin embargo, en este caso son obtenidos sólo a partir del tráfico de red y son en realidad una “aproximación” a bitácoras reales. Esto quiere decir que en realidad dicha extracción implica una interpretación y en ciertos casos una extrapolación de información a partir de datos que representen una “firma” sobre determinada actividad o sistema (por ejemplo, el tráfico de headers HTTP puede contener datos para generar información similar que normalmente se obtendría a partir de una bitácora de un servidor web como Apache, etcétera). Así, a partir de este preprocesamiento es posible entonces identificar y decodificar protocolos, versiones de software, dominios, alertas de IDS, flujos, etcétera que comúnmente serían tomados de bitácoras de sistemas u otros dispositivos, con la ventaja de que todo el proceso se desarrolla de manera pasiva y únicamente a partir de tráfico de red.

pna_arch
Figura 4. Diagrama de auditoría pasiva de tráfico de red

PNA también se conoce como Identificación Pasiva de Red (Passive Network Discovery) y algunas fuentes[12] la describen como una tecnología para responder a las preguntas ¿Quién y qué hay en la red de la organización? y ¿Qué se está haciendo en la red de la organización?, mediante identificación de utilización de la red, análisis forense de eventos, identificación de vulnerabilidades y perfiles de activos (equipos, servidores, entre otros).

Una desventaja de PNA es que el análisis puede ser limitado y no muy preciso debido a que el tráfico de red puede no contener datos suficientes para identificar y generar información confiable sobre la seguridad y el estado de la red.

Prototipo de Auditoría Pasiva: PNAF

A continuación se presenta una introducción al prototipo de un framework de PNA llamado Passive Network Audit Framework (PNAF) (Santillan, 2014). Este framework define un modelo de análisis (Figura 5) para auditoría de tráfico de red a través de la utilización de diversas herramientas las cuales se conjuntan en una implementación de software libre. En este artículo se presenta una breve introducción sobre las características del framework, sin embargo en el próximo número se presentará una prueba de concepto con detalles sobre instalación, configuración y análisis de una muestra de tráfico de red.

Las principales características de PNAF son:

  • Diseño modular con tres principales fases: (1) captura/lectura de tráfico, (2) procesamiento y (3) visualización (Figura 5).
  • Provee un resumen del nivel de seguridad de la red basado en análisis de activos identificados en el tráfico de red.
  • Identificación de actividades anómalas.
  • Auditoría de políticas de seguridad.
  • Análisis de impacto de vulnerabilidades basado en CVE (Common Vulnerabilities and Exposures) de NVD (National Vulnerability Database)[13].
  • Recopilación de evidencia.
pnaf_modelo
Figura 5. Modelo de análisis de Passive Network Audit Framework (PNAF)

La siguiente tabla presenta un panorama general de algunas de las herramientas que pueden ser utilizadas dentro de PNAF. Cada una de ellas tiene un propósito específico de modo que la información se correlaciona para la identificación de activos y la determinación del contexto de la red.

Herramienta
Propósito
Datos generados
Observaciones
Enumeración e identificación de activos (Profiling and Enumeration)
P0f
Enumeración de red y servicios.
Tipos de conexión (Capa 1), versiones de software y plataformas, roles de equipos.
Detección mediante múltiples métodos: firmas y comportamiento.
Snort Open AppId
Identificación de aplicaciones.
Tipos de aplicaciones usadas en la red.
Identificación mediante análisis de protocolos y no mediante número de puerto.
Prads
Enumeración de red y servicios.
Tipos de conexión (Capa 1), VLAN, versiones de software y plataformas.
Detección mediante múltiples métodos.
Motores de detección de intrusos (IDS Engines)
Suricata
Motor IDS, decodificador de capa de aplicación, captura en tiempo real.
Alertas basadas en firmas, datos de HTTP, TLS, DNS, SSH, extracción de archivos transferidos.
Detección flexible por firmas (signatures), parsers de capa de aplicación y captura de alto rendimiento.
Snort IDS
Motor IDS.
Alertas basadas en firmas.
Detección flexible por firmas (signatures).
Bro IDS
Motor IDS, decodificador de protocolos y verificador de políticas.
Alertas de IDS, datos decodificados de capa de aplicación como HTTP, TLS, DNS, SSH.
Conjunto de parsers de capa de aplicación.
Análisis de flujos de tráfico de red (Network Flow Analysis)
Cxtracker
Análisis de flujos.
Estadísticas de tráfico de red.
Análisis de gran cantidad de tráfico.
Argus
Análisis de flujos.
Estadísticas de flujos de tráfico de red, protocolos y decodificación de paquetes.
Método eficiente para análisis de grandes cantidades de tráfico.
Silk
Análisis de flujos.
Estadísticas de tráfico de red.
Análisis de gran cantidad de tráfico.
Tcpflow
Reensamblado de sesiones TCP y decodificación HTTP.
Datos HTTP.
Análisis de payloads.
Tcpdstat
Identificación de protocolos.
Estadísticas de protocolos.
Clasificación por capas de protocolos.
Inspección profunda de paquetes (Deep Packet Inspection)
Chaosreader
Decodificación de capa de aplicación.
Datos HTTP, DNS, FTP, SMTP.
Análisis de payloads.
PassiveDNS
Análisis pasivo de DNS.
Estadísticas de DNS.
Identificación de malware basado en DNS (como Fastflux).
Tcpxtract
Extracción de archivos transferidos.
Lista de archivos transferidos.
Útil para identificación de malware y violación de políticas.
TcpExtract
Extracción de archivos transferidos.
Lista de archivos transferidos.
Basado en Python.
Httpry
Decodificación de protocolo HTTP.
Datos de HTTP y payloads.
Análisis a fondo de HTTP.
Xplico
Extracción de datos de capa de aplicación.
Datos HTTP, archivos, información de protocolos.
Tiene su propia interfaz web.
Nftracker
Extracción de archivos transferidos.
Lista de archivos transferidos.
Útil para identificación de malware y violación de políticas.
Ssldump
Extracción de información de protocolos SSLv3/SSL.
Información de certificados.
Útil en análisis de cadenas de confianza (basadas en PKI) mediante certificados.
Tabla 1. Herramientas de análisis de tráfico de red

PNAF puede ser utilizado sobre entornos GNU/Linux y su utilización es mediante la línea de comandos (CLI, Command Line Interface). El framework se alimenta de tráfico de red, el cual es analizado usando las herramientas mencionadas en la tabla anterior de modo que el administrador puede visualizar un resumen de una auditoría básica de tráfico de red.

pnafhelp
Figura 6. Opciones de ejecución en PNAF

Para mayor información y actualizaciones de PNAF se pueden consultar los siguientes sitios web.

Referencias

  • Passive Network Audit Framework, Master thesis. Santillan, Javier. Eindhoven University of Technology. The Netherlands, 2014.
  • The Tao of network security monitoring: beyond intrusion detection. Richard Bejtlich. Pearson Education, 2004.
  • The Practice of Network Security Monitoring: Understanding Incident Detection and Response. Richard Bejtlich No Starch Press, 2013.
  • Demystifying the myth of passive network discovery and monitoring systems. Ofir Arkin. InsightiX McAfee, 2012.

[4] Richard Bejtlich. The Tao of network security monitoring: beyond intrusion detection. Pearson Education, 2004.

[5] Richard Bejtlich. The Practice of Network Security Monitoring: Understanding Incident Detection and Response. No Starch Press, 2013.

[12] Ofir Arkin. Demystifying the myth of passive network discovery and monitoring systems. http://www.mcafee.com/us/resources/white-papers/wp-demystifying-passive-network-discovery.pdf

]]>
140