Entradas con la etiqueta ‘crino’

Recursos compartidos

Sábado, 16 de Junio de 2001

#####################################
## HACKINDEX ##
## http://www.hackindex.org ##
#####################################
Titulo: Recursos compartidos
Autor: CrinO
Tema: Acceso a las cosas remotas

La información incluída en este documento es expuesta en base a un interés educativo. HackIndex no se hace responsable del uso de dicha información.

El siguiente documento es propiedad de HackIndex y de su autor, pudiendo ser distribuído de forma totalmente libre y sobre cualquier tipo de soporte siempre y cuando se respete el formato original, se cite a A.H.E. como fuente, se incluya un enlace actualizado al documento o a la web del grupo: http://www.hackindex.org ; y se incluya este disclaimer en su totalidad y sin modificación alguna.

Queda extrictamente prohibida su distribución con fines lucrativos, cuando se altere su contenido sin consentimiento o cuando se incumpla cualquier otra condicion citada anteriormente en el presente disclaimer.
#####################################

Hola a todos, en este corto articulo voy a tratar de una forma casi practica los recursos compartidos de Microsoft (este articulo esta basado en una respuesta que di en las news), con una breve introduccion teorica, si despierta interes (y alguien se anima ;-P) mas adelante se puede dedicar otro capitulo a “destripar” el funcionamiento de los protocolos NetBios y NetBeui (estoy en ello :-) ).

Caso Primero: SIN CONTRASEÑA

DESDE WINDOWS:

¿Que se puede hacer?, bueno, lo contare como si operasemos desde otro guindos.

Antes de hacer nada, deberemos de activar nuestro cliente de NetBIOS, lo cual lo haremos dirigiendonos al Menu de inicio–>Configuracion–>Panel de control–>Red Una vez que estamos en la ventana de red, daremos a “agregar” y seleccionamos “cliente” y de la ventana de los clientes disponibles seleccionamos “Cliente para redes Micrisoft”. Daremos ha aceptar cuantas veces requiera (lo mismo nos pide el CD de Windows) y lo terminamos de instalar. Con esto ya tendremos todas las herramientas que necesitamos. Notese que no hemos instalado el servicio, ya que seriamos vulnerables a ataques del tipo aqui descrito y a los diversos nukes.

Lo primero que hacemos es abrir una ventana de MS-DOS, y ejecutamos el comando nbtstat, que por su nombre os podeis imaginar para que sirve.

c:\> nbtstat -A IP (donde IP es la ip del ordenador objetivo)

NetBios Remote Machine Name Table

Name type status
———————————–

PARDILLO <00> UNIQUE Registered
PARDILLOGROUP <00> GROUP Registered
PARDILLO <03> UNIQUE Registered
PARDILLO <20> UNIQUE Registered
PARDILLOGROUP <1E> GROUP Registered
PEPITO <00> UNIQUE Registered
PEPITO <1D> UNIQUE Registered
..__MSBROWSE__.. <01> GROUP Registered
PEPITO <03> UNIQUE Registered

MAC Address = loquesea

Bueno, ahora y antes de nada pasare a explicar por encima que significa cada campo de esta tabla:

<00> UNIQUE: Quieren decir que la maquina tiene activado el cliente para NetBIOS, y que su nombre NetBIOS es el que pone en el campo Name, en este caso es PARDILLO.

<00> GROUP: Indica el Dominio o Grupo de trabajo.

<03> UNIQUE: Este tipo significa que el servicio de mensajeria esta activo (Messeger Service), os suenan los mensajes emerjentes (Win Popup)?, pues es eso. En las maquinas Win9x esta activo por defecto, por eso aparece el nombre Netbios de la maquina hay tambie, pero si nos fijamos mas abajo, tambien aparece con el nombre del usuario conectado en ese momento.

<20> UNIQUE: Este tipo nos indica que tiene el File Server Service activo, o sea esta compartiendo archivos e impresoras, bueno, que tiene el servicio activo, aunque se puede dar el caso de que no comparta nada.

<1E> GROUP: Quiere decir que tiene activado el servicio Browser Service Elections, este servicio se encarga de negociar quien va ha ser el Master Browser del Dominio o Grupo.

<1D> UNIQUE: Indica que esta configurado para ser el Master Browser, que es como quien dice, el encargado de recoger los nombres NetBIOS de los equipos de su Grupo.

<01> GROUP: Indica que posee el estatus de Master Browser en su Grupo de Trabajo y esta marcado con __MSBROWSE__. Esta particularidad es muy util para conseguir informacion del resto de la red, ya que el mantiene, como Master Browser que es, una tabla con todos los nombres NetBIOS de su Grupo de Trabajo y las direcciones IP que les corresponde.

