Escanear puertos con Nmap

Publicado el 1 de Febrero ,2008 por ekhtor

Después de una semanita sin escribir debido a los exámenes de la facultad, regreso con ganas a la web. Espero que no me hayáis echado mucho de menos xD.

Empezaré con un pequeño tutorial acerca del escáner de puertos nmap.

Si ya vimos como hacerlo con netcat en posts anteriores, ahora desempeñaremos la misma función con nmap pero de una forma más ‘profesional’, ya que netcat una vez encontrado el puerto abierto se conectaba a él, y esto puede suponer un problema porque esa conexión queda registrada en los log’s del sistema.

Lo primero que necesitamos son los paquetes:

sudo apt-get install nmap

Para instalar el Front-end lo hacemos con el siguiente paquete:

sudo apt-get install nmapfe

Ahora podremos abrirlo desde Aplicaciones>>Internet>>NmapFE y nos mostrará una pantalla como esta:

nmap.jpg

Como todo el mundo a estas alturas ya sabe manejar un front-end ya que solo hay que hacer click en las opciones que nos interesan, me centraré en el uso mediante consola, puesto que se puede dar el caso en el que el usuario no disponga de él.

Para empezar haremos un escaneo básico:

nmap 127.0.0.0

Donde 127.0.0.0 será la ip a escanear. Esto nos devolverá algo asi:

Starting Nmap 4.20 ( http://insecure.org ) at 2008-02-01 20:50 CET

Interesting ports on localhost (127.0.0.1):

Not shown: 1691 closed ports

PORT     STATE SERVICE

22/tcp   open  ssh

111/tcp  open  rpcbind

139/tcp  open  netbios-ssn

445/tcp  open  microsoft-ds

631/tcp  open  ipp

2049/tcp open  nfsNmap finished: 1 IP address (1 host up) scanned in 0.242 seconds

Aquí se puede ver perfectamente los puertos abiertos y los servicios a los que pertenece cada puerto.

En el caso de que sólo quisiéramos escanear un rango de puertos sólo añadimos la opción ‘-p’ junto con el rango:

nmap -p 1-100 172.0.0.0

Si lo que buscamos es escanear un rango de ip’s ponemos un guión después del comienzo de la ip y seguido la ip final:

nmap 172.26.0.1-10

Además podemos combinar las opciones anteriores en el caso de querer escanear un rango de puertos dentro de un rango de ip’s.

Si nos suge el problema de que no podemos hacer el escaner mediante ping, podremos evitarlo gracias a la opción ‘-p0′ y si lo que buscamos es lo contrario, osea, hacer escaner únicamente mediante ping usaremos ‘-sP’.

Otra opción muy imporante sería poder saber además del servicio al que pertenecen los puertos abiertos,  cual es la versión para poder aprovechar una vulneravilidad específica. Esto lo hacemos con ‘-sV’:

ekhtor@servidor:~$ nmap -sV localhost
Starting Nmap 4.20 ( http://insecure.org ) at 2008-02-01 20:59 CET
Interesting ports on localhost (127.0.0.1):
Not shown: 1691 closed ports
PORT     STATE SERVICE     VERSION
22/tcp   open  ssh         OpenSSH 4.6p1 Debian 5build1 (protocol 2.0)
111/tcp  open  rpcbind      2 (rpc #100000)
139/tcp  open  netbios-ssn Samba smbd 3.X (workgroup: MSHOME)
445/tcp  open  netbios-ssn Samba smbd 3.X (workgroup: MSHOME)
631/tcp  open  ipp         CUPS 1.2
2049/tcp open  nfs          2-4 (rpc #100003)
Service Info: OS: Linux

Si lo comparamos con el escaneado simple salta a la vista la diferencia.

Por último, otra opción que me parece importante citar es ‘-O’, que nos muestra el sistema operativo usado. Es lo que todo el mundo conoce como un ‘finger’, pero actualmente los sistemas no proporcionan información tan fácil como hace unos años.

Para concluir, sólo me queda decir que todos estos comandos pueden ser introducidos en el front-end con iguales resultados, además hay muchas otras opciones interesantes que podéis consultar en la ayuda del programa.

Entradas Relaccionadas

Publica un comentario

Comenta