-[ 0x0D ]-------------------------------------------------------------------- -[ Domino Dancing ]---------------------------------------------------------- -[ by Paseante ]------------------------------------------------------SET-23- PROLOGO =-=-=-= La web. Para muchos, especialmente medios de comunicacion, web = internet, para la mayoria de empresas el lugar donde competir, ofrecer cada vez mas servicios, mas sofisticados, con mas efectos especiales. Para ello utilizan software cada vez mas complejo, programas con millones de lineas de codigo y manuales que suman otro tanto. Todo debe ser rapido y facil, casi plug&play. Hoy, aqui, ahora, estudiaremos el funcionamiento de la famosa pareja Lotus Domino & Lotus Notes, el objetivo es comprender el sistema y despues analizar sus implementaciones *reales* con la intencion de comprobar hasta que punto se hallan correctamente configuradas y protegidas. El articulo se divide pues en dos grandes partes: La primera dedicada a aprender lo seguro que puede ser Domino. La segunda dedicada a demostrar lo inseguro que puede ser Domino. Y por supuesto. Yo no he sido y ademas nadie me ha visto. ;-) NOTES TEORICO =-=-=-=-=-=-= Introduccion. - Historia - Caracteristicas y Requisitos - Conceptos Basicos Seguridad en Notes/Domino. - User IDs y Certificaciones - Acceso al servidor - Bases de datos - Domino en red NOTES PRACTICO. =-=-=-=-=-=-=-= Lotus Domino en la Web - Domino en el mundo academico - Domino en el mundo corporativo - Conclusiones REFERENCIAS =-=-=-=-=-= - Publicaciones - URLs -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- INTRODUCCION Lotus Domino y Lotus Notes -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- Lotus Notes es hoy en dia uno de los paquetes de software mas populares, segun la propia Lotus constituye uno de sus mayores exitos y se puede decir que ha sido tan importante para el mundo de la informatica como Windows 3.0 o Pc Basket. Notes ha sido siempre un producto adelantado a su tiempo, el software introductor de lo que se denomina "groupware", el primero en ofrecer un programa que integraba funciones de agenda, gestor de correo, discusiones, navegacion por bases de datos, siempre con un elevado estandar de seguridad y con una interfaz muy atractiva para el usuario. Domino es la respuesta de Lotus a Internet, llego para "servir" a Notes en Internet y con sus caracteristicas de servidor web, servidor de correo, news, LDAP y soporte SSL se ha convertido en el "puente" entre el mundo Notes e Internet. Aunque ambos productos no se necesitan solo es posible extraer todo su potencial cuando se despliegan juntos, tiene merito que Lotus apostase por integrar su producto con Internet cuando M$ aun andaba haciendo planes para que nos conectasemos a su red MSN por 39.95$ al mes. HISTORIA =-=-=-=-=- Notes proviene del trabajo realizado en la Universidad de Illinois en un proyecto llamado Platon Notes, por aquel entonces corria el a~o setenta y poco (los a~os de la polka mas o menos). Claro que entonces nadie sabia que IBM iba a desarrollar el PC que dejaria obsoleta la arquitectura del programa. Asi nos plantamos en 1984 con los promotores de Platon Notes que llevan a~os llamando a todas las puertas para pedir dinero que les permita crear una version de Notes para PC, ya debian estar bastante hambrientos cuando el CEO de Lotus, Mitch Kapor, acepto correr con los gastos. Nuestros amigos, llamados Ozzie, Halvorsen y Kawell, fundaron una empresa de nombre Iris Associates que quedo bajo el control de Lotus. A partir de aqui tenemos una etapa de varios a~os en que se dedicaron a vivir del momio, pero a finales de los 80 cuando Lotus se dio cuenta de que se estaba quedando atras en el mercado, Iris Associates se vio un poco mas presionada y por fin presento algo tangible. La primera version de Notes. Resulto que no se habian pasado todo el lustro durmiendo sino que habian ido trabajando a ratos. Tras esta primera version empezo el proceso tipico de "mejoras" y "nuevos lanzamientos". La version 4.0 fue liberada en 1996 y era el primer Notes que tenia en cuenta la importancia de Internet, tanto que en Diciembre de ese mismo a~o, al liberar la version 4.5 Lotus cambio el nombre del servidor que paso a llamarse "Domino 4.5. Powered by Notes" Con esta version Notes paso a unirse a la nefasta moda de "lanzar mucho y rapido". Ya no podian permitirse esperar cinco a~os. Internet lo acelaraba todo, la web se reinventaba a cada dia, a cada hora. CARACTERISTICAS Y REQUISITOS =-=-=-=-=-=-=-=-=-=-=-=-=-=- La familia Notes se ha ido ampliando con el paso del tiempo, Lotus Notes es el cliente por excelencia, el uso cada vez mayor de Notes/Domino para crear aplicaciones y soluciones propias ha dado lugar a un cliente especial llamado Notes Designer pensado para desarrolladores, la complejidad de la administracion de las cada vez mas numerosas opciones de Domino ha provocado el lanzamiento de Domino Admin, un cliente centrado unicamente en la administracion del servidor. Puesto que este articulo se va a centrar en Domino sera util repasar sus caracteristicas mas destacables. Domino se presenta en diferentes versiones, como servidor de correo, servidor web, para sistemas multiprocesador... Gracias a su naturaleza de servidor de aplicaciones se han desarrollado, no solo por parte de Lotus, multitud de extensiones para Domino como por ejemplo: Domino.Connect Extension para conectar a otras bases de datos Domino.Action Extension para crear sitios web mejorados Domino.Merchant Extension para crear sites de comercio electronico Domino.Doc Extension para publicacion y control de documentos Domino.Broadcast Extension para dotar a Domino de tecnologia Push Como servidor HTTP Domino incorpora la capacidad de transformar los documentos de Notes en HTML "estandar" ademas de ser capaz de interactuar con clientes Notes o navegadores de Internet. Soporta todas las opciones de un servidor web comun, incluyendo conexiones SSL, ademas de integrar servidor de correo, servicios de Directorio LDAP y servidor de News. Domino incluye el Public Address Book que es como el registro de NT, no no, como el NDS de Novell, no tampoco, pero es un directorio que sirve de base a sus capacidades de conexion, almacenamiento de bases de datos, replicacion, autenticacion y automatizacion de procesos administrativos. Es un software muy portable, capaz de funcionar bajo los siguientes SO: Windows NT AIX Solaris HP-UX Linux OS/2 Warp Entre los protocolos que soporta se encuentran: AppleTalk, SPX, TCP/IP, X.25, X.PC... aunque no todos estan disponibles en cada SO. En cuanto a las recomendaciones de hardware varian, situandose en general entre los 64-128 MB de RAM, alrededor de 1Gb de disco duro y un procesador Pentium II o superior. CONCEPTOS BASICOS =-=-=-=-=-=-=-=-= Algunos terminos sobre Domino. Domino domain: Un grupo de servidores Domino y sus usuarios que comparten un mismo directorio (Public Address Book), normalmente solo suele haber un dominio aunque en caso de grandes organizaciones se pueden crear varios. La funcion principal de un dominio de Domino es el rutado de mensajes. Domino named network: Un grupo de servidores Domino que usan el mismo protocolo y se hallan en la misma LAN o e una WAN accesible. Un servidor Domino puede formar parte de varias siempre que use distintos protocolos. Public Address Book: La base de datos donde se almacena la informacion sobre el dominio: Usuarios, servidores, conexiones, tareas planeadas, rutado de correo... Certificacion: Al a~adir usuarios a Domino (registration process) se crea un identificador que debe ser certificado de manera que el ID del usuario (o de otro servidor) sea "confiable". Podemos imaginarnos este proceso como la firma de una clave publica PGP. A partir de ahora en cada dialogo entre un cliente Notes y un servidor Domino ambos intercambiaran sus ID para comprobar que estan certificados por alguien en quien ambos confian. El certificador en una organizacion es el primer servidor Domino que se haya instalado. -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- SEGURIDAD EN NOTES/DOMINO Modelo de seguridad y accesos -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- En esta seccion daremos un repaso a las funciones y caracteristicas relativas a la seguridad que implementa Lotus Domino. USERS IDs Y CERTIFICACIONES =-=-=-=-=-=-=-=-=-=-=-=-=-= Toda la estructura de seguridad de Notes descansa en los identificadores (ID), cada usuario y servidor posee su propio identificador "user.id" o "server.id" que no es mas que un fichero donde Notes almacena la informacion del propietario, el duo clave publica/privada y los certificados que se han a~adido a dicho ID. En ocasiones el ID se almacena en el PAB (Public Address Book) aunque que por lo general se guarda en un fichero que se entrega al usuario (Lotus recomienda guardarlo en diskette y no en HD) Para 'abrir' este ID se necesita introducir la contrase~a adecuada. Notes posee medidas que dificultan que un ID robado se pueda utilizar, asi ralentiza los intentos de fuerza bruta al responder con retraso creciente a contrase~as incorrectas e incluye medidas anti-spoofing en su dialogo de peticion de contrase~as para evitar "pantallazos" Si no te gusta hacer copias de seguridad la mala noticia es que si el fichero ID se corrompe estas frito y si olvidas la clave tambien estas frito. Toca volver a registrarse y obtener otro ID, la informacion cifrada con el antiguo ID deja de estar accesible. La certificacion en Domino cumple el papel de demostrar que cada parte de la comunicacion es realmente quien dice ser, habitualmente se usa una estructura jerarquica de certificacion, cuando se instala el primer servidor Domino automaticamente se convierte en certificador y se crea el fichero "cert.id", al mismo tiempo el "server.id" y el ID del admin son 'firmados' usando este certificado. Este certificado puede servir para crear otros subordinados, hasta un total de cuatro niveles, de manera que el usuario: RandomJoe/Marketing/NYork/BigCompany Tiene tres certificados pertenecientes a distintos niveles, cuando este usuario intente conectarse a: RandomServer/Sales/Torrejon/BigCompany El servidor encontrara el certificado comun y por las reglas de confianza que gobiernan el proceso, mas adelante las veremos, aceptara el ID como autentico. ACCESO AL SERVIDOR =-=-=-=-=-=-=-=-=- Hay dos maneras muy diferentes de acceder a un servidor Domino, la primera es usando el cliente Notes y el esquema de seguridad de Lotus. La segunda usando un cliente 'normal' (navegador, lector de correo..) -*- Con Notes Una vez que tenemos un ID abierto, que ocurre al intentar conectarnos con un servidor Domino?. El proceso de conexion se divide en dos grandes partes: Validacion y Autenticacion. Validacion: Soy quien digo ser Autenticacion: Y ademas puede demostrarlo. Las tres reglas de validacion que usa D/N para determinar que puede confiar en un certificado son: 1- Confia en la clave publica de un certificador cuyo certificado se encuentre en tu propia ID 2- Confia en cualquier clave publica que este certificada por uno de los certificadores que se hallen en tu propio ID 3- Confia en las claves publicas firmadas por un certificador descendiente de otro en el que confies. Suena algo mas liado de lo que es, ahora pasamos a la autenticacion: Se trata de demostrar que somos capaces de 'abrir' la clave privada que casa con la clave publica cuya autenticidad acabamos de demostrar, si no lo hicieramos bastaria robar un ID para suplantar usuarios o servidores :-> Basicamente y por pasos funciona asi. 1- El servidor genera un numero aleatorio, lo cifra con la clave publica del usuario y se lo envia. 2- El usuario recibe el mensaje, lo descifra usando su clave privada y envia el numero de vuelta al servidor. -*- Con Navegador (Sin Notes) Domino utiliza el metodo de HTTP Basic Authentication para requerir nombre y clave de acceso a directorios protegidos, tambien puede usar SSL 3.0 bien para establecer una sesion basandose en el intercambio de certificados o bien para encriptar el trafico aunque la autenticacion llevada a termino sea la basica. Por ultimo un usuario puede acceder anonimante al servidor. Deteniendonos en el acceso anonimo hay que decir que se divide en dos tipos: El acceso anonimo por usuarios de Internet El acceso anonimo por usuarios de Notes Todo el tema del acceso anonimo debe ser *cuidadosamente* evaluado ya que como veremos posteriormente es clave para explicar las vulnerabilidades encontradas en los servidores probados. BASES DE DATOS =-=-=-=-=-=-=- En Notes las bases de datos constituyen el corazon del sistema, aqui se guarda toda la documentacion, los mensajes, las configuraciones... Las bases de datos tienen en Notes la extension .nsf que supongo es un acronimo de Notes Storage File, aunque hay muchos terminos y conceptos propios de las bases de datos nosotros analizaremos aquellos tocantes al acceso y seguridad. Los permisos de un fichero .nsf dependen de la configuracion de su lista de control de acceso (ACL). El administrador de una base de datos es el encargado de establecer los niveles de acceso adecuados, cada nivel incorpora todos los privilegios de los anteriores. Manager El manager tiene como prerrogativas exclusivas el modificar la ACL, cambiar la configuracion de replicacion y borrar la base de datos. Ningun otro nivel de acceso permite realizar estas tareas y por ello Lotus recomienda asignar dos managers (o mas) a las bases de datos cruciales. Designer El dise~ador puede modificar la apariencia de la base de datos, sus campos, los formularios y vistas asociados... Editor Este usuario puede crear documentos y editar otros aunque hayan sido creados por otros usuarios. Author El autor puede a~adir documentos a la base de datos y efectuar cambios en aquellos que el ha creado pero no hacer cambios en los documentos de otros usuarios. Reader Este nivel de acceso solo permite leer documentos en la base de datos. Depositor El usuario con este nivel puede crear documentos en la base de datos pero no verlos, ni siquiera los documentos que el mismo ha creado. No Access Nivel de acceso sin acceso. :-) La herramienta de administracion de Domino permite especificar los accesos por usuarios/grupos, establecer los niveles de acceso por defecto, decidir si se permite el acceso anonimo y limitar los privilegios de los usuarios que acceden via Internet con la opcion "Maximum Internet name&password access" que tiene precedencia sobre cualquier ACL individual. Hay dos peque~os detalles a tener en cuenta, las ACL solo estan en vigor cuando se accede a la base de datos desde los ficheros .DIR, es decir que obviando Notes y usando el sistema operativo para acceder al fichero .nsf no estaremos sujetos a los permisos de Notes. Se puede remediar en parte cifrando la base de datos con la ID del server o cifrando las bases de datos en las estaciones locales con la ID del usuario. El otro hace referencia a las prioridades de permisos, -1- Si el acceso Anonimo o Default esta permitido toma precedencia sobre un acceso de usuario autenticado salvo que tenga asignado menos derechos -2- El acceso con nombre de usuario tiene preferencia sobre el acceso como miembro de un grupo, aunque tenga asignados menos derechos. Por defecto al crear una base de datos la ACL incorpora entradas para el creador (Database Creator) y para los siguientes grupos: Default LocalDomainServers (1) OtherDomainServers (1) (1) Las ACL aplicadas a servidores controlan la manera de replicar la base de datos. Es posible efectuar controles mas detallados limitando acceso a determinadas secciones del documento, presentar algunos campos encriptados.... DOMINO EN RED =-=-=-=-=-=-= El servidor Domino que se pretende sea accesible desde Internet esta sujeto a todos los ataques habituales contra cualquier servidor web, por ello deben aplicarse las medidas de seguridad adecuadas sin olvidar la necesidad de permitir que otros servidores Domino del mismo grupo accedan para replicar bases de datos y rutar correo, para proteger estas conexiones se puede usar un protocolo distinto, colocar otro firewall entre ambos sistemas, usar un proxy... El mismo problema se presenta al querer abrir sesiones de Notes a traves de Internet, Notes utiliza el protocolo NRPC (Llamada a procedimiento remoto de Notes) para su trafico con destino al puerto 1352. Un servidor Domino puede actuar como 'passthru', en este caso permite a un cliente Notes alcanzar otro servidor Domino con el que no podria establecer conexion de otra manera, el servidor configurado como 'passthru' actua de intermediario para realizar la conexion entre ambos. Con un navegador web solo se pueden acceder a las bases de datos locales del servidor pero no usar 'passthru' para llegar a otro servidor Un problema de seguridad lo tenemos si hay un servidor passthru que se puede alcanzar desde Internet por el puerto 1352, en caso de que los niveles de acceso no esten bien configurados (acceso anonimo Notes permitido) nos encontramos con el siguiente escenario. ------------- --------------- ---------- ----------- Atacante ====> Firewall que ====> Passthru ===> DominoServer con Notes permite trafico Server en la red Notes interna --------------- --------------- ----------- ----------- Para la mayor parte de implementaciones de Domino/Notes en grandes redes es interesante poder permitir el trafico de Notes a traves de Internet, no tiene porque ser un problema de seguridad si se han configurado *correctamente* los niveles de acceso al servidor y los niveles de acceso a las bases de datos. En caso de no estar seguro de saber hacerlo la solucion mas sensata consiste en bloquear el trafico en el perimetro de la red. -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- LOTUS DOMINO EN LA WEB Ejemplos practicos de la vida real -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- Hemos adquirido unos someros conocimientos acerca del producto de Lotus y tenemos cierta idea de sus mecanismos de seguridad, hasta aqui podria ser un articulo completo pero creo que quedara mas claro si incluimos un par de ejemplos practicos. El objetivo en general sera comprobar la correcta configuracion del servidor Domino y determinar si este permite lo que los ""expertos"" consideran el primer paso que da un intruso. Ganancia de informacion. Los medios empleados, un ordenador con conexion a Internet y un navegador. Por dos motivos: -1- Para dejar claro que todo esta al alcance de *cualquier* usuario sin utilizar "megaprogramas especiales". -2- Porque con la birria de ordenador que tengo ni pensar en poner el cliente Notes, solo funcionan el vi y el lynx-color. Asi no se puede trabajar con seriedad. ;-( Para llevar a cabo la prueba necesitamos algun objetivo, nada mas facil que encontrar algun .es con Domino, en este caso se trata de una universidad y de un banco lo que es muy adecuado para comprobar los diferentes niveles de seguridad. Una aclaracion MUY IMPORTANTE es que se los objetivos probados son los dos primeros encontrados, no ha habido "descartes". El resultado por tanto no debe tomarse como "caso aislado" sino como una indicacion muy seria de que hay problemas que pueden ser muy comunes. Para los despistados indicar que las direcciones URL no son las reales, por favor no envieis mensajes diciendo que www.univ.es no funciona :-DD DOMINO EN EL MUNDO ACADEMICO =-=-=-=-=-=-=-=-=-=-=-=-=-=- Encontramos una universidad, o euniversidad?, cualquiera del Norte de Espa~a. Con sus servidores Domino ofreciendo las paginas web habituales y nos entra la curiosidad de saber si podemos "hurgar en las entra~as" y sacar lo que no esta a la vista. Empecemos por lo basico. http://www.univ.es/?OpenServer Bienvenidos a una URL de Domino, este comando le pide al servidor que muestre la lista de las bases de datos de que dispone. Lo habitual es la respuesta.. Error 403 HTTP Web Server: Database Browsing Not Allowed No es problema, esta opcion no se activa por defecto asi que no indica una preocupacion especial por la seguridad, ahora empezamos a probar el acceso a las bases de datos y comienza el espectaculo multimedia. [ Al final de esta seccion incluyo una lista de las bases de datos mas comunes y su funcion ] Asi que no queria darme la lista de bases de datos eh?. Pues toma. AccesosD.nsf + accesos.nsf + Cronos.nsf - acontab.nsf + dframes.nsf + 11/03 + dfsdoc.nsf + AMREC001.NSF + diarioex.nsf + bbaa.nsf + docapl.nsf + busytime.nsf + docsistemas.nsf + buzondeb.nsf + docugp.nsf + catalog.nsf + doc/helpadmn.nsf + certsrv.nsf ............... + clock.nsf + compl2.nsf + compl.nsf + Conconta.nsf + controlh.nsf Ya tengo un listado por nombres, ahora tengo un monton de bases de datos a las que puedo intentar entrar confiando en acceso anonimo/default generoso pero como saber cual elegir? # Base de datos kBytes % usado Usos / 7 días - l???02/UNIV 4.576.512 89 9211 1 Control horario 728.320 61 1400 2 Jxxxx Martinez Gxxx 270.080 100 164 3 Eduardo G* Soxxxno 179.712 99 119 4 J?vxx E* Cundin 161.792 100 21 5 lgp???'s Statistics 110.080 81 14 6 DOCUMENTACION 92.672 100 88 7 Andoni J* L. 91.648 100 51 8 Guillxx Irasxx 87.552 98 45 9 Registro General UNIV 81.664 96 0 10 JR. Alzola G* 80.384 99 433 ....... Bonito todo esto pero necesito algo que me enlace un poco todo, algo como: Archivo Titulo Fecha l??02/UNIV REGHELP.NSF Ayuda de Registro N/D helpupv.NSF Ayuda UPV N/D bbaa.nsf Bellas Artes N/D cig.nsf CIG 07/x0/9x circon2.nsf Circulares Contabilidad 17/x1/9x p*/?unesco.nsf codunesco N/D reloj.nsf Control horario 23/x2/9x controlh.nsf Control Horario (Auxiliar) N/D Cronos.nsf Cronos N/D LfsLog.nsf DFS Log Database 15/x2/9x fax.nsf DFS Mail Database 15/x2/9x diarioex.nsf Diario de Explotacion 28/x2/9x dframes.nsf Docentes (frames) 11/x1/9x ................... ................... [ No hara falta que diga que esto es un resumen y que los datos aqui dispuestos han sido alterados cuando me ha parecido necesario ] De momento la cosa no pinta muy bien para nuestra UNIV(ersidad), claro que no es de extra~ar, siempre que leo las declaraciones de un 'hacker' no falta la frase de "la seguridad de las universidades es patetica". Igual tienen razon. ;-?. Veamos que dice Domino acerca de ese tentador Registro General UNIV. [Nombre del servidor aqui] [Fecha aqui debajo] Registro General ???/UNIV [a~o] Ruta de acceso: reg_g_??.nsf Tama~o del archivo: 57,5 MBytes (94,50% del espacio utilizado) Tama~o de las vistas: 1. Por Epigrafe 0 kBytes 2. Por Numero 12052 kBytes 3. Por Tipo\Organo Destinatario 0 kBytes 3. Por Tipo\Organo Remitente 0 kBytes 4. Libro 17381 kBytes Configuracion de la Aplicacion 9 kBytes (validacion numero) 0 kBytes Gerentes: OtherDomainServers, Manager LeiXX/UNIV, Administradores Notes, LocalDomainServers ................................... Uso en el periodo completo (x14 dia(s)) Usos de la base de datos: 1400 Documentos leidos: 24850 Documentos escritos: 22862 Gerentes, Managers, si recordais son aquellos usuarios con poder absoluto sobre la base de datos, no seria bonito saber que usuarios tienen mas privilegios y sobre que bases de datos los tienen?. Tus deseos son ordenes. Marchando una de listado de base de datos ordenadas por gerente. -Default- // Nuestro amigo el acceso por defecto, mira que mono. Servidor Titulo Archivo Fecha lxxx02 LogAgent LogAgent.nsf 27/0x/9x lxxx02 LSX for LManual lsxlc.nsf 09/10/9x lxxx00 SMTP MTA Tables smtptbls.nsf 03/02/9x lxxxei ImagePlus LPx* LOANPROC.NSF 11/0x/9x lxxxei GW Admin's Guide VIGWDOC.NSF 13/xx/9x lxxxei LPx* Admin LOANADMN.NSF x1/x3/9x - Administradores Notes lxxx02 Ayuda de Registro REGHELP.NSF N/D lxxx02 Ayuda UPV helpupv.NSF N/D lxxx02 Bellas Artes bbaa.nsf N/D lxxx02 Circulares Contabilidad circon.nsf 1x/x1/9x ............................. - FAX/UNIV // Me hace gracia, que pasa? .... lxxx02 In Fax Mailbox infaxbox.nsf 26/xx/9x Y asi van desfilando uno tras otro todos los gerentes contandonos en que archivo y servidor estan las bases de datos cuyo control poseen. Ahora tenemos un par de cosas, miles de nombres y rutas a bases de datos de Notes y la lista de usuarios con mayor numero de privilegios. Con esto y un bizcocho nos paseamos por el server hasta encontrar por ahi, la id de dos usuarios (uno de ellos el 'gran jefe indio') y la de un servidor. Si no sabes que es eso de ID te has saltado la mitad del articulo. Pero que carajo, cuantos servidores hay aqui dentro? Red - TCPIP Network Servidor Titulo Administrador lxxx00/UNIV Servidor de pruebas Administradores Notes lxxx02/UNIV Notes produccion Administradores Notes lx?x00/UNIV Notes Desarrollo Administradores Notes lxxxce/UNIV Contabilidad 1 Administradores Notes lxxxcg/UNIV Contabilidad 2 Administradores Notes ........... Esto de ser hacker cada dia mas complicado, voy a pedir una pension como las amas de casa, en fin a ver que estan haciendo los demas servidores. Enchufo la URL pertinente en mi navegador del a~o del Titanic y vamos! Estadisticas del Servidor lxxxei Views * 1. Statistics Reports - 1. System * 1. Statistics Reports - 2. Mail & Database * 1. Statistics Reports - 3. Communications * 1. Statistics Reports - 4. Network * 1. Statistics Reports - 5. Clusters * 1. Statistics Reports - 6. Web Server & Retriever * 1. Statistics Reports - 7. Calendaring Scheduling * 2. Alarms * 3. Events * 4. Spreadsheet Export * 5. Graphs - 1. System Statistics * 5. Graphs - 2. System Loads * 5. Graphs - 3. System Resources * 6. Trouble Tickets - 1. Alarm * 7. Analysis Report * 8. File Statistics * 9. Single Copy Object Store Statistics $$ Aqui eso de la "ganancia de informacion" ya me abruma. Statistics Report for server:lxxx02/UNIV - Notes produccion - (Powered by Notes) Session Information: Boot ID: 5979215 Server started at: 01/xx/xxxx 1x:xx:3x Statistics collected at: x5/0x/xxxx 1x:2x:x3 Reporter task running for: x3 day(s), 2x:x2: x (hr:min:sec) Server Location: Server Administrator: Luis Ferxxxxx Escartin/Sistemas/UNIV $$ Me salto algo de info que viene en graficos (uso del disco, etc..) Memory Statistics (in bytes): Free memory: Memory allocated: 108.025.982 Memory allocated as shared memory: 77.942.112 Memory allocated by server processes: 30.083.870 Memory availability: Plentiful Memory quota: Memory timeouts: Physical RAM memory: 268.435.456 Swap file size: Not Applicable Server Configuration Information: Number of volumes on file server: Server ports: TCPIP Coprocessor: Not Available Operating System version: AIX 2 4 Notes version: Release 4.6.4a (Intl) Data file path: /datos/notes Server Load Statistics: Transactions in last minute: 402 Peak transactions per minute: 10.235 Time of last peak transactions per minute: 0x/xx/xxxx 20:05:58 Total transactions processed: 1.174.330 Number of current users: 35 Peak number of users: 45 Time of last peak number of users: 0x/xx/xxxx x1:33:06 Number of sessions dropped in mid-transaction: 1 Number of server tasks: 63 Server Tasks: Database Server: Perform console commands Database Server: Listen for connect requests on TCPIP Database Server: Perform housekeeping chores Database Server: Idle task Database Server: Server for Jose Ramon Al* Garrido/Desarrollo/UNIV Server for Monica Jx Arana/Contabilidad/UNIV on TCP/IP Server for L* Mx Sierra/Desarrollo/UNIV on TCP/IP Server for Fx J* Gaztexxx Odri*/Sistemas Server for Isaxx L???auri/Academica/UNIV on TCPIP [...blah, blah, blah, blah...] $$ No, no, todo esto no deberia estar a la vista, claro que la cosa empeora $$ cuando accedemos a los logs del servidor Fecha Usuario Direccion [Dia y hora] - pulgoso.ipb.csic.es Solicitud GET /proyectos/prcampo1.nsf/6292415a920634c0c125650e0037b536/$Body/0.f14?O penElement&FieldElemFormat=jpg HTTP/1.0 $$ Este pedazo de URL es una URL de Domino, ruta, nombre de base de datos, identificador, comando y parametros. Tochisimo de meter en el ezine. [Dia y hora] Jose lxxx06.lx.univ.es Solicitud GET /reloj.nsf/horario HTTP/1.0 $$ Lo interesante del log no es tanto aprender peticiones sino aprender $$ nombres de usuario desde Internet, repasando el log nos hacemos con unos $$ cuantos. Si alguno no lo ha cachado aun el resultado de esta evaluacion es un suspenso sonoro, de acuerdo que a fin de cuentas en una Universidad no hay nunca datos de interes :-> y que mas se perdio en Cuba pero esto no es de recibo. Server < Filename > DB Title > Replica ID > File Size > Free .... l*00 WEB.NSF Navegador C12565D3:005BFA0E 14.680.064 124.992 del Servidor l*02 WEBFAX.NSF Domino Fax C12566DB:0049C7DF 786.432 255.488 Server DB l*02 UTILS.NSF Utiles Varios C1256472:0048C988 524.288 246.336 Finaliza el concurso, un breve repaso a nuestro zurron indica que tenemos entre muchos regalos variados lo siguiente. Listado completo de las bases de datos (nombre, ruta completa, tama~o, estadisticas de uso, gerentes, servidor...) Informacion sobre el uso de los servidores ( carga, fecha de inicio, espacio en disco, memoria, sistema operativo, usuarios actuales, logs de uso...) Informacion variada ( id de usuarios, id de gerente, id de servidor, id de replicas, configuracion de eventos y alarmas, log de errores fatales..) Y eso en un rato con un navegador, no imagino que puede pasar si utilizo la poderosisima herramienta hacker 'whois' XDDD. Como inicio no da mucha confianza pero esto es una universidad, el mundo de los negocios sera otra cosa?. Verdad?. Antes de verlo, lo prometido es deuda. --**-- Algunas bases de datos interesantes de D/N --**-- WEBADMIN.NSF Administracion remota del servidor WEB.NSF Cache de paginas web solicitadas por usuarios LOG.NSF Informacion sobre el servidor EVENTS4.NSF Estadisticas y eventos STATREP.NSF Base de datos de estadisticas CATALOG.NSF Catalogo de bases de datos CERTLOG.NSF Log de certificaciones ADMIN4.NSF Base de datos de peticiones administrativas DOMLOG.NSF Actividades varias del servidor NAMES.NSF Public Address Book NTSYNC45.NSF Passwords generadas para el single sign-on con NT COLLECT4.NSF Para centralizar estadisticas de varios servidores MAILW46.NSF Base de datos de correo para el uso de navegadores web ...................... ...................... Buena suerte :-) --**--**--**--**--**--**--**--**--**--**--**--**--**--* DOMINO EN EL MUNDO CORPORATIVO =-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Solo nos queda encontrar un servidor Domino bancario, no es dificil hacerlo, lo encontramos en un banco, o e-banco?, de esos que van "tan rapido" por Internet. A toda pastilla y creciendo que es importante :->. Vamos a conectar usando la probada tecnologia hacker: http://domino.e-banco.com En la frente. Me pide nombre de usuario y password para conectar. :-?. No tengo ni una cosa ni otra y ademas ni idea de como conseguirlas. Un hacker podria usar aqui lo que se llama "advanced kung-fu skillz" es decir: brute forcing, spoofing, sniffing, hijacking, guessing, skating, skiing, surfing... (no se si todas son correctas, yo no entiendo de eso) Pero yo solo tengo el navegador y un pincho tortilla. Y actitud. De sobra. Un minuto despues ya estoy abriendo bases de datos en el servidor bancario Domino. Queda probado que los ordenadores 'sienten' la actitud. :-DD [ Siempre que no explico algo paso a paso me llueven los mailes de protesta, asi que ya lo explicare, al final. Mientras podeis tratad de adivinadlo vosotros, doy una pista en la parte teorica ] O sea que aqui estamos, despistados como siempre y pensando que donde diantre nos hemos metido?. Pues a preguntar que preguntando se llega a todas partes. Notes Licenses + Lotus Notes 1929 + Lotus Notes Server 3 + Unlicensed/Unknown 54822 Total 56754 Dejando de lado las consideraciones eticas de tener cincuenta y pico mil usuarios sin licencia (quiero creer que es porque no la necesitan), vemos que el corralillo esta concurrido. Cincuenta y siete mil pollos, uno mas no creo que se note. Name Company E-Mail CANELLAS S* , CARLOS AEAT CARLOS C* SANCHEZ @ N??O SANTIAGO P?, CESAR ELECTROLUX CESAR DE SANTIAGO* @ N??O * RODRIGUEZ, AR* ELECTROLUX ARS* RODR* @ N??O CAB* ESCU??, BEGO?? FIAT IBERICA BEGONA CAB* ESXX@ N??O FDEZ G., JUAN JOSE FIAT IBERICA J.J.F.G @ N??O LExx, PAOLO FIAT IBERICA PAOLO LEVI @ N??O M. RUIZ, ESPA* IDEAS FIJAS ESPAR* MAR* @ N??O ALA* GOMEZ, Jx LHYSA JO* ALAD* @ N??O GENERALITAT VALENCIANA GENE* VAL* @ N??O ................................ ................................ ................................ Hombre el primero de la lista tenia que ser de la agencia tributaria y ademas AEAT esta en TSAI (http://aeat.tsai.es), igual luego paso a darle un poquito en los morros a Timofonica para no perder la costumbre ;->. Vamos a ver que nos dicen de los usuarios, por ejemplo de .... PERSON: GENERALITAT VALENCIANA GENERALITAT VALENCIANA @ N??O Name MAIL First name: GENERALITAT VALENCIANA Mail system: POP or IMAP Middle initial: Domain: N??O Last name: Mail server: N??onet/N??o User name: GENERALITAT VALENCIANA Mail file: CORREO\163\ BI40824 BI40824.nsf Short name: ggeneralitatg.gvalenciana Forwarding address: Msg storage: Internet Mail Internet password: ...................................... ...................................... Tate, aqui hay tomate, alguien se leyo el capitulo donde se explica que los campos encriptados pueden aparecer en claro si se consultan en un navegador. No?. Es solo algo a tener en cuenta, la encriptacion a nivel de campo solo funciona con clientes Notes, ser pobre acaba teniendo sus humildes ventajas ;-) Digo yo que con tantos usuarios aqui dentro tendra que haber algun grupo creado y se me ocurre que seria bueno enterarme de cuales son. BESPEC_USR Usuarios Banca Espec BS001 6001 Andersen Consulting BS002 6002 Coopers & Lybrand BS003 6003 Zardoya Otis BS004 6004 Mc Kinsey BS005 6005 Musini-Bankers Trust BS006 6006 Asesores Bursatiles BS007 6007 B? ASEGURADORA DIRECTA (MADRID) BS010 6010 Andersen Consulting BS013 6013 Lilly BS014 6014 Ferrovial BS016 6016 Cefana BS021 6021 Fisher Rosemount BS022 6022 Ernst & Young BS023 6023 Interflora BS024 6024 Profit Gestion BS025 6025 Diario El Pais, S.A. BS026 6026 Sigla, S.A. BS029 6029 Norsistemas, S.A. BS030 6030 Refrescos Envasados, S.A. (Coca-Cola) BS031 6031 Union Electrica BS032 6032 Hospital San Rafael BS034 6034 Colegio Nacional de Opticos BS036 6036 Sociedad General De Autores BS037 6037 Securitas BS039 6039 Aena BS041 6041 Lucas Automotive BS042 6042 The Boston Consulting Group Ltd BS043 6043 Red Electrica Espa~ola BS044 6044 Microsoft Iberica SRL ............... y sigue, y sigue, y sigue .................... Mira tu donde se juntan todos, no sabia que hubiese tantas empresas en el pais. Y hablando de pais, otra vez me topo con El Pais. :-!!. Acaso me persigue Polanco!?. (Siento mencionar el nombre de Dios en vano) GROUP: BS025 Basics: Group name: BS025 Group type: Multi-purpose Description: 6025 Diario El Pais, S.A. Members: Fra??isco Hernanz Garci? Administration Owners: SYSTEM // Esto podria cambiar :-> Administrators: Foreign directory sync allowed: Yes Basta ya de perder el tiempo con la gente!. Somos o no somos autistas?. Pues a por las maquinas, tres eran tres los servidores... Network Server Title Administrator - Net1 N??oNet/N??o Ban????net-N??o SYSSRV N??oWork/N??o Correo de empresas SYSSRV Pluton/N??o ?ro? y N?x? SYSTEM ............................................. Correo de empresas, no me imagino que tarea puede desempe~ar un servidor con ese nombre, no me queda otro remedio que prestarle atencion. SERVER: N??oWork/N??o Basics Server name: N??oWork/N??o Server build number: Server title: Correo de empresas Administrators: SYSSRV, SYSTEM Domain name: N??o Routing tasks: Mail Routing Cluster name: Server's phone number(s): Master address book name: Server Location Information // seccion expandible Network Configuration Port Notes Network Net Address Enabled TCPIP Net1 194.x5.x.42 ENABLED ....................................................... ....................................................... Security Settings Compare Notes public keys against those stored in Address Book: No Allow anonymous Notes connections: No // da igual, no tengo Notes!! Check passwords on Notes IDs: Disabled Basics Mapping Host name: *x* Home URL: /?Open Bind to host name: Disabled HTML directory: domino\html DNS lookup: Disabled Icon directory: domino\icons Default home page: default.htm Icon URL path: /icons Allow HTTP clients CGI directory: domino\cgi-bin to browse databases: Yes CGI URL path: /cgi-bin Maximum requests over a single connection: 5 Number active threads: 40 $$ Allow HTTP clients to browse databases = YES!!!. Que bonito valor. Enable logging to Log file settings: Log files: Disabled Access log format: Common Domlog.nsf: Disabled Time format: LocalTime Log File Names Exclude From Logging Directory for log files: URLs: Access log: access-log Methods: Agent log: agent-log MIME types: Referer log: referer-log User agents: Error log: error-log Return codes: CGI error log: cgi-error-log Hosts and domains: $$ Y luego la gente se preocupa porque un cgi devuelva una ruta fisica $$ o su servidor devuelva su nombre y numero de version. Patetico. $$ De paso nos hacemos con la configuracion de los puertos de todos los $$ servidores, este listado corresponde a N??oNet WEB LDAP NEWS IMAP POP Port Number: 80 389 119 143 110 Port status: Disabled Enabled Enabled Enabled Enabled Name & password: Yes Yes Yes Yes Yes Anonymous: No Yes Yes N/A N/A SSL port number: 443 636 563 993 995 SSL port status: Disabled Disabled Disabled Disabled Disabled Cli* certificate: No No No No No Name & password: Yes No Yes Yes Yes Anonymous: Yes Yes No N/A N/A Entre lo que yo cojo y lo que ellos me dan ya estamos abriendo hueco en la estructura bancaria, seguimos con la potente tecnologia del lynx-color y el tecleado de URLs. Asombrosa sofisticacion hacker a su alcance. Name Server Database Envios Multiples N??oNet/N??o DISMAIL.NSF EST_INTER_BCORPORATIVA Pluton/N??o ban*\est_bcorporativa.nsf EST_INTER_CIBER???O Pluton/N??o ban*\estcf??o.nsf EST_INTER_CRISNOVA Pluton/N??o Ban*\f??onova.nsf EST_INTER_FFISCAL Pluton/N??o ban*\est_ffiscal.nsf EST_INTER_IMPN??O Pluton/N??o ban*\estn??o.nsf newsmanager Distribucion/Ban* internet\newsmgr.nsf N??oNet/N??o Stats N??oNet/N??o stats?x6.nsf Pluton/N??o Stats Pluton/N??o stats?3x.nsf Por aqui y por alli siguen cayendo cosas. SERVER CONNECTION: Pluton/N??o to RedAgencial/banco Basics Connection type: Local Area Network Usage priority: Normal Source server: Pluton/N??o Destination server: RedAgencial/banco Source domain: n??o Destination domain: banco Use the port(s): TCPIP Optional network address: 10.0.12x.x4 Scheduled Connection Routing and Replication Schedule: DISABLED Tasks: Mail Routing Call at times: 08.00 - 22.00 each day Route at once if: 5 messages pending Repeat interval of: 360 minutes Days of week: Sun, Mon, Tue, Wed, Thu, Fri, Sat $$ Estupendo mas IPs, mas dominios, mas Domino Servers que explorar en busca $$ de configuraciones erroneas, bases de datos, listas de usuarios... Como dice el anuncio de Pirelli: "La potencia sin control no sirve de nada". Tenemos un listado de dominios Domino, practicamente mapeada la red interna, aliases de los dominios, IPs de la intranet, listado de programas que se ejecutan en los servidores, certificaciones, rutas a bases de datos y los inevitables datos sobre los usuarios, grupos y servidores del dominio. El objetivo de ganancia de informacion se ha cumplido sobradamente, aunque la seguridad en este caso fuese mas elevada. Ha llegado el momento de dejar de escribir, los bancos no tienen mucho sentido del humor y no quiero preocuparlos. Por cierto, el dinero de los usuarios esta a salvo :-). Ni lo vi ni me interesa. CONCLUSIONES =-=-=-=-=-=- Que seria un estudio sin conclusiones?. La conclusion obvia es: 2 de 2 Es disculpable que una universidad se deja la cartera encima de la mesa, no deberia ser la norma pero tampoco importa mucho. En cuanto al banco claramente se han preocupado algo mas por la seguridad pero como hemos visto no lo suficiente. No hagais evaluaciones apresuradas, el problema no es que se pueda obtener esta informacion, el problema es **como** se obtiene. Con un navegador. Se podria disculpar si fuese necesario ser un 'guru' de Domino para llegar a esto, lamentablemente a mi me basto dos dias de leer guias para comenzar a encontrar huecos y sin ni siquiera usar o instalar Domino/Notes. No hace falta decir que algo falla, quiza todos estos programas son demasiados complejos para asegurarlos o puede que nadie este interesado en hacerlo. Al final fueron necesarios cinco dias de aprendizaje y un navegador, los administradores internos, la empresa de seguridad que (supongo) audito el site y todos aquellos cuyo trabajo era prever este tipo de incidentes no debian disponer de tanto tiempo. O quiza no tienen ningun navegador. Da que pensar. Y recordad, hagais lo que hagais. Tened cuidado ahi fuera. Paseante [ Nota Final: Sobre el saltarse la clave de acceso, se~ores expertos en seguridad y administradores del e-banco, nos vamos al manual de Domino y nos leemos *atentamente*, con toda la *atencion*, la parte en la que habla de accesos al servidor y de como interactuan con las ACL de una base de datos. Es un RTFM, pero RTFM con atencion ;-> ] -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- REFERENCIAS Publicaciones y URLs -<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>-<>- Guias electronicas en formato .pdf asi como direcciones web de donde obtener completa informacion sobre Lotus Domino/Notes. PUBLICACIONES =-=-=-=-=-=-= Getting started with the Domino Server Planning the Domino System Notes Database Management Configuring the Domino Network Lotus Notes and Domino 5.0 Security Infrastructure Revealed The Domino Defense: Security in Lotus Notes and the Internet URLs =-=- http://www.notes.net http://dominodeveloper.net http://www.eurodomino.com http://www.lotus.com/home.nsf/welcome/redbook http://www.searchdomino.com