<1C> GROUP: Indica que la maquina es controlador de dominio, bien un PDC o BDC, logicamente, solo veremos este campo en Win NT server o en Samba Server.

<1B> GROUP: Nos indica el nombre del Domain-Controler del que depende.

Hay mas tipos de campos, eso tengo entendido, pero a dia de hoy yo conozco estos.

Pues bien, como hemos visto tras el analisis de la tabla, los campos <00> UNIQUE y <20> UNIQUE nos muestran el nombre NetBIOS de la maquina, en este caso PARDILLO, y en las etiquetas <03> UNIQUE,que aparecen mas abajo, vemos el usuario que esta en el ordenador y donde pone <00> GROUP es el del grupo de trabajo/dominio en el que se ubica la maquina.

¿Que sacamos de aqui?, pues que tenemos el nombre netbios de la maquina, el grupo de trabajo en el que esta, quien lo usa y que comparte recursos.

Siguiente:

Editamos el archivo LMHOSTS, que esta en c:\windows y le añadimos a ip y el nombre de la maquina que hemos obtenido. Si no sabeis el formato del archivo LMHOSTS, editad el LMHOSTS.sam que es un ejemplo (tambien esta en el directorio windows).

Ahora ejecutamos ntbstat -R, para que cargue el nuevo LMHOST.

Seguimos, vamos a ver que es lo que comparte la maquina PARDILLO:

c:\> net view \\PARDILLO

y nos saldra todo los recursos compartidos que tenga activos.

Hemos de notar aqui, como se comento antes, que aunque vieramos el Servidor de ficheros activo, podria darse el caso de que no tenga nada compartido.

Y ahora que ya sabemos los nombres de los recursos compartidos ya podemos utilizarlos :-) , simplemente:

c:\> dir \\PARDILLO\cartas

y nos dira todo lo que hay en el recurso “cartas”, por ejemplo copy, o del, o type, lo que os de la gana, ya que en este caso, si no tiene contraseña, no nos pedira autentificacion.

Hasta aqui bien, hemos supuesto que el objetivo tambien es una maquina Win9X pero si es una maquina Win NT?, pues segun maneja NT el protocolo NetBIOS no nos dejaria entrar, ya que no corresponde el usuario que nuestro ordenador le facilita con ninguno de su base de datos de seguridad. Para ello utilizaremos el usuario que nos facilito el comando netstat y esta vez no nos quedara mas remedio que montar la unidad de red de la siguiente manera:

c:\> net use d: \\PARDILLO\cartas /USER:dominio\usuario

Donde en este caso he utilizado la unidad “d”, pero podeis utilizar cualquier letra que tengais libre.

El parametro que hemos dado “/USER:dominio\usuario” sirve para especificar con que usuario nos conectamos, normalmente el campo “dominio” os lo saltareis, pero habra veces que sin el no deje conectarse. Es buena idea utilizar lo que aparecia en el netstat como grupo en este campo. En “usuario” pondremos el usuario anteriormente citado.

¿y porque no “conectarse a unidad de red”? pensara alguno, pues porque si lo hacemos asi apareceremos en el monitor de red, y supongo que no es agradable ¿verdad? X’DDD, en el caso del NT, deberemos correr el riesgo (¿o quiza no?).

DESDE LINUX:

Bueno, realizar la conexion desde Linux, viene a ser el mismo procedimiento pero usando distintos comandos. Antes de nada, debereis tener instalado el paquete “Samba”, el cual nos permite la conectividad con el protocolo NetBIOS sobre IP, ademas de que como servidor es excelente, segun lo veo yo. Tambien necesitareis el “nbtscan”, es un programa muy util, que hace la funcion del netstat de MS-DOS, pero contando con mas mejoras.

Empezaremos por averiguar el nombre NetBIOS del la IP que es nuestro objetivo y su grupo de trabajo, y de paso sacaremos mas datos de interes.

Para ello haremos lo siguiente desde una consola:

[crino@CrinO]$ nbtscan -vh IP
Doing NBT name scan for adresses from IP

NetBIOS Name Table for Host IP:

Name Service Type
—————————————-
PARDILLO Workstation Service
PARDILLOGROUP Domain Name
PARDILLO Messenger Service
PARDILLO File Server Service
PARDILLOGROUP Browser Service Elections
PARDILLO Messenger Service

Adapter address: la mac que sea
—————————————-

Como vemos, en este caso, el nbscan, con la opcion -h (human readable) nos ayuda a interpretar cada cosa.

