4.000 apps Android exponen millones datos a través de Firebase

Adquirido por Google en 2014, Firebase es una plataforma móvil que ayuda a los usuarios a desarrollar aplicaciones de forma rápida y segura. Piensa en ella como la plataforma de producción de aplicaciones elegida por un gran número de desarrolladores. Estos aprovechan la base de datos en tiempo real alojada en la nube que permite un fácil almacenamiento y sincronización de datos entre usuarios. Hace que la colaboración multiplataforma sea muy fácil; también lleva el desarrollo de aplicaciones sin servidor a las masas y es fuerte en la seguridad basada en el usuario.

Si es así, los desarrolladores configuran todo de forma segura en primer lugar. Una nueva investigación de Comparitech sugiere que las configuraciones erróneas comunes de las bases de datos de Google Firebase están exponiendo información confidencial. Estas incluyen contraseñas, números de teléfono y mensajes de chat, a cualquiera que quiera mirar.

¡Esto es lo que necesitas saber!

El problema de error de configuración de la aplicación de Android

4.000 apps Android exponen millones datos a través de Firebase

Un equipo de investigación de seguridad de Comparitech dirigido por Bob Diachenko analizó una muestra de 515,735 aplicaciones de Android de la tienda Google Play. De estos, 155,066 estaban usando Firebase. Hablé con Diachenko, quien confirmó que de la muestra que estaba usando Firebase, unas 11,730 de esas aplicaciones estaban exponiendo esa base de datos de Firebase públicamente.

Profundizando aún más, 9.014 incluía los permisos de escritura necesarios para permitir a un atacante potencial modificar datos, incluyendo agregarlos o eliminarlos, así como simplemente verlos o descargarlos. Y hablando de eso, el análisis de Comparitech reveló que 4,282 de las aplicaciones estaban filtrando información confidencial.

Según el informe, los datos expuestos incluían más de 7 millones de direcciones de correo electrónico y casi la misma cantidad de mensajes de chat. Luego están los 4.4 millones de nombres de usuario y 1 millón de contraseñas a considerar, junto con 5 millones de números de teléfono.

Todo lo cual es lo suficientemente preocupante como estos son grandes números, pero deben ser puestos en alguna perspectiva. Se ha estimado que más de 1.5 millones de aplicaciones estaban usando la plataforma Firebase, en Android e iOS, en marzo de 2020. Incluso si extrapola de los números de análisis, como lo ha hecho Comparitech para llegar a un total de 24,000 aplicaciones de Android que potencialmente filtran datos confidenciales a través de tales errores de configuración, eso es solo el 1.6% de todas las aplicaciones que usan Firebase y el 0.94% de todas las aplicaciones disponibles para descargar desde Google Play.

Buscar esas aplicaciones expuestas de la base de datos de Firebase

Los investigadores de Comparitech pudieron descubrir las aplicaciones que habían expuesto públicamente las bases de datos al buscar primero en los recursos de la aplicación cadenas de texto indicativas del uso de Firebase. A partir de ahí, agregar una solicitud a la URL de la base de datos permitió acceder a las bases de datos públicas a través de la API REST de Firebase para los datos almacenados. Los investigadores querían obtener una respuesta de acceso denegado, ya que esto indicaría una exposición no pública, pero como muestra el informe, terminaron con el contenido completo de la base de datos devuelto con demasiada frecuencia. Luego, los investigadores buscaron información confidencial que se verificó manualmente en busca de falsos positivos.

«Todos los datos a los que se accedió fueron destruidos», dijeron los investigadores, asegurando que la investigación cumpliera con «los estándares y procedimientos de sombrero blanco». Para revelar cualquier acceso de escritura a las bases de datos, se utilizó una solicitud PUT para crear un nuevo nodo y luego eliminarlo.

Mitigar el riesgo de error de configuración

4.000 apps Android exponen millones datos a través de Firebase

Al igual que con todos los problemas de la base de datos con fugas que se pueden rastrear hasta un error de configuración, el consejo de mitigación parece bastante simple: obtener la configuración de la base de datos correcta la primera vez. Desafortunadamente, las cosas rara vez son tan simples como parecen.

Entonces, claro, el consejo de mitigación ofrecido a los investigadores en este caso de implementar las reglas adecuadas de la base de datos; también evitar que el acceso no autorizado acceda a datos confidenciales es correcto. Recomendar que los desarrolladores de aplicaciones sigan las pautas de «Seguridad y Reglas» establecidas en la documentación de Firebase de Google debería ser obvio, pero no lo es.

Esto se ha demostrado una y otra vez, con bases de datos en línea de todo tipo mal configuradas y dando lugar a informes de datos que se filtran públicamente. De hecho, a principios de este año, se informó que un sorprendente 82% de las «vulnerabilidades» de seguridad se debieron a errores de configuración incorrecta de un tipo u otro.

Entonces es un problema de desarrollador, ¿verdad?

Aparte del hecho de que jugar el juego de la culpa aquí no es particularmente útil, tampoco es tan blanco y negro como eso.

«Cualquiera que no piense que el desarrollo de TI y software no es un proceso iterativo simplemente no comprende cómo funciona todo», dice Ian Thornton-Trump, CISO de Cyjax, «no se trata del error, se trata de cómo se recupera de equivocarse y hacerlo mejor «.

El experto en seguridad John Opdenakker está de acuerdo y dice que lo que es útil es «un ciclo de vida de desarrollo de software seguro. ¿La razón? Incorpora seguridad en el proceso y, como tal, se puede planificar el tiempo tan necesario para la seguridad».

Si tenemos que culpar a alguien, o más bien a algo, entonces el tiempo tiene que estar al frente y al centro. El capacitador de seguridad de aplicaciones y co-líder del proyecto de Open Web Application Security Project (OWASP) Escocia, Sean Wright, está seguro de eso.

«Una cosa que he visto tantas veces es que muchos desarrolladores están bajo una presión constante para cumplir», explica Wright, «Esto en última instancia significa que tomarán el camino más corto para cumplir».

Esto significa que no es raro que los desarrolladores de aplicaciones consulten ejemplos existentes de implementación de tecnología en lugar de la documentación original en sí.

«Este no es un problema si el ejemplo es correcto y seguro», dice Wright, «pero en muchos casos, este no es el caso. Los desarrolladores necesitan entender qué están haciendo, pero dadas las presiones de tiempo que están debajo, esto a menudo no se puede lograr «.

¿Qué dice Google sobre el riesgo de datos de configuración incorrecta de Firebase?

Los investigadores de Comparitech informaron a Google de los hallazgos del informe el 22 de abril y recibieron la siguiente declaración en respuesta:

«Firebase proporciona una serie de características que ayudan a nuestros desarrolladores a configurar sus implementaciones de manera segura. Proporcionamos notificaciones a los desarrolladores sobre posibles configuraciones erróneas en sus implementaciones y ofrecemos recomendaciones para corregirlas. Nos estamos comunicando con los desarrolladores afectados para ayudarlos a resolver estos problemas».

También me puse en contacto con Google, y si recibo algún comentario adicional, actualizaré este artículo en consecuencia.

:)