El tema de la seguridad siempre será un pilar muy importante dentro de una organización y en cada tarea que ejecutemos ya que de ella depende la disponibilidad e integridad de toda la información que manejemos y este bajo nuestra responsabilidad.
Existen muchas herramientas, protocolos y tareas que podemos aplicar dentro de nuestros roles para mejorar o implementar mejoras de seguridad en los entornos informáticos, pero hoy vamos a analizar en detalle dos herramientas que serán vitales para el escaneo y verificación de rangos de direcciones IP. De esta manera, podremos tener un control más específico sobre todo el enrutamiento de nuestra red.
Las dos herramientas que veremos son Zmap y Nmap, pero ¿para qué sirven y como serán de ayuda para nuestros roles?
Solvetic dará la respuesta a estas respuestas de manera sencilla y a la vez profunda.
Una de las grandes ventajas de Zmap es que el escáner lo puede realizar de forma rápida, menos de 5 minutos, lo cual incrementa notablemente los resultados que debemos entregar como administradores o personal de soporte.
Dentro de las ventajas de usar Zmap tenemos:
- Zmap puede monitorear la disponibilidad del servicio.
- Zmap es multiplataforma (Windows, Linux, Mac OS, etc) y totalmente gratuito.
- Podemos usar Zmap para analizar un protocolo en particular.
- Zmap nos brinda la posibilidad de comprender los sistemas distribuidos en internet.
Cuando ejecutamos Zmap estamos explorando de manera completa todo el rango de direcciones IPv4 por lo cual cuando ejecutamos la herramienta estamos analizando direcciones IPv4 privadas por lo cual debemos ser muy cuidadosos para no cometer actos en contra de la privacidad de una organización o persona.
Esta herramienta puede ser usada para pruebas de penetración, es decir, validar que nuestra red no este sensible a ataques por parte de hackers.
Con Nmap tenemos a mano una herramienta que nos brinda un escaneo rápido de grandes redes o de equipos individuales. Para su análisis, Nmap usa paquetes IP para determinar que equipos están disponibles en la red, que servicios ofrecen estos equipos, que sistema operativo está siendo usado actualmente y que tipo de Firewall esta implementado y a partir de allí hacer el análisis respectivo.
Dentro de las ventajas que tenemos al usar Nmap tenemos:
- Detección de equipos en tiempo real sobre la red.
- Detecta los puertos abiertos en dichos equipos así como el software y la versión de dichos puertos.
- Detecta las vulnerabilidades presentes.
- Detecta la dirección de red, el sistema operativo y la versión de software de cada equipo.
- Es una herramienta portable.
- Nmap es multiplataforma (Soporta Windows, FreeBSD, Mac OS, etc).
- Con Nmap no podemos escanear grandes redes, con Zmap si es posible.
- Zmap realiza el escaneo mucho más rápido que Nmap.
- Nmap puede ser usado en mogo grafico descargando la herramienta ZenMap.
- Con Nmap podemos analizar múltiples puertos mientras que con Zmap podemos analizar un solo puerto.
- La cobertura de Zmap es mucho mayor que Nmap.
- Nmap mantiene el estado para cada conexión mientras que Zmap no mantiene ningún estado en las conexiones lo cual incrementa su velocidad.
- Nmap detecta las conexiones perdidas y reenvía las peticiones, Zmap solamente envía un paquete de peticiones a un destino lo cual evita reprocesos.
- Nmap está diseñado para escáner pequeñas redes o equipos individuales mientras que Zmap está diseñado para escanear toda la red de internet en menos de 45 minutos.
Notamos que las diferencias entre una y otra herramienta son notables y depende de las necesidades que tengamos en el momento.
1. Cómo usar y analizar con Zmap
Para este análisis usaremos Ubuntu 16 como la plataforma para usar Zmap.
Para instalar Zmap usaremos el siguiente comando:
sudo apt install zmap
Esperamos que todos los paquetes sean descargados e instalados para iniciar a usar Zmap en Ubuntu 16.
Para iniciar a usar Zmap el primer comando que será de gran ayuda es:
zmap –helpEl cual nos despliegan las siguientes opciones:
A continuación veremos algunas de las formas como podemos usar Zmap en Ubuntu.
Zmap -pCon este parámetro podemos escanear en la red todos los equipos que están sobre el puerto TCP 80.
Adicional a este parámetro, contamos con la posibilidad de guardar el resultado en un archivo de texto, para ello usaremos la siguiente sintaxis.
sudo zmap -p (Puerto) -o (Nombre archivo)
Una vez procesado el análisis veremos los resultados en un archivo de texto para su respectiva edición. Podemos restringir la búsqueda a un rango de direcciones IP usando la siguiente sintaxis:
sudo zmap -p (Puerto) -o (Texto.csv) Rango direcciones IPEn este caso vamos a escanear todos los equipos que usan el puerto TCP 80 en el rango de direcciones 192.168.1.1
Una vez el proceso finalice veremos nuestro archivo en la carpeta Home de Ubuntu 16:
Sudo zmap -SEl parámetro -S hace referencia al recurso u origen del puerto. Por ejemplo podemos tener la siguiente sintaxis:
sudo zmap -s 555 -S 192.168.0.1 62.168.1.0/16 -p 80En este caso estamos indicando que el puerto de origen que enviará los paquetes será el 555 y la dirección de origen será 192.168.0.1
En Zmap existen dos archivos vitales para el funcionamiento y edición de los parámetros de Zmap.
Estos son:
/etc/zmap/zmap.confEste archivo nos permite configurar valores de la herramienta como puertos de escaneo, ancho de banda, etc.
Para editarlo podemos usar el editor VI o Nano.
/etc/zmap/blacklist.confEste archivo nos permite configurar la lista de rangos de direcciones IP bloqueadas para escaneo por razones de administración o privacidad.
De la misma forma podemos añadir un rango de direcciones si deseamos que no sean escaneadas por Zmap.
Como vemos Zmap nos ofrece una amplia gama de opciones para la gestión del proceso de escaneo de equipos y redes.
2. Cómo usar y analizar con Nmap
Para instalar Nmap, en este caso en Ubuntu 16, usaremos el siguiente comando:
sudo apt install nmap
Aceptamos para iniciar el proceso de descarga e instalación de los respectivos paquetes. Para consultar la ayuda de Nmap podemos usar el siguiente comando:
Nmap –help
Allí obtenemos acceso a todos los parámetros que pueden ser implementados usando Nmap.
Los parámetros básicos para iniciar el proceso de escaneo son los siguientes:
- -v: Esta opción incrementa el nivel de verbosidad (Detallado).
- -A: Habilita la detección del sistema operativo, escaneo de scripts y ruta de trazas.
Por ejemplo usaremos la siguiente sintaxis para Solvetic.com:
sudo nmap -v -A Solvetic.com
Podemos visualizar información tan importante como:
- Puertos TCP que han sido descubiertos en cada equipo de destino indicando su respectiva dirección IP
- Cantidad de puertos a analizar, por defecto 1000.
Podemos ver el avance del escaneo y una vez que completemos el proceso veremos lo siguiente:
Podemos ver un completo resumen de la tarea ejecutada. Si deseamos un escaneo más rápido basta con usar la siguiente sintaxis:
nmap Direcciòn_IP
Podemos ver un resumen de cuantos puertos están cerrados y cuantos abiertos en la dirección de destino.
Adicional a estos parámetros podemos incluir los siguientes para que el proceso de escaneo sea eficaz:
Para este ejemplo hemos realizado la siguiente línea:
nmap -sS -P0 -sV -O nombrehostDonde sustituimos nombrehost por el nombre de la web o dirección IP a analizar. El resultado obtenido será el siguiente:
Allí podemos ver que Nmap ha detectado el sistema operativo, los puertos abiertos y cerrados, etc.
Existen algunas utilidades importantes que podemos usar con Nmap como:
nmap -sT -p 80 -oG – 192.168.1.* | grep open
Para esto usaremos esta sintaxis como ejemplo:
sudo nmap -sS 192.168.0.10 -D 192.168.0.1
Hemos comprobado cómo estas dos herramientas serán de gran ayuda para toda la tarea de escaneo y análisis del proceso de comunicación con los equipos de destino. Los análisis de auditoria son siempre necesarios, da igual el sistema, siendo Windows, Windows Server, Linux, Mac etc. seguiremos aumentando esta información.