¡Yolo App y la exposición de información sensible por una base de datos mal configurada!

La búsqueda de vulnerabilidad es una carrera encantadora, se adquiere una visión diferente de la seguridad en internet y se aprende mucho sobre programación en diferentes lenguajes y frameworks con los que esta desarrollado el internet de hoy en día.

Detrás de toda pagina web, se esconde un código que bien podría utilizar API´s de terceros, levantar Javascript para funcionalidades necesarias como una conexión a una base de datos o múltiples funciones, según sea la naturaleza y orientación del sitio en cuestión.

Las bases de datos representan un activo de valor tangible que requiere buenas practicas de seguridad en internet para evitar filtraciones, errores y otros problemas que se vean presentes por malas configuraciones.
Firebase es una plataforma para el desarrollo de aplicaciones web y aplicaciones móviles desarrollada por Google en 2014.
Una Base de datos de Firebase mal configurada puede llevar a comprometer los datos de todos los usuarios registrados en una aplicación.

Firebase Realtime Database es una base de datos NoSQL alojada en la nube que permite almacenar y sincronizar datos entre los usuarios en tiempo real. Los datos en tiempo real pueden ser transmisiones en vivo, registros de inicio de sesión, chats de clientes, registros de aplicaciones, detalles de usuario, información de GPS y mucho más.

Firebase es fácil de integrar con aplicaciones de Android, aplicaciones de iOS y aplicaciones web. Proporciona varias funciones como "Almacenamiento en la nube", "Alojamiento", "Base de datos en tiempo real" y "Crashlytics" y muchas otras configuraciones para diferentes funciones, pero el enfoque principal está en la configuración de "Base de datos". 

De forma predeterminada, la configuración de la base de datos es privada, la base de datos en tiempo real necesita acceso de lectura y escritura para tener control sobre los datos, entonces, un error humano en esta parte podría exponer información sensible de miles o millones de personas y generar pérdidas dentro de la compañía.

Yolo es una App de Compras y Delivey desarrollada y mantenida por YOLOSA en Managua.

Yolo Web Site

¿No quieres o no puedes salir?… Despreocúpate Yolo llevo por ti.

Con YOLO, pide tus entregas a domicilio o para recoger de restaurantes favoritos. Entra a la app, registra tu usuario, dirección o selecciona tu ubicación actual. Fácilmente estarás en contacto con un mundo de servicios desde la palma de tu mano. Yolo el verdadero marketplace! #YoloLlevo, #YoloCompro, #YoloVendo
Yolo a como muchas otras Apps en Nicaragua utiliza Firebase como plataforma de almacenamiento en tiempo real de los datos de sus aplicaciones y es aquí donde inicia lo divertido (para mí)...

El código fuente de la Web de Yolo así también su aplicación incluyen la ruta de almacenamiento que poseen en Firebase, en donde se actualizan los datos de su app.

¿Cómo explotar una base de datos mal configurada?

