Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Nmap (Network Mapper), es una herramienta open source, diseada para explorar y para realizar auditorias de seguridad en una red de computadoras. A continuacin se presentan ejemplos de utilizacin de esta poderosa herramienta. *Nota: esta herramienta puede ser utilizada para realizar auditorias de seguridad en una red, pero tambin puede ser utilizada para fines delictivos, ya que esta herramienta pone al descubierto, puertos abiertos en las computadoras de una red, as como tambin es posible conocer como se encuentra organizada, y de cuantas computadoras consta una red. Alguien dijo una vez, que la mejor forma de comprobar la seguridad de nuestra red, es tratar de romper por nosotros mismos dicha seguridad. Solo de esta forma podremos conocer y quitarnos falsas creencias de que nuestra red es lo suficiente segura. Adems, si Ud. cree que su red es insegura, no se preocupe, que si existe una forma fcil y rpida de protegerse: por favor desconecte el cable de red. Pero esta vez conoceremos formas bsicas y no tan bsicas de realizar auditorias en nuestra red de computadoras, para que no tenga que desconectar su cable de red . Nmap puede bajarse del sitio oficial en de esta direccin: <a href="http://www.insecure.org/nmap/">http://www.insecure.org/nmap/</a
MANOS A LA OBRA.
La sintaxis bsica de nmap es:
Por ejemplo si tenemos un host en nuestra red, con direccin ip 192.168.0.1 y deseamos conocer que puertos tiene abiertos, ejecutamos:
# nmap 192.168.0.1
Starting nmap V. 2.54BETA30 ( www.insecure.org/nmap/ ) Interesting ports on localhost (192.168.0.1): (The 1545 ports scanned but not shown below are in state: closed) Port State Service 22/tcp open ssh 25/tcp open smtp 111/tcp open sunrpc 6000/tcp open X11
Este resultado puede variar, dependiendo de las opciones que se le pasen a nmap o de la cantidad de puertos, que se encuentren abiertos en el host, que esta siendo "scaneado". Si queremos, conocer que tipo de sistema operativo, esta corriendo el host al que le realizamos el scaneo, slo basta agregar el parmetro -O a el comando nmap.
# nmap -O 192.168.0.1
(The 1545 ports scanned but not shown below are in state: closed)
Port State Service 22/tcp open ssh 25/tcp open smtp 111/tcp open sunrpc 6000/tcp open X11
No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
TCP/IP fingerprint: SInfo(V=2.54BETA30%P=i386-suse-linux%D=7/20%Time=3D39A479%O=22%C=1) TSeq(Class=RI%gcd=1%SI=1B445E%IPID=Z%TS=100HZ) TSeq(Class=RI%gcd=1%SI=2E12CD%IPID=Z) T1(Resp=Y%DF=Y%W=7FFF%ACK=S++%Flags=AS%Ops=MNNTNW) T1(Resp=Y%DF=Y%W=7FFF%ACK=O%Flags=AS%Ops=MNNTNW) T2(Resp=N) T3(Resp=Y%DF=Y%W=7FFF%ACK=S++%Flags=AS%Ops=MNNTNW) T3(Resp=Y%DF=Y%W=7FFF%ACK=O%Flags=AS%Ops=MNNTNW) T4(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=) T5(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=) T6(Resp=Y%DF=Y%W=0%ACK=O%Flags=R%Ops=)
T7(Resp=Y%DF=Y%W=0%ACK=S++%Flags=AR%Ops=) PU(Resp=Y%DF=N%TOS=C0%IPLEN=164%RIPTL=148%RID=E%RIPCK=E%UCK=E%ULEN=134%DA T=E) Nmap run completed -- 1 IP address (1 host up) scanned in 12 seconds
Este es el resultado que mostr el comando, al realizar un scaneo a una pc con Linux, distribucin SuSE Linux. Pero que significan esas cadenas de caracteres en la salida de nmap ?
Pues, todo esto es la "huella" TCP/IP (TCP/IP fingerprint) que posee cada Sistema Operativo en particular. Nmap nos muestra esto cada vez que no logra identificar con exactitud que Sistema Operativo se esta corriendo en el Host destino. Y como hace nmap, para reconocer el sistema operativo, que se esta ejecutando en el host destino?. Bsicamente, cada sistema operativo, responde diferente, cuando se le envan paquetes tcp especficos (en realidad no tan especficos, mas bien incoherentes) , as se logra determinar con una buena exactitud, que sistema operativo se esta ejecutando. Al ejecutar nmap, contra un host con sistema operativo Windows XP, se produjo este resultado:
# nmap -O 192.168.0.1
Starting nmap V. 2.54BETA30 ( www.insecure.org/nmap/ ) Interesting ports on (192.168.0.2): (The 1544 ports scanned but not shown below are in state: closed) Port State Service 135/tcp open loc-srv 139/tcp open netbios-ssn 445/tcp open microsoft-ds 1025/tcp open listen 5000/tcp open fics
Remote OS guesses: Windows Me or Windows 2000 RC1 through final release, Windows Millenium Edition v4.90.3000
Ahora bien si realmente es necesario conocer que sistema operativo se esta corriendo en el host remoto, es mejor utilizar otra herramienta, junto con nmap, como por ejemplo : QueSO. QueSO, es un detector de sistema operativo remoto, QueSO, realiza una mejor verificacin de Sistema Operativo. Por algo Queso es utilizado en el proyecto Contador de Sistema Operativo en Internet, The Internet Operating System Counter. Ahora, veremos un par de opciones ms interesantes que posee nmap.
Supongamos, que tenemos una red, 192.168.0.x, y deseamos conocer que hosts se encuentran activos, fcilmente, lo podemos saber con nmap, esto lo podemos conocer al realizar un ping scan.
Nmap permite guardar los resultados de un scan, en varios tipos de formato de archivo: Normal, XML, Grepable, All, y en formato "S" (s|<ipT kiDd|3 f0rM iNto THe fiL3 U sPecfy 4s an arGuMEnT!, o mejor conocido como formato Script Kiddie!). Si deseamos hacer un stealth scan del tipo Xmas Tree, tambin deseamos conocer que sistema operativo esta corriendo el host de destino, y adems deseamos guardar el resultado de este scan en un archivo llamado "scanresult.txt", ejecutamos:
Ahora si lo que deseamos es realizar el scan anterior pero dentro de un rango de hosts especficos, digamos del host 192.168.1.1 hasta la ip 192.168.1.255 , y deseamos guardar el resultado del scan en un archivo de texto normal entonces ejecutamos: