lunes, 20 de octubre de 2008

Manual -Netcat-

En pocas palabras Netcat es una herramienta que realiza y acepta conexiones Tcp y Udp y lee y escribe los datros de estas conexiones hasta que se cierran.

Netcat nos permite ver datos Tcp y Udp puros antes de que sena envueltos en la siguiente capa supuerior como por ejemplo: Ftp( Protocolo de transferencia de ficheros) o Http ( Protocolo para la tranferencia de Hipertexto). Netcat no tiene una interfaz grafica muy agradable y los resultados que muestra a veces son complicados de entender pero su funcionamiento es tan basico que son miles de posibilidades las que ofrece y nos podria servir para una gran cantidad de situaciones.

Sus capacidades hacen que sea a menudo usada como una herramienta para abrir puertas traseras una vez invadido un sistema y obtenido privilegios de administrador o root del equipo. También resulta extremadamente útil a efectos de depuración para aplicaciones de red.

Netcat para Windows

Descarga Netcat para otros S.O: http://netcat.sourceforge.net/


Ejemplos de como utilizar -NETCAT-.

(estos ejemplos pueden ser variados dependiendo de los modificadores)

Si queremos saber que versión de servidor esta corriendo en un puerto remoto

Supongamos que queremos saber que versión webserver corre una determinada ip, para ello supongamos que la IP es 1.1.1.1, entonces tipearemos lo siguiente:

C:\nc –v –v 1.1.1.1 80

Donde nc es la invocación al netcat, -v –v nos dará todo la info visible del servidor que esta corriendo, 1.1.1.1 es la ip y 80 el puerto al que nos queremos conectar, bien, no solo que nos dio la versión del servidor si no que ahora estamos conectados al webserver y podemos realizar las operaciones normales que podría hacer el browser(en línea de comandos, por su puesto), pero eso para otro capitulo jejejejejeje.

Si quisiéramos saber la versión de cualquier otro servidor solo habrá que conectarse a el a través de su ip + puerto con la opción very vervose y ya sabremos algo de ese servicio ;)

Un chat p2p

Se necesita que los dos tengan netcat, uno va a actuar de servidor y otro de cliente.

EL SERVER

C:\nc –l –p (numero de puerto)

Donde nc llama al netcat, -l se pone a la escucha o en modo servidor, y –p es el puerto por donde escuchara

EL CLIENTE

C:\nc ip puerto

Donde nc llama al netcat, ip es la ip del server, y puerto el puerto que este abrió

Una vez realizado esto, podrán escribir en la pantalla donde esta corriendo netcat y al dar ENTER el otro vera lo que escribamos, una opción rápida y segura

Como sacar la ip de cualquier mensajero ( y algunos otros datos jejejjej)

Primero usamos la herramienta netcat (o nc) con la siguientes modificadores:

C:\nc -v -v -l -p 80

Donde nc llama al netcat, -v –v lo pone en modo very verbose y eso hace que al conectarse alguien a nuestra ip y puerto le rastrea la ip y los datos del browser y sistema operativo, -l lo pone en modo escucha o servidor , y –p 80 le asigna el puerto 80 a la escucha

Luego le pasamos lo siguiente, http://nuestra ip (usando alguna excusa, si no queremos que nuestro contacto sospeche), automáticamente se abrirá su navegador y se dirigirá a donde esta nuestro netcat a la escucha, entonces veremos en la ventana DOS donde se esta ejecutando el netcat, la ip de nuestro contacto ( con suerte también veremos la versión del navegador que usa y alguna que otra cosita mas)luego que tomamos nota de la ip, hacemos ctrl+C para cerrar netcat, y le aparecerá a nuestro contacto, en el navegador pagina típica de cuando no se encuentra el servidor (esto no pasara hasta que no cerremos el netcat con ctrl+C), buscamos la excusa que mas nos guste para explicar que la page que le pasamos no funciono y listo

Si queremos hacer una trampa para lammers y capturar su ip

Pues esto se basa en que un lamer, para entrar a una maquina, primero escanea puertos y si encuentra alguno vulnerable (como por ejemplo el puerto de un troyano) entra usando la herramienta necesaria.

Bien, esto se trata de hacerle creer al lammeruzo que tenemos esos puertos que abren los servidores de los troyanos abiertos (por lo tanto pensara que estamos infectados y tratara de entrar por ese puerto y allí tendremos el netcat listo para cazar su ip

Para esto abriremos tantos netcat como puertos queramos simular infección (seria bueno que busques una lista de puertos que usan los troyanos y abras los que te parezcan) y lo haremos si con cada puerto

C:\nc -v -v -l -p (numero de puerto de troyano)

Donde nc llama al netcat, -v –v lo pone en modo very verbose y eso hace que al conectarse alguien a nuestra ip y puerto le rastrea la ip y los datos del cliente que uso para conectarse, -l lo pone en modo escucha o servidor, y –p (será el puerto que simulara que allí hay un troyano), listo de esa manera ya tenemos la ip de quien trato de entrar a nuestra maquina a través de un troyano.

Cabe destacar que esto sirve para cualquier servicio como ser web o ftp

Mostrar una pagina web con netcat (o como simular un webserver)

Todos sabemos que si queremos mostrar una pagina web necesitamos un webserver, bien aquí vamos a improvisar uno (simulado lógicamente).

Para mostrar nuestra page en Internet haremos esto:

1) guardamos el html que queremos mostrar, en la misma carpeta que se encuentra netcat, luego tipemos esto:

