Cuando escuchamos hablar de reconocimiento de redes usualmente se hace referencia a esa temprana etapa en un ataque en que un cibercriminal comienza una comunicación con los equipos de la red para recolectar información sobre ellos y develar las vulnerabilidades del sistema.
La otra cara de esta historia es la utilización de estas técnicas en manos de profesionales de la seguridad informática dentro de un proceso de pentesting de redes para hallar puntos débiles en el sistema y solucionar las fallas antes de que caigan en manos de atacantes, creando una asociación entre el reconocimiento y la defensa de nuestros activos informáticos.
Realizando frecuentes exploraciones masivas de red
Cuando un ataque de reconocimiento proviene de redes exteriores al propio entorno corporativo, la detección y mitigación se vuelve un proceso centrado en la configuración de sistemas IPS y firewalls. Por el contrario, cuando este se origina en un equipo infectado dentro del perímetro de la red, la detección se torna un poco más complicada. La habilidad para detectar este tipo de tráfico constituye un punto de inflexión en sistemas de seguridad y se basa en la previa comprensión del tráfico que se genera dentro del perímetro. Comprensión que en parte puede formarse con la previa realización de reconocimientos internos.
Con esto en mente, la visibilidad del tráfico en los terminales de trabajo es de suma importancia para identificar este tipo de comportamiento: el sistema de seguridad podrá entonces reportar información que normalmente no está disponible en partes centrales del diseño de red.
El reconocimiento de redes es una potente herramienta para la administración y el mantenimiento de estas. Entre otras cosas, nos permite analizar el comportamiento de la red, identificar configuraciones extrañas en los equipos que en ella se encuentran y evaluar posibles vulnerabilidades en los sistemas organizacionales.
Más aun, el reconocimiento de la propia red brinda soporte a dos etapas esenciales en toda evaluación de riesgo. Una de ellas es la identificación de los recursos disponibles en la organización, los que pueden llegar a discrepar de aquellos presentados en el diseño original debido a una mala documentación de los cambios en la red.
Sobre la lista de recursos luego se deberá evaluar cuáles se corresponden a funcionalidad vital para la continuidad del negocio, determinando el nivel de seguridad que se espera de ellos. Algunos recursos pueden llevar datos sensibles de la compañía mientras que otros aplican controles de acceso y por tanto plantean diferentes escenarios de compromiso.
Lo que nos conduce a la siguiente etapa: la identificación de las amenazas. La materialización de cualquier riesgo en contingencia podría desencadenar en pérdida o robo de datos e interrupción del servicio con enormes pérdidas monetarias.
Herramientas flexibles para exploraciones rápidas
En este contexto surge IVRE: una herramienta que brinda soporte a procesos de reconocimiento. Su nombre proviene del francés Instrument de Veille sur les Réseaux Extérieurs, o «intrumento de vigilancia en redes exteriores», en español. Como su nombre lo anticipa, esta aplicación fue pensada para redes externas, pero bien puede ser utilizada dentro de los límites de la propia red.
IVRE se construye sobre otras aplicaciones de análisis de paquetes. Entre ellas, p0f, Bro, Nmap, Zmap, Tesseract y MongoDB. Con base en los escaneos de puertos realizados por Nmap o los eventos capturados por Bro cuando este se implementa como sistema IDS, IVRE construye una base de datos histórica que luego puede ser sondeada a través de numerosos filtros.
Además de gráficos sobre la distribución de direcciones IP, podemos utilizar bases de datos de locaciones geográficas para observar la ubicación estimada del dispositivo. GeoLite proporciona binarios gratuitos que nos permiten realizar este tipo de comparaciones, generando un mapa planisferio para obtener una vista mucho más gráfica.
La principal ventaja de este tipo de aplicaciones reside en la capacidad de analizar de manera rápida e intuitiva grandes cantidades de datos para perfilar fácilmente el tráfico de red, pudiendo enlazar diferentes dispositivos de maneras tal vez desconocidas por los administradores de red y ofreciendo una interfaz de usuario versátil para otras herramientas de escaneos masivos de redes.
Utilizando IVRE para el análisis de malware
Dejando atrás el reconocimiento activo o pasivo de redes con fines defensivos o de pentesting, esta herramienta nos permite analizar capturas previas de tráfico simplemente utilizando Bro o p0f de manera conjunta con los scripts de reconocimiento pasivo proporcionados. Podemos pasar como parámetro el archivo de captura en particular, o bien utilizar aplicativos como tcpreplay para reproducir estos paquetes nuevamente en las interfaces de red monitoreadas.
IVRE incorpora scripts en Python capaces de sondear la base de datos de manera sencilla y rápida. Con esto podemos acceder a las mismas prestaciones de filtrado y análisis de paquetes aplicados al descubrimiento de equipos involucrados en canales C&C y mecanismos de infección.
Para conocer más sobre esta herramienta puedes dirigirte a la documentación del autor.
Créditos imagen: © Norlando Pobre/Flickr