El campo “Workstation Service”, es el campo que con el netstat de MS-DOS veiamos como <00> UNIQUE, para ver la tabla en ese formato solo tenemos que llamar a nbtscan sin la opcion -h, y este campo es el nombre NetBIOS que buscabamos como se comento antes. Tambien hemos de notar, que el tipo <03> UNIQUE que hay al final y que nbtscan nos muestra como “Messeger Service”, es el nombre del usuario conectado a la maquina, para ver esto mas claramente sera suficiente con que hagamos:

[crino@CrinO]$ nbtscan IP
Doing NBT name scan for adresses from IP

IP address NetBIOS Name Server User MAC address
——————————————————————————
IP PARDILLO PARDILLO La MAC que sea

Como vemos, en este caso coinciden el nombre de la maquina y el usuario conectado, esto pasa cuando no se han definido usuarios en un Win/9x, pero que si los hubiera, probablemente no coincidirian.

Como podemos observar, el nbtscan nos indica que tiene el servidor de ficheros activado, pues observamos “File Server Service” (<20> UNIQUE), entonces seguramente estara compartiendo algo, ahora pasemos a ver que comparte, para ello usaremos el cliente en modo texto del paquete Samba, que se asimila mucho a un cliente FTP:

[crino@CrinO]$ smbclient -L //PARDILLO -I IP
SSL: Error error setting CA cert locations: error:00000000::lib(0) :func(0) :reason(0)
trying default locations.
added interface ip=10.10.10.10 bcast=10.10.10.127 nmask=255.255.255.240
added interface ip=192.168.100.1 bcast=192.168.100.255 nmask=255.255.255.0
Got a positive name query response from 10.10.10.11 ( 10.10.10.11 )
Password:

Sharename Type Comment
——— —- ——-
C Disk
IPC$ IPC Comunicaci”n remota entre procesos

Server Comment
——— ——-

Workgroup Master
——— ——-
PARDILLOGROUP PARDILLO

Ya tenemos todos los datos necesarios, sabemos como se llama, su IP, su Grupo/Dominio y que comparte, ya podemos intentar conectarnos, para lo cual usaremos de nuevo el smbclient:

[root@CrinO /root]# smbclient //PARDILLO/c
SSL: Error error setting CA cert locations: error:00000000::lib(0) :func(0)
:reason(0)
trying default locations.
added interface ip=10.10.10.10 bcast=10.10.10.127 nmask=255.255.255.240
added interface ip=192.168.100.1 bcast=192.168.100.255 nmask=255.255.255.0
Password:
smb: \>

Y ya estamos dentro, cuando el smbclient nos pida la password, simplemente daremos al intro, tambien si le expecificamos el parametro -N no nos pedira la pass. El manejo del cliente es similar a un cliente de ftp, para mas informacion “man smbclient”.

Una vez aqui, volvemos a lo de antes, el caso de que sea un NT y no un win9x, lo cual requerira que le especifiquemos el usuario y Dominio (o Grupo de Trabajo):

[root@CrinO /root]# smbclient //PARDILLO/c -U PARDILLO -W PARDILLOGROUP
SSL: Error error setting CA cert locations: error:00000000::lib(0) :func(0)
:reason(0)
trying default locations.
added interface ip=10.10.10.10 bcast=10.10.10.127 nmask=255.255.255.240
added interface ip=192.168.100.1 bcast=192.168.100.255 nmask=255.255.255.0
Password:
smb: \>

Como se observa facilmente, las opciones para especificar usuario y grupo son -U y -W respecticamente.

Caso Segundo:SIN CONTRASEÑA

En el caso de que los recursos se encuentren con contraseña, deberemos utilizar otras tecnicas para llegar al caso uno.

Para conseguir la contraseña podemos recurrir a gran cantidad de programas que corren por la red, los cuales lo unico que hacen como norma general es un ataque por fuerza bruta. Ejemplo de este tipo de programa es el CAIN.

Otra tecnica mas “sutil” y avanza, de la cual no es proposito este texto, es aplicar sniffing y spoofing, tecnicas que solo pueden ser utilizadas en escenarios muy concretos o es posible usar algun bug del proceso de autentificacion en el caso de win95/98, los cuales han sido ya documentados.

En el caso de Win NT/2000, podremos continuar intentando los clasicos ataques por fuerza bruta al recurso, o a la hora de sniffar usar un crackeador de MD5 por fuerza bruta, ya que este es el metodo de encriptacion que usa esta plataforma. Tambien hay que tener en cuenta que cuando tratamos con Dominios de NT, deberemos ser autentificados previamente por un PDC o BDC…aunque tambien hay documentos mas avanzados en la red que explican vulnerabilidades de estos procesos…pero eso es otra historia ;-)

  • Share/Bookmark