• Cuarzo.dev
  • Posts
  • Rabbit R1 ha cometido un Error de Programador Novato

Rabbit R1 ha cometido un Error de Programador Novato

Exponiendo datos sensibles y compromete la seguridad de sus dispositivos

Hoy me acaba de llegar mi dispositivo Rabbit R1.

Sí, me he comprado uno, a pesar del vídeo que hice cuando lo anunciaron criticándolo. Pero pese a todo, me puede la curiosidad de probar un nuevo aparato tecnológico, y como no es excesivamente caro, decidí quitarme el gusanillo de probarlo, y luego poder contároslo a vosotros en mi canal de YouTube.

Pues el mismo día que me llega el dispositivo, me encuentro con la noticia de que se han filtrado claves API de Rabbit exponiendo todos los datos de usuarios. Algo bastante grave, la verdad. Aun no he encendido el mío, y después de lo visto, tengo mis dudas.

El pasado 16 de mayo de 2024, el equipo de Rabbitude descubrió claves API hardcodeadas en el código base del Rabbit R1, lo que expone a los dispositivos a graves vulnerabilidades de seguridad.

Te cuento aquí toda la historia en formato vídeo:

Explicación para principiantes

Claves API: Son como contraseñas utilizadas para acceder a servicios específicos. Por ejemplo, para usar la API de OpenAI, necesitas una clave API que te identifique en cada llamada.

Hardcodeadas: Significa que algo está escrito directamente en el código. Esto es inseguro porque, si una clave se filtra o expira, es necesario modificar el código y actualizar la aplicación para todos los usuarios.

Para aprender más sobre conceptos básicos de programación échale un ojo a nuestro Diccionario del Programador.

Impacto de las Claves API Hardcodeadas en Rabbit R1

El descubrimiento de estas claves API hardcodeadas en el código del Rabbit R1 es extremadamente grave. Con estas claves, se puede:

  • Leer cada respuesta que todos los R1 han dado, accediendo a todo el historial de los dispositivos, incluyendo información personal.

  • Inutilizar todos los Rabbit R1.

  • Alterar todas las respuestas de los dispositivos.

  • Reemplazar la voz del R1.

  • ...y más.

Entre las claves encontradas están las de ElevenLabs (texto a voz), Azure (reconocimiento de voz), Yelp (consultas de reseñas) y Google Maps (consultas de ubicación).

Clave de ElevenLabs: Un Riesgo Mayor

La clave más preocupante es la de ElevenLabs, que ofrece privilegios completos. Con esta clave se puede:

  • Obtener el historial de todos los mensajes enviados.

  • Cambiar las voces.

  • Añadir o reemplazar textos.

  • Eliminar voces y hacer que el backend del R1 falle, inutilizando todos los dispositivos.

Respuesta de Rabbit

El equipo de Rabbit era consciente de esta filtración de claves API, pero no actuó durante meses. Tras la publicación de Rabbitude, Rabbit anunció en su Discord que estaban trabajando para resolverlo.

Today we were made aware of an alleged data breach. Our security team immediately began investigating it. As of right now, we are not aware of any customer data being leaked or any compromise to our systems.

If we learn of any other relevant information, we will provide an update once we have more details

Revocaron todas las claves, pero incluso hasta esto lo hicieron mal, ya que al hacerlo dejaron sin servicio a todos los usuarios durante bastante tiempo.

Y aunque revocaron el acceso a las claves filtradas, Rabbitude no había revelado todas las claves.

Una clave adicional de SendGrid, el servicio encargado de enviar correos electrónicos, permitió a Rabbitude enviar emails como administradores a varios periodistas, confirmando la brecha de seguridad.

Conclusión

Este incidente subraya la importancia de no hardcodear claves API en el código fuente.

Los desarrolladores tenemos que usar prácticas seguras, como variables de entorno o servicios de gestión de secretos, para proteger la integridad de nuestros sistemas y la privacidad de los usuarios.

Rabbit Inc debe mejorar mucho sus prácticas de seguridad para evitar futuras vulnerabilidades.

Reply

or to participate.