C:\nc –l –p 80 <>

Donde nc llama al netcat, -l hace que se ponga a la escucha, -p 80 hace que el puerto que escucha sea el el 80(el mismo del http), <>

Cabe destacar que cada vez que alguien se desconecta tendremos que volver a realizar la operación para que vuelva a ser visto el html

Transferir archivos con netcat

Para transferir archivos con netacat primero tendré que destacar que solo hice la prueba con archivos zipeados, pero pueden probar con otros formatos, además, netcat no puede ver el EOF(end of file o final de archivo) así que no terminara la transferencia por si solo, cuando estimen un tiempo prudencial (si lo hacen antes de que termine se corta y se daña el archivo)deben darle ctrl+C para terminar la transferencia y así hacer un EOF. Bien, dicho esto pasemos al trabajo. Necesitaremos uno que haga de Server (el que envía el archivo) y uno que haga de cliente (el que recibe el archivo), para ello tipearemos:

EL SERVER

C:\nc –l –p (puerto) <>

Donde nc llama al netcat, -l pone le puerto a la escucha, -p (puerto) sera el puerto que pondremos a la escucha, <>

EL CLIENTE

C:\nc ip puerto > archivo.zip

Donde nc llama al netcat, ip es la ip a la que queremos conectar, puerto es al puerto remoto que queremos conectar , > archivo,zip, es el redireccionamiento de la entrada a un archivo.

Listo, si tenemos en cuenta todas las recomendaciones, transferiremos sin problemas

Conectarse a irc con netcat

Bien para esto hay que destacar que es sencillo lograr la conexión pero no hay que olvidar que una vez lograda hay que “hablar idioma servidor” o sea hacer toda la negociación a mano.

Para ello vamos a topear:

C:\nc servidor irc puerto

Donde nc llama al netcat, servidor irc es el servidor al que nos queremos conectar, y puerto el puerto al cual vamos a conectarnos (para graficarlo mejor vamos a poner de ejemplo una conexión al canal yashira que esta en el sevidor irc.cl, el comando seria así nc irc.cl 6667, y listo ya estaríamos conectados), pero en esta parte considero que poner un ejemplo totalmente practico ayudaría bastante, por eso voy a desarrollar un ejemplo de cómo me conecto al canal yashira con netcat

Para hacerlo tipeo el comando que me conecta

Luego tipeo PONG mi ip (esto debo hacerlo rápidamente para que no de time out la conexión).

Inmediatamente tenemos que identificarnos para eso topeamos:

USER nombre que elijas (no es tu nick) tu host tu servidor: tu nombre real(esto puedes omitirlo, pero no olvides poner : y luego dejarlo vació), luego de eso tipeas:

NICK tu nick

pero mas grafico lo hago con el ejemplo practico:

USER yo NETGlobalis.irc.cl :

NICK cadorna

aquí ya esta en el irc.cl para entrar al canal tipeas:

join #canal (en mi caso join #yashira)

ya tamos en el canal, ahora si queres hablar tipeas:

PRIVMSG #canal :texto (en mi caso digo hola, PRIVMSG #yashira : hola)

Cabe destacar que si bien es un método complicado y muchas veces las negociaciones dependen del servidor, nos muestra la versatilidad de netcat, y estos no son todos los comandos de irc experimenta comandos que usas en el con netcat, tal vez resulte interesante (les dejo un poco de experimentación para ustedes, si no me van a matar jajajajajajaaj)

Hacer un sencillo escanner de puertos con netcat

Esto es muy simple para chequear los puertos abiertos de una maquina debemos topear:

C:\nc –v –v -z ip puerto (cabe destacar que si queremos hacer un scanner de rango de puertos debemos separa ese rango con un “-“ por ejemplo queremos escasear todos los puertos desde el 21 al 139, debemos hacer así: nc –v –v –z ip 21-139, y si lo que queremos es escasear puertos determinados hay que separar los números de puertos con espacio por ejemplo nc –v –v –z ip 21 25 139, de esta manera buscara solo en esos puertos)

Donde nc llama al netcat, -v-v lo pone en modo veri vervose(ideal para sacar datos), z realiza la llamada al puerto pero si llegar a hacer la transacción de conexión, ip es la ip a escannear , y puerto es el puerto a escannear, esto nos devolverá una lectura de open(puerto abierto) o conection refused (puerto cerrado), y hasta a lo mejor recibas que servicio esta corriendo en ese puerto abierto


2 comentarios:

Alejandro dijo...

Hola, realmente es patético lo que hacen para "capturar" direcciones ip. Eso, espero te lo tomes a bien.

kofla dijo...

hola amigo, lo que quiero saber es como hago para entrar desde mi pc utilizando el netcat a otro... si es posible explicamelo con un

gracias...

a otra cosa tambien se puede hackear paginas web, si se puede dime como
este es mi email marto9001@hotmail.com