Copy Link
Add to Bookmark
Report
SET 017 0x0e
-[ 0x0E ]--------------------------------------------------------------------
-[ CURSO DE NOVELL NETWARE -VI- Y -VII- ]------------------------------------
-[ by MadFran ]-------------------------------------------------------SET-17-
Sexto capitulo sobre Novell Netware
Capitulo - 06 DIVERTIRSE CON NETWARE 4.x
06-1. Cosas interesantes acerca de las licencias de Netware 4.x
Es posible cargar licencias multiples y combinar el numero total de usuarios.
Por ejemplo, si estas en una de estas clases de Novell CNE que os dan 2
licencias de 4.1, puedes coger el CD de todos y combinarlos en un servidor.
Si tienes 10 CDs, puedes obtener 20 licencias. No hay limite al numero de
licencias y usuarios, excepto por limitacion de hardware. Esto significa que
puedes cargar mas de una copia de 1000 usuarios Netware 4.1 en un servidor
(asumiendo que tienes una unica copia, no la misma copia dos veces).
itsme ha jugado un poco con estas herramientas, y tiene que decir lo
siguiente acerca de SERVER.EXE que viene con Netware 4 :
Que hay dentro de SERVER.EXE :
0001d7c7 server.nlm type=07
000d319d "Link" 000d504a
000d31a5 unicode.nlm type=00 (ordinry NLM)
000d504a "Link" 000d6e9c
000d5052 dsloader.nlm type=00 (ordinary NLM)
000d6e9c "Link" 000db808
000d6ea4 timesync.nlm type=00 (ordinary NLM)
000db808 polimgr.nlm type=0c ('hidden' NLM)
editando el binario de SERVER, y cambiando el tipo de polimgr.nlm de 0c a 00
(offset 007a o 000cb882 en SERVER.EXE), se convirtio en visible. Los NLM
invisibles estan protegidos contra debugging con el Netware debugger.
Polimgr.nlm maneja los archivos de licencia, despues de leer el archivo,
chequea con algun tipo de funcion si es un archivo valido la funcion hace
que siempre el retorno sea OK, entonces puedes crear cualquier numero de
licencias de usuario.
06-2 Como puedo saber si algo esta siendo Auditado.
Utiliza RCONSOLE y escanea el directorio de SYS:_NETWARE. Habra algun tipo de
archivos binarios llamados NET$AUDT.* si ha sido utilizado Auditing.
Los archivos antiguos de Audit se llamaran NET$AUDT.A00, .A01, etc
El archivo actual se llamaran NET$AUDT.CAF. Si no hay nada de eso, no se ha
auditado nunca. Para chequear si Auditing esta activo, intenta abrir el
archivo Auditing de esta forma :
LOAD EDIT SYS:_NETWARE\NET$AUDT.CAF
Si sale algo (poco legible) significa que Auditing esta off. Si te da un
mensaje de error diciendo que NET$AUDT.CAF no existe y que hay que crearlo,
significa que el archivo esta abierto y Auditing esta activo en ALGO
(recuerda, EDIT.NLM normalmente maneja archivos abiertos bastante bien, pero
intentar abrir un archivo ya abierto en SYS:_NETWARE siempre da este error)
Tambien, si la red esta corriendo el software Novell's Web Server, utiliza un
browser e intenta :
http://nw41.nmrc.org/script/convert.bas?../../_netware/net$audt.caf
y si no recibes un error, Auditing esta o estaba activo. Mira la seccion
12-01 para detalles de este bug.
06-3 Donde estan los Login Scrips y como editarlos
El Login Scrips esta almacenado en SYS:_NETWARE. A pesar de que estos
ficheros son binarios, se pueden editar facilmente mediante el EDIT.NLM.
Escaneando, mediante RCONSOLE, los directorios en SYS:_NETWARE, encontraras
archivos con extension como .000, estos son probablemente Login Scrips.
Abrelos, son archivos de texto. Por ejemplo, si encuentras 00021440.000
LOAD EDIT SYS:_NETWARE\00021440.000
Si es un Login Script, lo veras en texto y podras editarlo y salvarlo. Esto
bypassa la seguridad de NDS, y es su mayor debilidad. Puedes utilizarlo para
dar a un usuario derechos extraordinarios que te permitan otras cosas,
incluyendo acceso completo a los archivos de sistema o cualquier servidor en
el arbol.
06-4 Cual es el rumoreado backdoor en NDS
El rumoreado backdoor en NDS existe. El rumor es que es un camino para
instalar un backdoor en un sistema en NDS completamente oculto para todos y
para todo. Hay un camino para hacer algo parecido, aunque el "oculto" es
parcialmente visible. Lo primero, necesitas acceso total a NDS. Pero si
puedes conseguir el password de Admin o equivalente, entonces puedes
instalar un backdoor que puede quedar escondido durante meses o a lo mejor
para siempre. Pasos a seguir :
- Conectate como Admin o equivalente.
- Lanza NWADMIN y se~ala un contenedor existente.
- Crea un nuevo contenedor dentro del anterior.
- Crea un nuevo usuario dentro del nuevo contenedor.
- Dale derechos totales sobre su propio objeto.
- Dale derechos totales sobre el nuevo contenedor.
- Dale equivalencia a Admin.
- Modifica el ACL al nuevo usuario de forma que no se pueda ver.
- Ajusta el Inherit Rights Filter en el nuevo contenedor de forma que nadie
lo pueda ver.
Esta tecnica la pueden usar los admin paranoicos que quieren dar a otro
usuario acceso total a un contenedor, y este usuario quiere restringir el
acceso a este contenedor. Para prevenir el olvido de la palabra de paso por
parte del usuario (haciendo que toda una seccion del arbol desaparezca) un
admin puede utilizar tecnicas similares.
No he tenido la ocasion de testear completamente pero permanece totalmente
invisible al resto de la LAN. No requiere conocimientos superiores al medio
en NDS para implementarlo, sin embargo muchos admin no conocen como cuidar
a sus usuarios.
Supongamos que lo has instalado en la compa~ia XYZ, tu contenedor esta dentro
del contenedor MIS y se llama BADBOY. Tu backdoor se llama BACDOOR. Haz login
de la forma siguente :
LOGIN .BACKDOOR.BADBOY.MIS.XYZ
Ahora mostraras a las herramientas normales de red que hay una conexion
activa en el server, por tanto llamarlo "BACKDOOR" no es probablemente una
gran idea. Piensa en un nombre que sugiera una conexion automatica y solo
utilizarla cuando pienses que nadie esta alerta.
Si la red tiene Kane Security Analyst, puede encontrar el backdoor.
06-5 Como quitar NDS
Esto es peligroso. Puede hacer que pierdas la cuenta de Admin si pierdes la
password. Teclea en una consola 4.1
LOAD INSTALL -DSREMOVE
Ahora en el modulo INSTALL, intenta quitar NDS. Te pedira la password del
Admin, simplemente daselo. Si te da errores, "no problem". Continua y
puedes quitar NDS del server. Incluso si le has dado la password equivocada,
te dejara eliminar el NDS. Os digo que es realmente maligno.....
06-6 Como quitar Auditing si has perdido la Password Audit
Si el Auditor ha olvidado la password, intenta una simple limpieza y
recarga.. caramba, parece que te has desmayado....
Puedes intentar esto aunque no hay garantia de que funcione, es solo una
teoria. Como sabes los archivos Auditing estan localizados en SYS:_NETWARE.
En cuanto hay un Auditing activo, incluso borrando NDS y recreandolo no
desconectara Auditing. Si quieres puedes borrar y reconstruir SYS: que te lo
desconectara. Intenta el proceso que te se~alo si estas desesperado. Yo lo
he intentado en el Nomad Mobile Research Centre Lab e hice este trabajo un
par de veces --- pero una vez destroce el servidor y NDS. Otra vez
simplemente no funciono. Pero es asi como se hace :
- Mediante RCONSOLE, escanea el directorio y localiza los nombres exactos de
los archivos de Audit. Sabemos que NET$AUDT.CAT lo es, pero hay otros
archivos con extension .$AF.
- Utiliza las tecnicas descritas en 06-2 y determina exactamente que archivos
estan abiertos en este server para Auditing.
- Intenta rearrancar el server y lanza un editor de sector.
- Busca el drive para los nombres de los archivos encontrados.
- Cambia todos los sucesos de estos archivos, salva los cambios y boot.
- Si no ha funcionado, intenta arrancar al server usando un SERVER.EXE
version 3.x y localiza SYS:_NETWARE. Borra todos los archivos Auditing.
- Si esto no funciona, haz repetidos llamadas a las tablas SYS:_NETWARE
(usando APIs) y o borra o cambia los archivos mencionados.
Como ultimo recurso (si estas en 4.11) mira la seccion 06-15
06-7 Guarda 4.x el password de LOGIN en un archivo temporal ?
Si y no. No en 4.2 o superior. Si en 4.0.
La version de LOGIN.EXE que se dio con 4.0 tiene un defecto que bajo ciertas
condiciones permite escribir cuentas y passwords en un archivo swap, creado
por LOGIN.EXE. Una vez ha ocurrido, el archivo podria no ser borrado, con
lo cual tanto la cuenta como el password puede ser visto en texto.
06-8 Cualquiera puede hacerse equivalente a cualquier otro incluyendo Admin?
Un par de cosas puede causar esto. Primero, pon los derechos para [PUBLIC],
despues pon el USER_TEMPLATE para derechos totales. Los derechos de escritura
para ACL te permitira algunas cosas interesantes, incluyendo hacerte a ti
mismo equivalente a Admin. Para ganar eqivalencia para cualquier cosa solo
hace falta derechos de READ y COMPARE.
La implicacion es obvia, pero dejar que os lo repita. Un backdoor puede
hacerse si una cuenta se genera de esta forma. Hemos creado una cuenta
llamada TEST que tiene suficientes derechos para hacer este tipo de cosas.
Simplemente conectate como TEST , hazte a ti mismo Admin, haz lo que
quieras, elimina al Admin,... y abre el infierno.
06-9 Puede resetear un NDS password con derechos limitados ?
Hay una utilidad freeware llamada N4PASS, que es util para Netware 4.10
(utiliza NDS calls y no esta basada en bindery).
La utilidad de este paquete es abilitar un Help Desk para resetear password
de usuarios sin cancelar toneladas de derechos. Utiliza acceso total y no
requiere manipulacion masivo de ACL para hacerlo.
Obviamente esta utilidad abre pocas puertas. El nombre es N4PA12.EXE y puede
bajarse de la web del autor.
http://FASTLANE.NET/HOMEPAGES/DCOLLINS
y al autor lo podeis encontrar en
DCOLLINS@FASTLANE.NET
Un par de cosas interesantes de esta utilidad, si se configura
incorrectamente el server puede verse comprometido de varias formas. Por
ejemplo, el password generado es un calculo que utiliza un archivo temporal,
la fecha, el loginname el HalpDesk loginname, el valor sencillo y algunas
otras cosas (en N4PASS.TXT)
Si N4PASS no lo borra inmediatamente, el archivo es copiable. Ademas, si los
derechos sobre el directorio de N4PASS estan abiertos, se puede descubrir la
password por defecto, por tanto, lee atentamente las instrucciones si estas
instalandolo. Si eres un hacker,...hazlo tambien.
06-10 Que es OS2NT-NLM
OS2NT.NLM es un NLM suministrado por Novell para recuperar/fijar Admin,
cuando se convierte en un objeto desconocido,... especialmente despues de
DSREPAIR.
Este modulo esta considerado como ultimo recurso NLM y tienes que contactar
con Novell para utilizarlo. A pesar de que no lo he visto nunca, se supone
que tiene que estar en uno de los FTP de Novell. Se piensa que esta
configurado por Novell para trabajar con tu numero de serie y es de una unica
utilizacion.
Tienes que demostrar a Novell quien eres y que tu copia esta registrada.
Se podria sospechar que es posible que este NLM se pueda hackear para evitar
el uso unico y el chequeo del numero de serie, pero un restore de NDS desde
un backup podria realizar todo esto mucho mejor. Este camino es un poco
destructivo.
06-11 Tienes que ser Admin para resetear un password ?
No. Hay una utilidad freeware llamada N4PASS, que se propone para Netware
4.10 (utiliza llamadas NDS y no se basa en el bindery). Mira 06-9 para
detalles. Seteando especificamente grupos que tienen acceso a otros password
de grupos, podrias tener un subconjunto de usuarios (el HelpDesk). Si eres
administrador probablemente quieres estar seguro que tu HelpDesk no te
resetea tu password de Admin.
06-12 Que pasa si no puedo ver SYS:_NETWARE utilizando RCONSOLE ?
Arrancando con el patch 410pt3 de Novell, no podras ver SYS:_NETWARE desde
RCONSOLE. Es sorprendente que la posibilidad de ver en este directorio es
cada vez mas dificil con cada nueva release.
Con Netware 4.11 no podras verlo con RCONSOLE. Pero no desesperes, hacker,
tus amigos en Novell no se han olvidado de vosotros (Seccion 06-15)
06-13 Consideraciones acerca de la seguridad en las particiones del arbol
La mayor parte de estas consideraciones en items individuales, pero aqui
analizaremos un poco acerca del particionado del arbol.
Como se dijo en la seccion 02-6, puedes configurar el bindery de un server
para ayudarte a recuperar una password de Admin olvidada. Se debe decir que
solo puedes acceder contenedores en las particiones del server actual.
En redes grandes las cosas son mas complejas. Por ejemplo, una cuenta de
supervisor (con acceso total al archivo del sistema) puede tener accesos
limitados en otro servidor. El numero de puntos debiles para intrusos crece
con el tama~o de la red. Un hacker podria explotar esto y alcanzar control
de otras particiones, si algun objeto en la primera particion que ha sido
comprometida tiene derechos en otras particiones.
Los intrusos podrian facilmente darse asi mismo equivalencia de seguridad
en este objeto o cambiar la password de los objetos con SYSCON, despues
hacer login a estos objetos y accedeer a los otras particiones.
En otras palabras, si un read/write o particion master se almacena en un
server, puede potencialmente manipular todos los objetos en esta particion
y a partir del momento que la password del supervisor puede ser reseteada
desde la consola, otras particiones corren riesgo.
Las replicas Read/Only de una particion por naturaleza no te permitira
aplicar tu bindery a un contenedor en esta area,... son,... solo lectura.
Desde luego alguien puede desconectar el server desde la red y lanzar
DSREPAIR en este server para cambiar la particion a master, pero esto es
mas bien extremo.
Novell recomienda restringir los derechos de los objetos a su propia
particion y crear particiones replica solo en servidores autentificados.
Pongamos un ejemplo para ilustrar :
- El servidor ACCOUNTING tiene un monton de hojas, documentos y una base
de datos utilizada por el departamento de cuentas con todo tipo de
informacion. El contenedor ACCT-USERS tiene derechos IRF.
- Hay una cuenta llamada MAINTENANCE en el contenedor ACCT_USERS cuya
password puede ser reseteada por el manager ACCOUNTING.
Esto se hace para cuando el administrador de la LAN necesita hacer algun
tipo de mantenimiento, como construir identidades con derechos de acceso,
etc. que el manager de ACCOUNTING no sabe hacer.
- Una replica de la particion con derechos de lectura/escritura, conteniendo
el contenedor ACCT-USERS existe en un servidor lejano en una peque~a
oficina de ventas. Un empleado temporal ha tenido acceso a la habitacion
donde se encuentra el servidor.
- Una tarde el empleado temporal utiliza SETPWD.NLM y resetea la password de
la cuenta MAINTENANCE.
- Al dia siguiente (despues de replicacion) el empleado fusila todos los
documentos de ACCOUNTING incluyendo las nominas, informacion personal
previsiones de ventas, planes de inversion,...
06-14 Puede un Supe de departamento llegar a ser Admin del arbol entero ?
Si bajo ciertas condiciones.
- El arbol tiene un OU llamado LAWDEPT.
- La cuenta Admin esta en la raiz del arbol.
- Una cuenta de supervisor departamental llamada FRED esta localizada en
LAWDEPT con derechos Admin en LAWDEPT OU (Un autentificado de LAWDEPT y
derechos super de objetos y propiedades).
- El server LawServer esta en el LAWDEPT OU con dos bindery, uno en LAWDEPT
OU y otro en la raiz (por tanto Admin puede hacer login via el bindery
si lo necesita).
- A pesar de que FRED solo puede hojear la raiz, puede lanzar SYSCON y
modificar la cuenta Admin para ganar mas accesos asi como passwords.
- Si FRED es on psicopata, puede borrar la cuenta de Admin y volver las
gestion del arbol imposible.
06-15 Cual es el nuevo cammino para conseguir SYS:_NETWARE ?
Utilizando JCMD.NLM (lo puedes conseguir en algunos sitios de FTP de la
seccion 09), es posible acceder a SYS:_NETWARE y hacer muchas cosas, como
copiar NDS, etc.. Pero lo que me han preguntado varios hackers es un camino
para acceder a este directorio SIN subir un NLM via RCONSOLE.
Este es el medio.
Arrancando con el software Green River beta, NETBASIC.NLM de HiTecSoft
(actualmente en el SYS:NETBASIC).
HiTecSoft es realmente fuerte, permite algunas sofisticadas cosas que han
sido desarrolladas en un ambiente tipo Visual Basic, incluyendo NLM sin
usar compiler ni linker de Watcom.
Cuando cargas NETBASIC.NLM, teclea "shell" y te encontraras en un ambiente
tipo DOS. Es todavia un NLM, pero el "commands" incluye comandos tipo DOS
como CD, DIR, COPY, etc. En fin, el truco es simplemente "CD _NETWARE"
y....bingo !. A este punto puedes hacer toda clase de cosas. Recuerda,
todavia puedes usar JCMD.NLM, pero el punto es que es tipo "built in"
Cosas divertidas que puedes hacer :
- Hacer copias de toda clase de archivos, incluyendo licencias, NDS, login
scripts, archivos audit,...
- Copiar estos archivos en SYS:LOGIN y pudes copiarlos fuera.
- Copiar fuera el archivo de licencias (MLS.000) y jugar con un editor
hexadecimal. Recopiar el archivo modificado y llamarlo MLS.001 y has
doblado las licencias disponibles (ten un cuenta que es ilegal).
- Modificar login scripts para diversion, provecho y ganar derechos extras.
- Juega con los archivos auditing, incluso borrando NET$AUDT.CAF y archivos
con extension de .$AF en caso de que auditor olvidara el password.
Gracias a los miembros de SIC( Hardware, Cyberius y Jungman) por descubrir
el agujero de NETBASIC.
Septimo capitulo sobre Novell Netware
Capitulo - 07 INFORMACION DIVERSA EN NETWARE
07-1 Porque no puedo acceder a traves de un server 3.x otra red via TCP/IP
Cargando TCPIP.NLM en un server con dos tarjetas, no significa que los
paquetes puedan enviarse de una tarjeta a otra. Para que el reenvio funcione,
el archivo AUTOEXEC.NCF deberia tener la linea siguiente :
LOAD TCPIP FORWARD=YES
Para que los paquetes circulen a traves del server, tienes que poner la
opcion "gateway=aa.bb.cc.dd" en la estacion de trabajo. Asi abres el camina
hacia el server. Si estas escribiendo herramientas hach, tenlo presente si
utilizas IP.
Algunos routers antiguos puede que no reconozcan el server Netware como
router, por tanto puede que no tengas muchas opciones si tu objetivo esta al
otro lado de una de estos routers. Los servidores mas modernos son Netware
aware y encontraran ttu server como router a traves de RIP.
Netware 3.11 IP solo trabajara entre dos subnets diferentes. Proxi ARP no
esta soportado en Netware IP.
Ejemplo :
123.45.6 & 123.45.7 con una mascara de ff.ff.ff.00 Transmitira
123.45.6 & 231.45.7 con una mascara de ff.ff.ff.00 NO transmitira
No pierdas el tiempo intentando cruzar rios no vadeables. Algunos admin
utilizan esto para limitar el flujo del trafico IP.
07-2 Como bootear mi server sin correr STARTUP.NCF / AUTOEXEC.NCF
Para Netware 3.xx, utiliza los comandos :
SERVER -NS (para evitar STARTUP.NCF)
SERVER -NA (para evitar AUTOEXEC.NCF)
Netware 2.x no tiene los archivos START.NCF y AUTOEXEC.NCF. En su lugar tiene
toda la informacion en codigo fuente en NET$OS.EXE, por tanto tienes que
reconstruirlo para cambiar algo.
07-3 Como hacer login sin correr el System Login Script
A menudo un admin intentara evitar que los usuarios utilicen directamente
el DOS y se salgan del System Login Script para poderlos controlar. He aqui
algunos caminos para evitarlo :
- Utiliza ATTACH en lugar de LOGIN para conectarse a un server. ATTACH no
lanza el login script, como lo hace LOGIN. ATTACH tiene que copiarse en
el disco local o ponerse en el SYS:LOGIN.
- Utiliza la opcion /S para LOGIN. Usando "LOGIN /S NUL "
provocara que LOGIN cargue el dispositivo NUL que siempre se compartara
como un archivo vacio.
07-4 Como rebootear un server Netware 3.x a distancia.
Si tienes acceso a un server via RCONSOLE puedes hacerlo despues de cargar o
descargar un NLM para rebootear un server. Construye un archivo NCF siguiendo
las etapas siguientes :
- Crea un archivo llamado DOWNBOY.NCF en tu disco local. Puede ser un archivo
texto y contener las lineas siguientes :
REMOVE DOS
DOWN
EXIT
- Copia el srchivo en el directorio SYS:SYSTEM utilizando RCONSOLE.
- En la consola, teclea DOWNBOY y enter.
pasa los iguiente :
- El comando REMOVE DOS libera la seccion DOS en la RAM del server.
- DOWN....para el server (si hay archivos abiertos, saldra el tipico mensaje
"are you sure", contesta Y, o sea si...). EXIT intenta retornar la consola
del server al DOS. Pero como tu has liberado el DOS de la RAM, el server
se bootea en caliente.
07-5 Como se puede parar un server Netware y porque.
Respondere a la segunda pregunta primero. Quieres chequear como
admministrador como se recupera tu server despues de un crash. O puede que
seas un hacker y quieras cubrir tus rastros de una forma dramatica. despues
de todo, si has estado editando los archivos log y tienen un aspecto
sospechoso, un buen crash puede explicar porque tienen este aspecto los log.
Segun itsme :
- Netware 4.1 : teclea 512 caracteres en la consola + NENTER ==> crash
- Netware 3.11 : NCP request 0x17-subfn 0xeb con un numero de conexion
superior a la admitida (hacen falta los API).
Si tienes acceso a la consola :
- Teclea UNLOAD RENDIRFX
- Utiliza una copia local de SYS:PUBLIC/RENDIR.EXE
- En SYS:LOGIN teclea RENDIR
(no es necesario login, solo conexion con el server)
07-6 Que es Netware NFS y que tan seguro es.
NFS (Networked File System) se usaba originalmente en UNIX para montar a
distancia un sistema de archivos diferentes. El objetivo original en Netware
es el permitir al server montar un sistema de archivos Unix como un volumen
Netware permitiendo a los usuarios Netware acceder a los datos Unix sin
correr IP o hacer login en el server, y a los usuarios Unix montar un volumen
Netware como un sistema remoto de archivos. Si los derechos estan asignados
incorrectamente puedes acceder al server.
Mientras el producto trabaja como se describe, es un poco dificil de
administrar, las cuentas de los usuarios en ambos lados deben sincronizarse
(nombre y password) y puede ser un poco dificil asegurar que asi es, a no ser
que las versiones sean Netware NFS 2.1 o superior con Netware 4.x y el lado
UNIX no corre NIS.
Simplemente a~adiendo el UID correcto al objeto NDS para crear una relacion
de derechos en ambos sentidos. Hay tres sistemas...Unix es Dios. Netware es
Dios, o ambos son equivalentes.
Un problema conocido con Netware NFS es que despues de descargar y cargar
utilizando los archivos NCFn un sistema monta desde el lado UNIX includes
SYS:ETC con acceso de solo lectura. Si aste directorio puede bloquearse
desde el lado Unix despues de montarlo NCF y CFG pueden verse y explotarse
su informacion.
Por ejemplo, SYS:ETC es un sitio donde se puede encontrar LDREMOTE.NCF, que
puede contener el password de RCONSOLE.
En Netware 3.11 si pides el mapeador para manejar NFS, te lo dara. Cuando
le das el NFS al archivo manejador, chequeara el mapeador LOCAL y te dara
la informacion. Puedes entonces leer cualquier archivo en el montado
anteriormente.
La existencia de Netware NFS en un server te concede ventanas UNIX en algunos
sitios, que puedes ser otro interesante metodo para lograr el acceso al
sistema.
07-7 Puede "sniffing packets" ayudarte a entrar ?
Si. Si un usuario se conecta y la password se transmite sin encriptar, lo
podras ver en puro y duro tecto en la traza. Si el server utiliza telnet y
ftp, capturar el password es facil. Para entrar en diversos sistemas, muchos
usuarios utilizan la misma password o variantes. Para obtener una lista de
diversos sniffers, buscad en "alt.2600/#hack". Lo podeis encontrar con
cualquier buscador potente de la red.
RCONSOLE.EXE es la aplicacion cliente que ofrece acceso remoto a la consola
del server Novell. La conexion entre el cliente y la consola del server
permite al admin manejar al server como si estubiera fisicamente delante
del teclado, y permite virtualmente cualquier accion, incluyendo cargar
archivos al server y cargar y descargar Netware Loaddable Modules (NLMs).
No es solo una efectiva herramienta de administrador, sino tambien el primer
objetivo de los hackers.
Un punto critico de acceso de muchos server es fisicamente el teclado. Es una
de las razones por las cuales el acceso fisico a los teclados es tan
importante.
La principal razon para hackear RCONSOLE es para tener acceso a la consola.
No, no estar fisicamente, pero el OS no ve la diferencia. Y la principal
razon para tener acceso a la consola es para utilizar alguna herramienta
que nos permita ganar privilegios de supervisor.
Durante el proceso de RCONSOLE, el password viaja encriptado. Si tu espias
la conversacion, veras los paquetes que contienen la apertura de RCONSOLE,
los posibles server que se puede acceder, etc. Esta conversacion se realiza
en paquetes NCP.
cuando se arranca RCONSOLE, el usuario elige el server, teclea enter y se le
pregunta el password. Una vez se introduce la password, la conversacion
contiene dos paquetes IPX/SPX de 60 byte seguidos de 4 paquetes NCP de 64
bytes, 60 bytes, 64 bytes y 310 bytes. El siguiente paquete IPX/SPX de 186
bytes, contiene el password. Se encuentra en el offset 3Ah, que es facil de
encontrar. El offset 38h siempre es FE y el 39h siemppre es FF.
Ahora es el momento de utilizar una herramienta llamada RCON.EXE de itsme,
que te puede dar alguna infromacion de los datos recogidos y ayudarte a
conseguir el password. Todo lo que necesitas son los 8 bytes hex que empiezan
en el offset 3Ah, la direccion de la network y la del nodo.
Ahora la direccion de network y nodo estan en la cabecedera de los paquetes
que contienen la password. Estos datos tambien se pueden obtener mediante el
comando USERLIST /A. Entonces, por que percisamente los 8 hex primeros bytes?
Esto es lo que hace Novell. No es un esuqema muy complicado.
07-8 Otras cosas que puede dar el sniffing.
Hemos se~alado que RCONSOLE envia las pantallas en texto a traves de la red
para que todos lo puedan veer (bien... todos los que esten mirando...).
Esto significa que puedes ver que estan tecleando y que esta pasando en la
pantalla. Normalmente no hay grandes cosas que mirar, pero ocasionalmente
puedes ver algunas joyas. La mejor de todas ? la password de RCONSOLE.
La primera sesion de RCONSOLE subira a la pantalla con las lineas LOAD
REMOTE y LOAD RSPX PASSWORD (siendo PASSWORD la password de RCONSOLE), y esto
se envia a los usuarios de RCONSOLE en texto.
Teiwaz descibrio que SYCON envia los cambios de password en texto. Mientras
que SETPASS, LOGIN, MAP y ATTACH encriptan el password en 3.x, SYSCON no lo
hace.
Recordad que sniffing muestra tambien los password de TELNET, FTP, POP3 y
otros. A menudo los usuarios utilizan la misma password de sistema en
sistema, por tanto estos password pueden usarse para probar otras cuentas.
En redes grandes, los administradores de Netware puedn tener la misma
password para cuentas privilegiadas de otros sistemas, por tanto la cuenta de
admin o supervisor pueden utilizarse para la cuenta de un Unix. Por tanto una
sesion TELNET que contiene una password puedde revelar la password de admin.
07-9 Como funciona la encriptacion de passsword.
De itsme.
1.-La Estacion de Trabajo (ET) requiere una llave de sesion del server
(NCP-17-17)
2.-El server envia una llave de 8 bytte a la ET.
3.-La ET encripta la password con la identificacion del usuario, este valor
en 116 byte es lo que se almacena en el bindery del server.
4.-La estacion de trabajo encripta este valor de 16 bytes con la llave de
sesion de 8 byte, el cual se envia al server.
(NCP-17-18=login), (NCP-17-4a=verify), (NCP-17-4b=change pw)
5.-El server realiza la misma encriptacion y compara su resultado con el que
recibe de la ET.
La informacion contenida en los archivos NET$*.OLD que se pueden encontrar
en el directorio de sistema despues de lanzar el bindfix, es suficiente
conectarse al server con cualquier objeto.
07-10 Productos que ayudan a mejorar la seguridad de Netware
Mientras que hay un numero de productos, comercial y de publico dominio que
tienen diversas caracteristicas de seguridad, los siguientes productos o son
realmente buenos o tienen caracteristicas unicas.
Hay un producto comercial llamado SmartPass, que corre como un NLM. Una vez
instalado, puedes cargar y analizar password existentes para detectar puntos
debiles. Una demo free puede obtenerse en la direccion :
http://www.egsoftware.com
SmartPass chequeara password al vuelo, por tanto un usuario puede ser forzado
a usar un diccionario de palabras para una password.
Otro producto comercial que chequeara de un diccionario de palabras si una
password esta en la lista es Binview NCS. La version bindery es
horrorosamente lenta, pero completamente precisa. Requiere acceso supe.
Bindview puede producir un cierto numero de informes, incluyendo informes
parametrizados para darte toda clase de informacion acerca del server y de
su contenido. El nuevo Bindview NDS es incluso mejor. Lanzado como un NLM
el chequeo de password es rapido dando el nombre de las cuentas que utilizan
passwords debiles. Puede hacer cientos de chequeos versus algunos/segundo de
la version bindery. Puedes utilizar la version lenta si quieres, pero solo
para los que gustan de la tortura.
Las posibilidades de reporting son fabulosas y a partir del momento que
pueden parametrizarse, el admin puede tener informes de seguridad a medida.
Para mas informacion de Bindview :
http://www.bindview.com
Para auditar una version 3.x, utiliza AuditTrack. Te dara todos los accesos
de un directorio o archivo individual por usuario , que puede ser util para
saber que estan haciendo. E.G.Software, la empresa desarrolladora, puede
encontrarse en :
http://egsoftware.com
Intrusion Detection Systems vende un producto llamado Kane Security Analyst.
Es considerado por muchos como el SATAN de Netware. Una de sus abilidades es
localizar objetos ocultos en el DNS. Hay una demo valida 30 dias en :
http://www.intrusion.com
"SafeWord for Netware Connect" es un NLM que chequea password en un entorno
Netware Connect.
http://www.safeword.com/welcom.htm
Aqui hay un producto llamado Password Helper que aumenta la seguridad de
cambio de password para 3.x. Es un EX/Server NLM que permite a usuarios
no-supe, resetear passwords.
07-11 Que es Packet Signature y como evitarlo
Packet Signature funciona usando una etapa internedia durante la llamada
de encriptacion del password logon, para calcular una firma de 64-bit. Este
bloque nunca se envia a traves de la red, sino que se usa como base para una
firma segura ("secure hash") en la parte mas importante de cada paquete NCP.
Un paquete firmado se toma como prueba suficiente de que el paquete viene
del PC correcto.
NCP Packet Signature es la respuesta de Novell al trabajo realizado por los
muchachos de Holanda en el hacking de Netware. La idea es prevenir paquetes
olvidados y accesos de supervisor no autorizados. Es una opcion en 3.11,
pero viene como parte del sistema con 3.12 y 4.x
Los niveles de firma en clientes y servers son los siguientes :
0 = Sin firma
1 = Se firman se se requieren
2 = Se firman si tu sistema lo soporta, pero no si el otro no lo soporta.
3 = Siempre se firma.
Puedes establecer el mismo nivel en el server. El nivel por defecto es 2 en
server y clientes. Si utilizas una herramienta como HACK.EXE, intenta el
nivel 0 en el cliente a~adiendo :
signature level=0
en el archivo NET.CFG del cliente. Si el server requiere paquetes firmados
no podran entrar, pero si te deja, hackea a gusto !
Si quieres cambiar el nivel en el server, utiliza el siguiente comando :
SET NCPPACKET SIGNATURE OPTION=2
07-12 Hay utilidades Netware con agujeros tipo Unix ?
Es una pregunta que se hace a menudo, inspirada en los errores stack overrun,
bugs del sendmail y otros parecidos en el mundo Unix. La razon de que no
tenga este tipo de entradas en las utilidades de Netware es debido a :
- Tu utilizas un shell de propiedad que puede cargarse sin acceder al server.
Por tanto no hay shell a explotar.
- Virtualmente todas las utilidades Netware no usan stdin y stdout, por
tanto no hay tampoco overruns de stack a explotar.
- Desde el momento que el shell corre de forma local, y no en el server, no
hay medio para alcanzar mas accesos de los que tienes, parecidos a los
script SUID en el Unix.
- Desde luego hay utilidades HACK.EXE que permiten accesos extra bajo ciertas
condiciones en 3.11, pero no en utilidades escritas por Novell.
07-13 Se puede instalar un backdoor invisible para BINDFIX, e incluso a las
utilidades de SECURITY ?
Rx2 ha escrito algunos programas en Pascal que permite hacer esto, no es
completamente invisible, pero casi. El codigo fuente esta en la seccion
A-08 (proximamente..) y una referencia de BACKDOOR.EXE en el capitulo 09-6
Primero de todo, los codigos de Rx2 deben ejecutarse como supe.
Crean un objeto bindery del tipo que quieras.
Los usuarios normales son del tipo 1.
Las impresoras del tipo 3
Los server de impresion del tipo 7
Tan pronto como se construye la propiedad PASSWORD, la cuenta es utilizable.
Si mantienes el objeto por debajpp de 200 (Rx2 recomienda 84), BINDFIX y
SECURITY no dara mensajes de alarma. El codigo de Rx2 va mas alla y permite
crear objetos con derechos supe. El LOGIN.EXE normal, solo usa objetos
tipo 1, por tanto tienes que utilizar el programa B_LOGIN.EXE (En anexo A-08)
Como efecto secundario, los objetos tipo 1, no son vistos por USERLIST y
SYSCON.