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.









