HackingLinux

Escaneando con Nmap (Nmap – parte2)

nmap6

Escaneando con Nmap (Nmap – parte2)

Obteniendo información con Nmap

 

La secuencia de comandos que vamos a utilizar, es más una recomendación que un estándar.

  • Lo primero  que haremos, es hacer un escaneo por defecto, que utilizará el top 1000 de los puertos de NMAP.
  • Después haremos el escaneo de los 65535 puertos.

La idea de hacer esto, es comparar el resultado de los puertos frecuentes y el resultado de todos los puertos, podríamos encontrar alguna diferencia que pueda servirnos después.

  • Una vez tengamos mapeados los puertos abiertos, vamos a listarlos, y utilizar otros argumentos de Nmap como (-sV), (-O), (-sC)
  • Ahora que tengamos las versiones, el sistema operativo, y la mayoría de características que podamos obtener algún puerto y el servicio que corre en él, podemos utilizar los scripts de Nmap.

El primer paso, sería realizar un escaneo por defecto, de la lista de los puertos más frecuentes de NMAP.


root@b4rt$ nmap -Pn -192.168.1.28 -vv --reason

-Pn: Cuando sabemos que el host está activo, para que Nmap no vuelva a comprobar eso.
-vv:  el nivel de verbosidad que tendrá la salida del comando. En este caso el nivel 2
–reason : Este flag nos mostrará información del tipo del porqué el puerto se encuentra en ese estado.

Los flags ‘-vv’ y ‘–reason’  nos ayudarán en algún momento, pues tal vez cierto tipo de escaneo resulte diferente, y tengamos que obtener más información.

-Como vemos en la imagen, el escaneo rápido de Nmap, nos miestra 3 puertos abiertos y uno filtrado.
-Con el Flag Reason, vemos que se realizó el escaneo sS, no se completó el saludo de 3 vias.

Ahora, el siguiente paso es realizar el escaneo a todos los puertos.


root@b4rt$ nmap 192.168.1.28 -T4 -p 1-65535 -vv --reason
El flag T, es muy importante, desde el T0,T1,T2,T3,T4,T5, tienen valores preconfigurados de timing,
Al final hay una tabla de esto…
 

– T4: Es el flag del control de tiempo de Nmap, por defecto se ejecuta T3, mientras mayor sea el número, la precisión será menor y el escaneo será más agresivo, para evadir algunos controles como IDS o IPS, es preferible usar un “T 1”, o “T 0”
–open: Nos mostrar’a todos los puertos abiertos, al buscar entre los 65535 vamos a requerir demasiado tiempo, este flag puede ayudarnos a reducir un poco el tiempo final.

 

En el resultado, podemos ver que a parte de los 3 puertos anteriores, se ha detectado uno nuevo (48500), abierto pero no se ha podido identificar el nombre del servicio. Imaginemos que el resultado de los 65535 nos hubiera tomado algunas horas, como primero realizamos el escaneo por defecto, tendríamos algo de información que podremos analizar mientras se escaneaba el host. Ahora, una vez que tengamos identificados los puertos abiertos, vamos a analizar los servicios y a tratar de descubrir que servicio corre sobre el puerto 48500.

root@b4rt$ nmap 192.168.1.28 -p 21,22,80,48500 -sV -O  -vv --reason
Ahora solo analizamos puertos específicos:
-p : puertos separados por comas
-sV :  Nmap va a hacer fingerprint a los puertos y tratar de obtener información como versiones y nombres.
-O : Se intentará identificar el sistema operativo y la versión, no es muy exacto, esto también sse puede obtener analizando algún servicio.

-Como vemos en el output, el fingerprint logró identificar el servicio que corría en el Puerto 48500, era postgresql.
– Se identificó que utilizabamos un Linux,
– El servicio de OpenSSH, nos ayudo a determinar que es un Debian.

Debemos tener en cuenta el “tiempo” al realizar el escaneo, combinar los parámetros correctamente.
Además podemos utilizar estos argumentos:
— host-timeout : Es el flag que indica cual será el tiempo máximo que le daremos a Nmap para que obtenga información del host, mientras menor sea el tiempo,  el escaneo será menos exacto.

–max-retries:  Este flag nos indica cuantas veces Nmap va a preguntar por un puerto determinado.

Algunos ejemplos:


root@b4rt$ nmap 192.168.1.28 --host-timeout 60m --max-retries 10 -vv --reason

root@b4rt$ nmap 192.168.1.28 -p 1-65535 --host-timeout 120m --max-retries 5 -vvv --reason

Utilizar muy bien los tiempo es vital pues tal vez por apresurarnos Nmap no trabaje correctamente, además no siempre vamos a darle -T5, un es escaneo- fácilmente detectable, y al ser muy rápido, tiende a fallar si la red no es la adecuada. En la página del autor se recomienda usar -T4. Al final, todo va a depender mucho de las circunstancias, aquí hay una tabla de los templates que maneja NMAP.

En el siguiente post veremos como utilizar los Scripts de Nmap para realizar algún tipo de ataque, pues cómo explicaba al inicio, Nmap no sólo sirve para obtener iformación…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *