Cargando



Qué es, cómo usar y diferencias entre Zmap y Nmap

Manual completo donde podremos ver cómo instalar, usar y técnicas con las dos herramientas de análisis de red reconocidas Zmap y Nmap.


dic 09 2016 13:48
Avanzado
Total de Apartados : 2

manual-zmap-y-nmap.png

 

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.

 

Qué es Zmap
Zmap es una herramienta de código abierto que nos permite realizar un escaneo a la red para determinar errores y posibles fallos lo cual es vital para el óptimo funcionamiento y estabilidad de la misma.

 

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.

 


 

Qué es Nmap
Nmap (Network Mapper) es una herramienta poderosa que nos brinda la posibilidad de auditar la seguridad de una red y descubrir equipos conectadas a la misma.

 

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 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).

 


 

Diferencias entre Zmap y Nmap
Existen algunas diferencias entre ambas herramientas, las cuales mencionamos a continuación:
  • 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

sudo-apt-install-zmap-1.png

 

Esperamos que todos los paquetes sean descargados e instalados para iniciar a usar Zmap en Ubuntu 16.

 

Usando Zmap en Ubuntu

Para iniciar a usar Zmap el primer comando que será de gran ayuda es:
zmap –help
El cual nos despliegan las siguientes opciones:

 

zmap-help-2.png

 

A continuación veremos algunas de las formas como podemos usar Zmap en Ubuntu.

Zmap -p
Con este parámetro podemos escanear en la red todos los equipos que están sobre el puerto TCP 80.

 

sudo-zmap-p-443-3.png

 

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)

zmap-p-txt-4.png

 

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 IP
En este caso vamos a escanear todos los equipos que usan el puerto TCP 80 en el rango de direcciones 192.168.1.1

 

zmap-p-csv-5.png

 

Una vez el proceso finalice veremos nuestro archivo en la carpeta Home de Ubuntu 16:

 

archivo-generado-zmap-csv-6.png

Sudo zmap -S
El 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 80
En 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

 

zmap-sudo-s-555-7.png

 

 

Parámetros extra a usar con Zmap
Existen otros parámetros que serán muy útiles a la hora de usar Zmap y desplegar mejores resultados, estos son:
-B
Este valor nos permite definir la velocidad en Bits por segundo que serán enviados por Zmap.

 

-e
Nos permite definir direcciones IP por permutación, esto es útil cuando usamos Zmap en diferentes consolas y con rangos de direcciones diferentes.

 

-r
Nos permite definir la tasa de envíos de paquetes que se realizaran cada segundo.

 

-T
Hace referencia al número de hilos concurrentes que usará Zmap para el envío de paquetes.

 

-s
Indica el puerto de origen de donde saldrán los paquetes a la dirección de destino.

 

-S
Indica la dirección IP de origen desde donde saldrán los paquetes para el escaneo.

 

-i
Hace referencia al nombre de la interfaz de red usada para el escaneo.

 

-M
Prueba los módulos que son implementados con Zmap.

 

-X
Envía paquetes IP (Útil para VPNs).

 

-G
Usando esta opción podemos especificar la dirección MAC del Gateway

 

-l
Nos permite ingresar entradas en el archivo generado.

 

-V
Despliega la versión de Zmap

 

 

Edición archivos de configuración Zmap

En Zmap existen dos archivos vitales para el funcionamiento y edición de los parámetros de Zmap.

 

Estos son:

/etc/zmap/zmap.conf
Este archivo nos permite configurar valores de la herramienta como puertos de escaneo, ancho de banda, etc.

 

zmap-conf-8.png

 

Para editarlo podemos usar el editor VI o Nano.

/etc/zmap/blacklist.conf
Este 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.

 

zmap-9.png

 

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

sudo-install-nmap-10.png

 

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

nmap-help-11.png

 

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

nmap-12.png

 

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:

 

nmap-14.png

 

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

nmap-15.png

 

Podemos ver un resumen de cuantos puertos están cerrados y cuantos abiertos en la dirección de destino.

 

Parámetros a usar con Nmap
Algunos de los parámetros que podemos implementar con Nmap y que serán de gran ayuda para la tarea de escaneo y supervisión son los siguientes:

 

