jueves, 31 de enero de 2013

Destripando las Redes TCP #2

Introduccion a la Introduccion

Bueno habiendo superado un poco lo que ya habiamos hecho en la parte uno de esta serie, nos quedamos jugando un poco con el netcat(la navaja suiza de las redes), e hicimos una prueba con el servidor de Google, que no revelo ningun dato significativo, pero el intento se hizo.

Esta vez antes de seguir jugando con el netcat vamos a adentrarnos con unos conceptitos de redes en general y luego hablaremos mas sobre TCP, nuestro mas preciado juguete.

Introduccion

Vamos a hablar un poco mas de los protocolos y vamos a iniciar con una analogia

Analogia 1:
Imaginemos que la computadora es un alien que tiene varios bocas, y por cada boca diferente habla un idioma diferente y tiene la increible capacidad de estar hablando con por la misma boca con varias personas, siempre y cuando hablen el mismo idioma.

Tambien es posible estar hablando por todas las diferentes bocas, con varias personas, siempre y cuando se este respetando el idioma correspondiente a cada boca.*

Asi funciona la computadora solo que las bocas se llaman puertos, y los diferentes idiomas se llaman protocolos.

Existe una lista de los diferentes protocolos y su puerto correspondiente, de forma estandarizada, dado que la lista es muy larga, no la publicare, mas bien tampoco mencionare donde encontrarla, asi vamos a iniciar a ser un poco autodidactas investigando.

Solo dare unos Ejemeplos :

Protocolo    Puerto    Explicacion
SMTP           25        para transferencia de mails
FTP               21        para transferencia de archivos
HTTP            80        para transfercia de paginas web

y si investigamos obtendremos muchos mas puertos con mas protocolos.

Vamos a dejar bien claro los puertos y los protocolos en este post para que apartir del siguiente post nos enfoquemos a un protocolo, despues de que empezemos a entender a TCP.

Tecnicas a Implementar

Apartir de este momento, tal vez muchos tengan en mente empezar a darles uso a los programas y eso vamos a inicar a hacer, porque no hay nada como una buena practicar para hechar a andar una buena teoria.

Escaneo de Puertos
Esl escaneo de puertos es una tecnica talvez ilegal en algunos paises, pero son solo pocos paises y pues no vamos a hacer nada peligros, el escaneo de puertos consiste en identificar que puertos tiene abiertos un servidor.

NMAP nos permitira saber que puertos tiene abierto un servidor.

Para ello vamos a implementar la herramienta NMAP, cuyo link publique en la entrada anterior (un aplauso para quienes se adelantaron y ya lo descargaron).


Puertos Abiertos y Cerrados

Los puertos en una computadora son similares a puertas, existen 65536 puertos para TCP, lo que significaria un error de seguridad muy grande tenerlos todos abiertos, y por default todos estan cerrados.

Analogia 2
Uno cierra bien las puertas y ventanas de su casa para evitar que entran huespedes inesperados, animales, personas, aliens, etc... Solo tenemos abierta una puerta de la cual estaremos seguros que quienes entren por ahi, seran huespedes de confianza.

Bueno si ya tenemos instalado el NMAP procedemos con la practica.
Las practicas con el NMAP la hare con LINUX, pero la sintaxis del NMAP es la misma en cualquier S.O.
Vamos a ver un review rapido de los comandos y opciones mas Usuales con NMAP.
El comando :

nmap --version
Nos dira la version de NMAP que estamos usando.

La sintaxis basica de NMAP es:
nmap [host]

donde [host] se puede sustituir por una IP o por un nombre de dominio.

Esta linea nos dira los puertos que tenemos abiertos en nuestra maquina (recordemos que 127.0.0.1) es localhost.

nmap 127.0.0.1

Ahora un escaneo de puertos a Google.com:

nmap www.google.com

VERSION DE NMAP
Como de costumbre publico unos cuantos ScreenShoots, aqui la version del NMAP que uso :


ESCANEO AL LOCALHOST

Ahora los puertos que tengo abiertos actualmente en mi maquina.


ESCANEO A GOOGLE

Aqui los resultados que me mando de Google





Por default el NMAP escanea ciertos puertos, si queremos ver el estado(abiertos o cerrados) de ciertos puertos usaremos otra notacion.

Escaneo con rango de Puertos

Para escanear un rango de puertos usaremos la sintaxis :


nmap [host] -p inicio-fin

donde inicio es el numero inicial y fin el numero final.

Si queremos obtener un listado de los puertos 70-90 del Google usariamos el siguiente comando.

nmap www.google.com -p 70-90

Entonces Google nos repondera con esto :


Interpretando los Resultados del NMAP

La informacion de salida del NMAP es clara y entendible, en una columna nos muestra el PUERTO, el estado STATE y el servicio o protocolo que funciona sobre ese puerto.

Conclusion

Si nos ponemos a jugar con el Netcat y Con el NMAP y le empezamos a tomar practica, mezclada con buena teoria de TCP vamos a empezar a hacer maravillar, poco a poco nuestro repertorio de Herramientas para redes ira creciendo.

En la proxima entrada haremos uso excesivo de estas 2 herramientas para conseguir un lugar en la RED.

No hay comentarios:

Publicar un comentario