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.

Camino a Hacker Profesional #2

Un Hacker no se llama asi mismo hacker, es un titulo que se gana con la experiencia y el respeto de otros, uno sabe que es un hacker siempre, los logros desbloqueados ayudan en el camino de la verdad y la filosofia se vuelve un arma del dia dia, ser o no ser.

Si llegamos al punto en el que decidimos que vamos a ser HACKER, es tiempo de decision y de no voltear atras, ni a los amigos, porque nadie mas que uno mismo se impulsa en el camino del destino y muchas veces preguntas "por donde comenzar?", pues la pregunta respuesta es muy vaga.

Primero deberiamos preguntarnos que queremos hacer, en que area nos queremos volver unos maestros, ninjas, jedis, los mejores y hay mucho de donde escojer, unos escogen lo que mas facil se les da, otros eligen lo mas dificil y lo gran ser los mejores, la gran mayoria falla y se queda a medio camino, tal vez este sea el caso del autor.

Mi idea con estos posts no es decir como es un hacker, porque un hacker puede tener una vida social activa o totalmente inactiva, tener amigos, novia, esposa, nada debe limitar o reprimir la creatividad de otros, la creatividad es un recurso muy valioso.

Por Ultimo un Hacker no deberia estar aislado, el conocimiento es mejor cuando es colectivo, cuando muchas personas que les gusta lo mismo se reunen en un lugar, para compartir experiencias, ahi esta uno de los grandes secretos de muchos hackers.

be happy.

lunes, 28 de enero de 2013

Destripando las REDES TCP #1

Introduccion

Voy a iniciar una serie mas de articulos que inicaran con este articulo, la serie llamada destripando las REDES, bueno internet no es mas que el conjunto de muchas computadoras, servidores conectados en RED, una RED se constituye de varios elementos que la forma.

Routers
Switchs

Pero principalmente los Primeros, los nodos de las conexiones de las redes son los servidores.

La forma en la que vamos a entender las redes es mediante software y mucha teoria, pero vamos a alcanzar una meta, demistificar lo que hay detras de las redes, ya si despues de esto no queremos especializar en cosas de hacking de redes es cosa muy aparte. Vamos :

Las Herramientas

Hay varias Herramientas con las que vamos a trabajar en esta serie, pero las mas importantes son :

ping
netcat
nmap

PING
El ping utiliza el protocolo ICMP para saber si un host esta activo, de igual manera traduce el nombre de dominio a la IP del Servidor.
ya incluido en el sistema.

NETCAT
La navaja Suiza de las Redes, con ella es posible conectarse a los servidores y hablar en su idioma, obtener respuestas, hacer banner grabbing, y muchas cosas divertidas con los servidores, siempre y cuando entendamos el IDIOMA del servidor.

http://joncraton.org/media/files/nc111nt.zip
apt-get install netcat

NMAP
Esta es una excelente herramienta que nos ayudara a saber que puertos tiene abierto un servidor o en su defecto saber que puertos tiene disponibles para servicio un servidor y saber el IDIOMA del servidor.

http://nmap.org/dist/nmap-6.25-setup.exe
apt-get install nmap

Puertos y Protocolos

Antes de empezar a jugar con los programas vamos a entender esto de los puertos y los Protocolos, un servidor x, llamese google.com, esta reciviendo conexiones y peticiones, en un puerto.

Analogia 1 - los puertos
Imaginemos una tienda que tiene varias puertas, por cada puerta ofrece diferentes productos, si la puerta esta cerrada significa que el producto no esta disponible mas bien si esta abierta podemos entrar y hablar.

Un puerto puede servir diferentes protocolos, pero hay una lista extensa de puertos ya definidos para los protocolos mas conocidos.

Analogia 2 - los protocolos
Imaginemos que ya estamos dentro de la tienda por la puerta que escogimos, y estamos pidiendo nuestro producto, y pormas que lo pedimos, el vendedor no nos atiende, y nos dice que debemos hablar un idioma especifico para poder obtener nuestro producto.

Un protocolo utliza notaciones similares a las de un lenguaje, con el cual, traduciremos las preguntas(peticiones) y las respuestas.

Tomando Contacto
Una vez que ya tenemos nuestros programas descargador (ahora el netcat), vamos a hacer una conexión con el servidor de Google y le hablaremos al servidor en su idioma, y el nos respondera en su idoma, vamos al netcat.

Una vez que hemos descargado el netcat, veremos los siguientes archivos, una vez descomprimido, el archivo que nos interesa es el llamado nc.exe, seleccionado. vamos a iniciar


Ahora abriremos una Terminal cmd.exe, tomaremos la direccion que nos aparece en la ventana del netcat y la pegaremos y escribiremos el comando cd, para posicionarnos en la carpeta del netcat, tambien podriamos copiar el netcat, nc.exe a la carpeta de windows, para que no sea necesario estar directamente en la carpeta de ahora.


Una vez hecho todo lo anterior recurrimos al siguiente comando :
nc google.com 80
Le estamos diciendo al netcat que se conecte al servidor de google en el puerto 80 para HTTP, google aceptara la petición y el netcat nos devolvera el puntero de la Terminal, para que tecleemos la peticion que queremos hacer.

Entonces escribiremos el comando del protocolo HTTP :
GET index.html HTTP/1.1
y el servidor de google procesara el comando y nos enviara una respuesta.


 Aqui esta la respuesta que nos envia el servidor de google, con un poco mas de trabajo y estudio, podremos descifrar lo que google nos quiere decir, pero por ahora nos quedaremos con eso.