-sT
Este parámetro hace un escaneo de los puertos TCP sin necesidad de ser usuario privilegiado.

 

-sS
Es un escaneo TCP SYN, es decir, realiza el escaneo sin dejar rastro en el sistema.

-sA
Este parámetro usa mensajes de ACK con el fin de que el sistema emita alguna respuesta y de esta manera descubrir que puertos están abiertos.

 

-sU
Este parámetro hace un escaneo de los puertos UDP.

-sN / -sX / -sF
Puede omitir Firewalls mal configurados y detectar los servicios que están corriendo en la red.

 

-sP
Este parámetro identifica los sistemas que están arriba en la red de destino.

 

-sO
Esta opción identifica los protocolos de nivel superior en la capa tres (Red).

-sV
Esta opción permite identificar qué servicios están abiertos por los puertos en el sistema de destino.

 

Adicional a estos parámetros podemos incluir los siguientes para que el proceso de escaneo sea eficaz:

 

-n
No realiza conversiones DNS

-b
Determina si el equipo de destino es vulnerable al “bounce attack”

-vv
Permite obtener información detallada en la consola.

-f
Habilita la fragmentación lo cual lo hace más difícil de ser detectado por un Firewall.

-oN
Nos permite generar un reporte.

-PO
Esta opción impide que se hagan pings al objetivo antes de iniciar el análisis.

 

Para este ejemplo hemos realizado la siguiente línea:

nmap -sS -P0 -sV -O nombrehost
Donde sustituimos nombrehost por el nombre de la web o dirección IP a analizar. El resultado obtenido será el siguiente:

 

nmap-16.png

 

Allí podemos ver que Nmap ha detectado el sistema operativo, los puertos abiertos y cerrados, etc.

 

 

Opciones adicionales a usar con Nmap

Existen algunas utilidades importantes que podemos usar con Nmap como:

 

Hacer ping a un rango de direcciones IP
Para esta tarea haremos un ping a las direcciones del rango 192.168.1.100 al 254, para ello ingresamos lo siguiente:
nmap -sP 192.168.1.100-254

nmap-sp 17.png

 

 

Obtener lista de servidores con puertos abiertos
Para obtener esta lista usaremos la siguiente sintaxis, tomando como ejemplo un rango de direcciones 192.168.1.* :
nmap -sT -p 80 -oG – 192.168.1.* | grep open

 

Crear señuelos en proceso de escaneo para evitar ser detectado
Esto es muy importante ya que si somos detectados se puede perder todo el proceso de escaneo peo también debemos ser responsables con el escaneo ya que recordemos no puede ser usados en redes prohibidas.

 

Para esto usaremos esta sintaxis como ejemplo:

sudo nmap -sS 192.168.0.10 -D 192.168.0.1

 

Escanear diversos puertos a la vez
Podemos escanear de forma simultanea diversos puertos en un equipo de destino, para este caso escanearemos los puertos 80, 21 y 24 de la dirección IP 192.168.1.1, el resultado es el siguiente:

 

nmap-p 18.png

 

Podemos ver que acción realiza el puerto en tiempo real.

 

Usar el análisis FIN
Este análisis envía un paquete al equipo de destino con un flag, o bandera FIN, con el fin de detectar el comportamiento del firewall antes de ejecutar un análisis profundo, para ello usamos el parámetro -sF.

 

Para este caso usaremos la siguiente línea:

sudo nmap -sF 192.168.1.1

nmap-sf 19.png

 

 

Verificar la versión del equipo de destino
Para esta información usaremos el parámetro -sV el cual nos devolverá la versión de software que está siendo ejecutada en ese momento en el equipo de destino.

 

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.

 


¿Te ayudó este Tutorial?


3 Comentarios

Cómo siempre, da gusto leer y aprender con vosotros, gracias por continuar creando tutoriales de este tipo. Saludos Solvetic.

A favoritos queda que me apetecia aprender a usar esto para comprobar puertos abiertos y cosas similares.

El primer manual que explica de forma coherente estos dos comandos. gracias.

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X