<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Maestros del Web &#187; Camilo Ernesto Murcia.</title>
	<atom:link href="http://www.maestrosdelweb.com/author/camilo-ernesto/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.maestrosdelweb.com</link>
	<description>Un espacio para los entusiastas del web</description>
	<pubDate>Fri, 29 Aug 2008 20:34:37 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
			<item>
		<title>Introducción a Nmap</title>
		<link>http://www.maestrosdelweb.com/editorial/nmap/</link>
		<comments>http://www.maestrosdelweb.com/editorial/nmap/#comments</comments>
		<pubDate>Tue, 19 Aug 2003 00:00:00 +0000</pubDate>
		<dc:creator>Camilo Ernesto Murcia.</dc:creator>
		
		<category><![CDATA[Editorial]]></category>

		<category><![CDATA[Seguridad]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Nmap (&#8217;Network Mapper&#8217;), es una herramienta open source, diseñada para explorar y para realizar auditorias de seguridad en una red de computadoras.
A continuación se presentan ejemplos de
utilización de esta poderosa herramienta. 
  *Nota: esta herramienta puede
  ser utilizada para realizar auditorias de seguridad en una red, pero también
  puede ser utilizada para [...]]]></description>
			<content:encoded><![CDATA[<p><span class="intro">Nmap (&#8217;Network Mapper&#8217;), es una herramienta open source, diseñada para explorar y para realizar auditorias de seguridad en una red de computadoras.</span><span id="more-195"></span></p>
<p>A continuación se presentan ejemplos de<br />
utilización de esta poderosa herramienta. </p>
<p>  <strong>*Nota:</strong> esta herramienta puede<br />
  ser utilizada para realizar auditorias de seguridad en una red, pero también<br />
  puede ser utilizada para fines delictivos, ya que esta herramienta pone al descubierto,<br />
  puertos abiertos en las computadoras de una red, así como también es posible<br />
conocer como se encuentra organizada, y de cuantas computadoras consta una red. </p>
<p> Alguien dijo una vez, que la mejor forma de comprobar la seguridad de nuestra<br />
  red, es tratar de romper por nosotros mismos dicha<br />
seguridad. </p>
<p> Solo de esta forma podremos conocer y quitarnos falsas creencias de que nuestra<br />
red es lo suficiente segura. </p>
<p> Además, si Ud. cree que su red es insegura, no se preocupe, que si existe una<br />
forma fácil y rápida de protegerse: por favor desconecte el cable de red. </p>
<p> Pero esta vez conoceremos formas básicas y no tan básicas de realizar auditorias<br />
  en nuestra red de computadoras, para que no tenga que desconectar su cable de<br />
red <img src='http://www.maestrosdelweb.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> . </p>
<p> Nmap puede bajarse del sitio oficial en de esta dirección:</p>
<p>  <a<br />
                  href="http://www.insecure.org/nmap/">http://www.insecure.org/nmap/</a> </p>
<h4>Manos a la obra.</h4>
<p> La sintaxis básica de nmap es:</p>
<div class="codigo">
<pre>nmap [tipo de scan] [opciones] </pre>
</div>
<p> Por ejemplo si tenemos un host en nuestra<br />
  red, con direcci&oacute;n ip 192.168.0.1 y deseamos conocer que puertos tiene<br />
  abiertos, ejecutamos: </p>
<div class="codigo">
<pre># nmap 192.168.0.1</pre>
</div>
<p> <strong>Nmap</strong> nos mostrara en<br />
  pantalla algo como esto:</p>
<div class="codigo">
<pre>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 

Nmap run completed -- 1 IP address (1 host up) scanned in 0 seconds</pre>
</div>
<p> Este resultado puede variar, dependiendo<br />
  de las opciones que se le pasen a nmap o de la cantidad de puertos, que se encuentren<br />
  abiertos en el host, que esta siendo &quot;scaneado&quot;. </p>
<p> Si queremos, conocer que tipo de sistema operativo, esta corriendo el host al<br />
  que le realizamos el scaneo, sólo basta agregar el parámetro -O a el comando<br />
  nmap. </p>
<div class="codigo">
<pre># nmap -O 192.168.0.1</pre>
</div>
<p> nos mostrara un resultado como este:
</p>
<div class="codigo">
<pre>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 

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%DAT=E) Nmap run completed -- 1 IP address (1 host up) scanned in 12 seconds</pre>
</div>
<p> Este es el resultado que mostró el comando,<br />
  al realizar un scaneo a una pc con Linux, distribución SuSE Linux. </p>
<p> Pero que significan esas cadenas de caracteres en la salida de nmap ? </p>
<div class="codigo">
<pre>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)
...</pre>
</div>
<p> Pues, todo esto es la &quot;huella&quot; TCP/IP<br />
(TCP/IP fingerprint) que posee cada Sistema Operativo en particular. </p>
<p>  Nmap nos muestra esto cada vez que no logra identificar con exactitud que Sistema<br />
Operativo se esta corriendo en el Host destino. </p>
<p> Y como hace nmap, para reconocer el sistema operativo, que se esta ejecutando<br />
en el host destino?. </p>
<p>  Básicamente, cada sistema operativo, responde diferente, cuando se le envían<br />
  paquetes tcp específicos (en realidad no tan espec&iacute;ficos, mas bien incoherentes)<br />
  , así se logra determinar con una buena exactitud, que sistema operativo se<br />
esta ejecutando. </p>
<p> Al ejecutar nmap, contra un host con sistema operativo <a href="http://www.maestrosdelweb.com/principiantes/historia-de-windows/">Windows</a> XP, se produjo<br />
  este resultado: </p>
<div class="codigo">
<pre># 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

Nmap run completed -- 1 IP address (1 host up) scanned in 3 seconds </pre>
</div>
<p> Ahora bien si realmente es necesario<br />
  conocer que sistema operativo se esta corriendo en el host remoto, es mejor<br />
  utilizar otra herramienta, junto con nmap, como por ejemplo : <strong>QueSO</strong>. </p>
<p>  <strong>QueSO</strong>, es un detector de sistema<br />
  operativo remoto, <strong>QueSO</strong>, realiza<br />
una mejor verificación de Sistema Operativo. </p>
<p> Por algo Queso es utilizado en el proyecto Contador de Sistema Operativo en<br />
Internet, <a href="http://www.leb.net/hzo/ioscount/index.html">The Internet Operating System Counter.</a></p>
<p> Ahora, veremos un par de opciones más interesantes que posee nmap. </p>
<h3>Identificando los hosts activos, en nuestra red.</h3>
<p> Supongamos, que tenemos una red, 192.168.0.x, y deseamos conocer que hosts se<br />
  encuentran activos, fácilmente, lo podemos saber con nmap, esto lo podemos conocer<br />
  al realizar un ping scan. </p>
<div class="codigo">
<pre>#nmap -sP 192.168.0.1-255</pre>
</div>
<h3>Realizando Stealth<br />
  Scans.</h3>
<p>Con este tipo de scan, se pretende no ser detectado por software de detección<br />
  de scaneos, se envían paquetes a los hosts con ciertos &quot;flags&quot; TCP activados<br />
o desactivados para evitar ser detectados.</p>
<p> sN: Stealth, Null Scan, este tipo de scan pone en off todos los flags.</p>
<p> sF: Stealth FIN Scan, este tipo de scan usa paquetes con el flag FIN activado<br />
para las pruebas. </p>
<p> sX: Stealth Xmas Tree Scan, este tipo de scan env&iacute;a paquetes con los<br />
flag FIN, URG, y PUSH activados. </p>
<p> sp: Ping Scan, realiza un scan dentro de un rango especifico de hosts. Útil<br />
para conocer que hosts se encuentran en linea sin ser detectados. </p>
<p> Si deseamos hacer un stealth scan del tipo Xmas Tree, y ademas deseamos conocer<br />
    que sistema operativo esta corriendo el host de destino, ejecutamos:
    </p>
<p>#nmap -sX -O 192.168.1.2 </p>
<p>Despistalo con<br />
    un Decoy Scan:</p>
<p>-D: Esta opción se utiliza para tratar de engañar al host, al cual se esta &quot;scaneando&quot;,<br />
  que los scans se est&aacute;n generando desde otros hosts, que se especifican<br />
en la opción -D. </p>
<p> En el siguiente ejemplo, realizamos un Stealth Xmas Tree scan (-sX) hacia el<br />
  host 192.168.0.1, en los puertos 25(SMTP), 53(DNS), le indicamos a nmap que<br />
  no genere pings hacia el host, y tratamos de engañar al host (-D, Decoy), haci&eacute;ndole<br />
creer que los scans se est&aacute;n generando desde los hosts 1.2.3.4 y 5.6.7.8.
</p>
<div class="codigo">
<pre>#nmap -p 25,53 -sX -P0 -D 1.2.3.4,5.6.7.8
      192.168.0.1</pre>
</div>
<h3>Guardando los<br />
  resultados de tus scans.</h3>
<p>Nmap permite guardar los resultados de un scan, en varios tipos de formato de<br />
  archivo: Normal, XML, Grepable, All, y en formato &quot;S&quot; (s|&lt;ipT kiDd|3 f0rM<br />
  iNto THe fiL3 U sPecfy 4s an arGuMEnT!, o mejor conocido como formato Script<br />
Kiddie!). </p>
<p>Si deseamos hacer un stealth scan del tipo Xmas Tree, también deseamos conocer<br />
  que sistema operativo esta corriendo el host de destino, y adem&aacute;s deseamos<br />
guardar el resultado de este scan en un archivo llamado &quot;scanresult.txt&quot;, ejecutamos:
</p>
<div class="codigo">
<pre>#nmap -sX -O 192.168.1.2 -oN scanresult.txt
    </pre>
</div>
<p> Ahora si lo que deseamos es realizar<br />
  el scan anterior pero dentro de un rango de hosts específicos, digamos del host<br />
  192.168.1.1 hasta la ip 192.168.1.255 , y deseamos guardar el resultado del<br />
  scan en un archivo de texto normal entonces ejecutamos: </p>
<div class="codigo">
<pre>#nmap -sX -O 192.168.1.1-255 -oN scanresult.txt</pre>
</div>
<h3>Interfaces Gráficas para Nmap. </h3>
<p>Si no desean, utilizar la interfaz de comandos de nmap, f&aacute;cilmente pueden<br />
utilizar 2 de las interfaces gráficas mas conocidas, que existen para nmap. </p>
<p><a<br />
                  href="http://download.insecure.org/nmap/dist/nmap-frontend-3.00-1.i386.rpm">*nmapFE</a></p>
<p><a<br />
                  href="http://pages.infinit.net/rewind/">*KMAP</a></p>
<p> Espero que este articulo les resulte útil en sus auditorias de seguridad, ya<br />
    que solo conociendo las vulnerabilidades que existen en nuestras redes, sabremos<br />
que medidas tomar para protegernos mejor.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maestrosdelweb.com/editorial/nmap/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