Conclusion

Aqui concluye la primera parte de esta serie de redes, espero a quienes lo hayan leído les haya servido, vamos a ir paso a paso para entender como funcionan los servidores, y los protocolos, para poder explotarlos a nuestro antojos.

Con lo que hemos visto ahora del netcat, podemos intentar hacer conexiones a otros servidores, intentar cambiar el google.com, por otros nombres como apple.com o microsoft.com.

Y en el comando :

GET index.html HTTP/1.1
podemos cambiar index.html por otras palabras, como inicio.html, secreto.html, uno nunca sabe con que se puede encontrar.

sábado, 26 de enero de 2013

Hacia Adelante

Una vez mas hago cambio del nombre del blog, el blog era codeluncher, pero por cuestiones de vision lo cambie a Happy PWND un poco mejor creo :), espero no causar muchos cambios.

Pensando como un Hacker #1



1.- Curiosidad

El autor de la siguiente serie de artículos no es un hacker, hay que pasar un proceso muy largo para siquiera llegar a serlo y un proceso mucho mas largo para ser reconocido como tal, un hacker va mas allá de las fronteras, un hacker invade sistemas y toma ventaja de lo que los demás ignoran, por que un hacker siempre quiere saber mas, conocer mas, conocer el funcionamiento de las cosas, un hacker es como un niño curioso por todo lo que hay a su alrededor.

El asunto de saber como piensa un hacker varia mucho, mas bien hay cosas que son simplemente necesarias para desarrollar el hacking, un navegador web lo programaron en x lenguaje de programación  pero tiene un funcionamiento, el primer paso es cuestionar el funcionamiento y empezar a desensamblar el simple funcionamiento de un navegador web, por ejemplo.

Si alguien carece de curiosidad, no significa que no la tenga, significa que la esta ignorando, la curiosidad es nativa y mientras mas se alimenta, mas se cultiva, tener curiosidad implica tener la duda del funcionamiento de las cosas, poder mejorar algo o poder optimizar, puede parecer muy vago, pero hay que entrenar la curiosidad, y entender el porque de las cosas, especialmente las relacionadas a la computación , informática, etc.

Camino a Hacker Profesional #1



EL asunto de pretender ser un hacker, es deverdad intentar ser un hacker, no solo el simple hecho de molestar a los demas diciendo que lo somos, llegar a ser un hacker es un camino mucho muy largo y no se logra de un dia a otro, muchas personas llevan muchos años siendo hackers y no se dan cuenta, mientras que otros blasfeman con la ocupacion de un hacker.

El autor de este texto no es un hacker, es un simple geek que se quedo en el camino, de los muchos caminos a los que uno se orilla cuando intenta ser un hacker, lo cierto es que poco a poco todo empieza a tener sentido y las respuestas empiezan a llegar, y uno no se da cuenta cuando de pronto empieza a resolver problemas y problemas, y uno sabe que eso no lo podia hacer antes, entonces el conocimiento empieza a dar frutos.

Hackear es un termino muy relevante para los hackers y para los no hackers, hackear algo incluye hacerle ingenieria inversa, estudiar los pro y los contras de sustituir unas partes por otras y hacer que algo funcione mejor, no solo el hecho de colarse en una red wifi y decir a todos los vientos que es un hacker o adivinar por simple coincidenia la contraseña del facebook de un amigo y decir que uso un programa de btuteforce de ultima generacion, no.

Tampoco es que yo sea un critico de todas estas cosas que convierten a uno un hacker, pero si hay que pagar un gran precio, gastar mucho tiempo resolviendo problemas, ayudando a otros, haciendo un poco de altruismo publicando informacion, imagenes, documentos en un blog, ser hacker no llega asi como asi, y uno debe sacrificar, tiempo, espacio para hacklabs y dinero en libros, impresiones, gadgets, etc.

Cuando uno decide que va a iniciar a ser un hacker, si deverdad desea serlo debera esforzarse, no dormir si es necesario para entender algo, y ser gatificante con las demas personas, debator mucho sobre un problema y si algun otro encontro una mejor solucion, aceptarlo, no empezar a criticar, mas bien si el otro uso algo que ya esta hecho y el trabajo de investigacion, etc no fue realizado, para el no valo nada, lo que importa es el esfuerzo.

jueves, 1 de noviembre de 2012

Hora de Levantar la bandera

Ha pasado casi un mes dese mi ultimo post, enverdad me estoy esforzando lo mas que puedo para llevar a cabo mis actividades, pero aun necesito mas, empezare a sacrificar mas horas de mi descanso y mis fines de semana, ya no tengo tiempo que perder.


Vengo con mi bandera en alto, buscando causar el mayor desastre posible, tratando de alcanzar mis metas de la mejor forma posible y reflejar mi motivacion con mi conocimiento y mi manera de ser, mi bandera refleja que quiero sobresalir y sabotear, piratear, hackear, transformar lo irreal en real, convertir lo que todos conocen en algo diferente.

Mi preparacion va mas alla de solo ser preparado sino para enfrentar problemas que aun no conozco y aqui estoy esperando retos, muchos retos, espero mucho mucho de la vida que Dios me da, y espero crear y crecer junto con mis compa~eros...

Ahora mismo estoy repensando mi plan para conquistar el mundo, este sera mi meta, sekai (el mundo), tratare de modificar mis pensamientos, y de repensar cuantas veces sea posible.