martes, marzo 21, 2017

Big Data Security Tales: Apache CouchDB Relax.... o no.

Han pasado unos meses desde que escribí el último artículo dedicado a la serie de Big Data Security Tales que centré en Kibana y ElasticSearch, así que hoy es un buen día para volver a ella. En concreto, gracias a una referencia que mi amigo rootkit me ha enviado sobre los interfaces de administración de las bases de datos CouchDB, que se usan en muchos entornos web.

Figura 1: Big Data Security Tales: Apache CouchDB Relax... o no

El motor CouchDB se basa en un motor NoSQL para entornos de BigData especialmente diseñados para aplicaciones web, donde la sencillez de instalación y uso priman por encima de todo. Desde el año 2008 es un proyecto de Apache, y localizar los paneles de administración en la web es sencillo haciendo un poco de Hacking con Buscadores.

Figura 2: Buscando servidores CouchDB en Shodan

Como se puede ver, buscando en Shodan por su Well-Known Port rápidamente salen casi 4.000 servidores en los que está desplegado dicho motor de CouchDB, y, como se puede ver en algunos de los resultados, es posible acceder a los nombres de las bases de datos que hay en el catálogo porque no están fortificados la mayoría.

Figura 3: Buscando servidores CouchDB en Google con el Truco de la Barra

En cualquier instalación en la que el interfaz web de administración de CouchDB esté abierto a Internet, se puede acceder a la lista de las bases de datos entrando en el directorio /_utils/, tal y como se puede ver en la imagen siguiente.

Figura 4: Cientos de bases de datos en un servidor CouchDB

A partir de ese punto, lo único que debería realizar un atacante es comprobar a qué puede y a que no puede acceder, simplemente navegando por las diferentes bases de datos y explorando los documentos almacenados en cada una de las bases de datos creadas.

Figura 5: Documentos en formato clave-valor en bases de datos NoSQL sobre CouchDB

Por supuesto, lo que se puede encontrar, teniendo en cuenta que está especialmente centrado en proyectos web, está relacionado desde entornos e-commerce hasta aplicaciones web de gestión masiva de datos, con mucha información, y por supuesto con datos de las cuentas de usuarios de las distintas aplicaciones soportadas.

Figura 6: Datos de cuentas de usuarios en bases de datos CouchDB

El número de sitios que, a día de hoy, está abierto al publico en las instalaciones de CouchDB es muy alto, así que si estás haciendo uso de uno de estos motores en tus proyectos web, más vale que revises qué partes están abiertas para cualquier usuario de Internet, para evitar sorpresas.

Figura 7: Claves en texto plano almacenadas en bases de datos CouchDB...relax

Aprovecho también para dejaros la lista completa de artículos dedicados a la serie de Big Data Security Tales, por si alguno de ellos te pudiera servir de utilidad con el objetivo de fortificar tus entornos de Big Data:
- Big Data Security Tales: ¡Vigila que tu MongoDB no le de tus datos a cualquiera! (Level 100)
- Big Data Security Tales: Cómo funcionan las MongoDB Injection
- Big Data Security Tales: MongoDB y Cassandra (Level 101)

- Big Data Security Tales: Apache Hadoop expuesto por no configurar HUE (Level 102)
- Big Data Security Tales: Django en HUE en modo DEBUG y con Directory Listing (Level 103)
- Big Data Security Tales: Las Interfaces de acceso al HDFS
- Big Data Security Tales: Apache Amabari Default Admin
- Big Data Security Tales: WSO2 Carbon y la ayuda para el Login
- Big Data Security Tales: Los Known-Bugs en WSO2 Carbon Server
- Big Data Security Tales: Kibana & ElasticSearch objetivos del ransomware
- Big Data Security Tales: Apache CouchDB Relax... o no
- Big Data Security Tales: Riak NoSQL Database
Saludos Malignos!

No hay comentarios:

Entrada destacada

10 maneras de sacarle el jugo a tu cuenta de @MyPublicInbox si eres un Perfil Público

Cuando doy una charla a algún amigo, conocido, o a un grupo de personas que quieren conocer MyPublicInbox , siempre se acaban sorprendiendo ...

Entradas populares