Una vez que obtenemos la URL de la base de datos en tiempo real, podemos verificar la configuración agregando ¨.json¨ después de la URL, por ejemplo, si la URL de Firebase es:
https://ncaintelligence.firebase.com/
Se agrega ¨.json¨ después de la URL. (https://ncaintelligence.firebase.com/.json). Si recibimos un mensaje de error "Permiso denegado", significa que la base de datos está configurada correctamente. 

 misconfigured-blog-image5b

Si la URL modificada muestra el contenido de la base de datos, esto significa que el acceso de lectura es "Público" en esa base de datos, y los datos son visibles para cualquiera que tenga el enlace de la base de datos. Dado que la información se almacena en formato "JSON", se puede copiar fácilmente. 

La siguiente captura de pantalla muestra la base de datos de YOLO mal configurada en lectura y escritura, lo que causa filtración de datos en Firebase.


Con ¨cURL¨  se procede a realizar un POST para almacenar información en la base de datos en tiempo real de YOLO y como se puede ver en el cuadro rojo, el ¨test¨ fue positivo a escritura, dando apertura al almacenamiento de cualquier tipo de información aleatoria.

Se pueden realizar un sinnúmero de reacciones en la base de datos de esta aplicación, es importante tomar en cuenta la legislación nicaragüense, en la cual la Ley de Ciberdelitos* y Ley de Protección de Datos** son explicitas en cuanto al manejo de datos privados y de terceros, señalando la responsabilidad legal de quiénes brindan estos servicios a través de estas herramientas y dejan en indefensión a sus usuarios al dejar expuesta información privada sensible. 

* Ley No. 1042, Aprobada el 27 de Octubre de 2020
** Ley N°. 787, Aprobada el 21 de Marzo de 2012

¿Por qué una empresa debe garantizar un Protocolo de seguridad en su estructura Informática?

Las empresas no sólo se exponen a grandes pérdidas económicas, sino que en muchas ocasiones se ven también expuestas a importantes pérdidas de datos e información.
En la actualidad los ataques de hackers y ciberdelincuentes son una de las principales preocupaciones de las empresas en esta era digital. Importantes organizaciones, tanto públicas como privadas, han sufrido estos ataques a sus sistemas informáticos. Estar protegidos frente a virus, malware, ataques de denegación de servicio o ingeniería social no es nada sencillo, y muchos negocios se sienten indefensos y no sólo eso, se encuentran expuestos a estos y otros ataques. 

A nivel mundial, se ha demostrado que los ataques de ransomware están aumentando no solo en frecuencia, sino también en gravedad. Convirtiéndose en un negocio en auge para ladrones cibernéticos, que acceden a la red y secuestran datos y sistemas.

Wannacry Ransomware

Por supuesto, hablar de seguridad informática para empresas no solo implica mantener la información segura, sino también emplear una forma de mantener esos datos seguros. La Seguridad de datos incluye conceptos cómo encriptación de datos, tokenización y prácticas de gestión de claves que ayudan a proteger los datos en todas las aplicaciones y plataformas de una organización. 

Por ello, es prioridad que las empresas consideren la seguridad de datos como un punto de vital importancia. Los expertos en seguridad tienen entre sus objetivos proteger la red de las amenazas, administrar los servicios activos en la organización, monitorear la red y establecer normas de trafico que se adapten de acuerdo a las necesidades de la empresa. 

El objetivo de las medidas de seguridad debe ser:

Proteger la información de la empresa.
Garantizar la continuidad del negocio en el caso de que incidencia.
Minimizar los riesgos.

¿Por qué es mejor prevenir un ciberataque?

Cuando los sistemas informáticos de una organización reciben el ataque de un malware, por ejemplo; se inicia un proceso de recuperación de los sistemas informáticos de la organización, lo que lleva un estudio preciso para saber saber cuáles son los alcances de ese ataque, si fue automatizado o dirigido, sin olvidar que se debe invertir tiempo y mucho más dinero del que suponía crear un plan de contingencia contra amenazas cibernéticas.

Sin embargo, si una organización ha tomado las medidas necesarias y se ha asesorado por un equipo experto en el tema, podra estar mejor preparado ante un ataque informático, aunque actualmente, ninguna organización privada o pública se encuentra exenta de riesgos ante un ataque dirigido. Pero, lo mejor es estar preparado ante cualquier eventualidad. 

La seguridad de una empresa cuando se gestionan datos influye en la confianza de sus clientes, proveedores y colaboradores, así como en la propia subsistencia del negocio, por lo que la seguridad de la información debe ser un pilar esencial en cualquier estrategia de negocios de una organización.

@NCAIntelligence en Twitter y Facebook


Resultados del Analisis a 89 Sitios Web WordPress en Diferentes Industrias Nicaragüenses

Realicé un analisis a 89 sitios web WordPress pertenecientes a diversas industrias en Nicaragua, esto con el fin de determinar el tiempo tra...