La semana pasada os explicamos que un usuario de GrapheneOS había sido detenido en EEUU por usar la clave de coacción, este proceso irreversible borra las claves de derivación criptográficas, haciendo imposible la recuperación de información. Sin embargo, la Fundación GrapheneOS ha indicado que este método debería ser usado solamente como último recurso, ya que se podrían enfrentar penas legales. También han explicado que el propio sistema ya cuenta con defensas muy sólidas para evitar la extracción de datos. Hoy en RedesZone os vamos a explicar todas las medidas de seguridad, y también lo que los usuarios han propuesto para mejorar el funcionamiento de la clave de coacción que está dando tanto de qué hablar.
GrapheneOS es un sistema operativo para smartphones basado en Android, pero que ha sido diseñado específicamente para proporcionar la mejor privacidad y seguridad a sus usuarios, pero también priorizando la usabilidad. Este sistema ha introducido a lo largo de los años mejoras importantes en cuanto a privacidad y seguridad, con el objetivo de resistir ataques reales de herramientas de extracción forense como Cellebrite, ampliamente utilizadas por fuerzas policiales y servicios de inteligencia en numerosos países.
Cómo funciona la seguridad de GrapheneOS
La base de la seguridad y privacidad de GrapheneOS la obtiene del proyecto AOSP (Android Open Source Project), es decir, a la seguridad estándar proporcionada por el sistema Android 17, pero también usando el hardware más seguro disponible para Android. Ahora mismo, solamente los Google Pixel ofrecen las funciones de seguridad de hardware y las actualizaciones requeridas por GrapheneOS, no obstante, en 2027 esto cambiará porque han hecho una alianza con Motorola Mobility y usando la plataforma de Qualcomm.
La seguridad y privacidad de este sistema operativo, radica en diferentes características de seguridad, las cuales trabajan conjuntamente para evitar la extracción de datos por parte de herramientas forenses.
- Cifrado del almacenamiento: tiene un cifrado de almacenamiento muy robusto, que ofrece una gran protección para los datos. La seguridad radica en un PIN o contraseña que configura el usuario, más funciones de derivación de claves que se almacenan en el chip hardware del terminal. Un posible atacante no podrá romperlo directamente, se necesitaría un exploit para el sistema operativo cuando esté en estado «after first unlock» o desbloqueado por primer vez después de un reinicio, o bien atacar por fuerza bruta el PIN o la contraseña.
- Limitación de intentos de PIN o clave: el sistema operativo Android 16 QPR2 y posteriores, tienen un elemento seguro que implementa una limitación de la tasa de intentos erróneos de PIN o contraseña, añadiendo un retraso a cada intento adicional. Los primeros cinco intentos no tienen ningún retraso, por temas de usabilidad. Sin embargo, a partir de ese momento empieza a retrasar los intentos realizados. Por ejemplo, después de 10 intentos tendremos que esperar 4 horas, y después de 15 intentos tendremos que esperar 41 días. Solamente se permiten 20 intentos de PIN o contraseña, por lo que la fuerza bruta se vuelve inservible.
- Actualizaciones robustas: antes de poder actualizar el sistema operativo, es necesario que el propietario se autentique con la contraseña maestra. No importa que haya una firma válida y un número de versión mayor en el firmware, es totalmente necesario introducir la clave maestra. El propósito es que cualquier Gobierno pueda eludir la limitación de intentos de PIN coaccionando la creación de una actualización de firmware que elimine los límites.
- Longitud de contraseña: este sistema operativo aumenta el límite de caracteres de 16 a 128, esto permite usar contraseñas más robustas y largas, aumentando la seguridad. Con el objetivo de evitar «debilitar» esta clave robusta al usar desbloqueo biométrico (huella dactilar, por ejemplo), el sistema crea un PIN de huella dactilar como segundo factor opcional, además, se reducen los intentos de huella de 20 a 5, incluyendo los intentos del PIN del segundo factor. Esto permite usar unas 6-8 palabras aleatorias para la clave maestra como desbloqueo principal, y huella dactilar más un PIN corto para desbloqueo sencillo.
- Protección frente ataques 0 day: los ataques 0-day son los que no se conocían hasta el momento, y hasta que no lo arregla el fabricante y se distribuye un parche, no queda solucionado. En el caso de este sistema operativo, el sistema usa un sistema de gestión de memoria más robusta y otras funciones, generalmente usa funciones de seguridad basadas en hardware para protegernos contra estos ataques.
- Protección contra el acceso físico: las principales herramientas forenses hacen uso del puerto USB para acceder al sistema de archivos y extraer toda la información. Este sistema operativo bloquea nuevas conexiones USB a nivel de software y hardware de forma predeterminada. Mientras está bloqueado no se puede usar el USB para datos, a no ser que ya estuvieran establecidas mientras estaba desbloqueado.
Otras medidas de seguridad que han incorporado con el objetivo de proteger dispositivos bloqueados, es un «temporizador de reinicio«. Esta funcionalidad puede ser configurada entre 10 minutos como mínimo y 3 días como máximo, por defecto está en 18 horas, y lo que hace es devolver el dispositivo al estado «Before First Unlock«, donde requiere la contraseña maestra para desbloquear el smartphone. Es como si fuera un «reinicio» del sistema, borrando los datos de la memoria RAM. Además, también han añadido el borrado de memoria para arrancar en modo fastboot, además, tanto Apple como Google también han añadido esta funcionalidad en las últimas versiones.
El sistema operativo Android usa claves de cifrado separadas para cada usuario secundario, y también para el «Espacio privado«. GrapheneOS lo que hace es añadir soporte para poner ambos en modo «Before First Unlock» sin reiniciarlo, es como cerrar la sesión en el smartphone y borrar los datos de la RAM. No obstante, el equipo de desarrollo también indica que es mucho mejor que el dispositivo se reinicie, para devolver al usuario principal al modo reposo, limpiar la RAM completamente etc.
| Medida de seguridad | Cómo funciona | Ataque mitigado |
|---|---|---|
| Cifrado robusto de almacenamiento | Utiliza PIN/contraseña más claves derivadas en hardware (Titan M2). | Extracción directa del chip de memoria (chip-off). |
| Limitación de intentos de PIN | 20 intentos máx.; retrasos exponenciales: 4 h tras 10 intentos, 41 días tras 15. | Ataques de fuerza bruta al PIN/contraseña. |
| Actualizaciones protegidas | Requiere autenticación del propietario incluso con firmware firmado. | Firmware malicioso ordenado por un gobierno. |
| Bloqueo de USB con pantalla bloqueada | Nuevas conexiones USB de datos denegadas por software y hardware. | Herramientas forenses que usan el puerto USB. |
| Temporizador de reinicio automático | Tras el tiempo configurado (18 h por defecto), el dispositivo vuelve al estado Before First Unlock y borra la RAM. | Explotación de datos en RAM en estado After First Unlock. |
Finalmente, tenemos la función de contraseña de coacción como último recurso, el cual ya os hemos explicado en RedesZone. Esta función no borra los datos del almacenamiento, lo que borra con las claves criptográficas de derivación para que todo el contenido del smartphone sea ilegible. El equipo de GrapheneOS dice que hay que usar esta función con mucho cuidado, porque nos podríamos enfrentar a consecuencias físicas o legales por borrar el dispositivo. Además, no se requiere usar esta función para proteger los datos del dispositivo, debería ser usada como última opción.
En la web oficial de características de GrapheneOS puedes ver todas las funciones de seguridad y privacidad implementadas.
¿Cómo se podría mejorar la función de clave de coacción?
A raíz de la detención de un usuario acusado de usar la contraseña de coacción en su smartphone, muchos usuarios han propuesto mejoras para poder «ocultar» que se ha realizado un borrado seguro. Por ejemplo, el usuario Allan en X, ha indicado que no debería ser evidente para el atacante que se activó esta función, y que se debería abrir una pantalla de inicio inofensiva, mientras se borra todo en segundo plano.
Allan@niemerg“duress” password is incorrectly designed—it shouldn’t be apparent to the attacker that it was triggered and should instead open to an innocuous and data free home screen while nuking everything in the background https://t.co/bnmjv8euq3Smartphones sans Google (GAFAM) (@Sans_Google) on XDe x.com27 de julio, 2026 • 22:03
47.1K
68
Sin embargo, GrapheneOS ha contestado que «no ocultaría que ocurrió un borrado, y ayudaría a los atacantes a explotar y recuperar datos del dispositivo«. Han declarado que muchas personas han propuesto variaciones de esta propuesta cientos de veces durante años, pero ninguna de estas propuestas resistiría contra software forense especializado, además, darle al atacante acceso a un perfil «señuelo» facilitaría enormemente que exploten el dispositivo entero. Sin un apagado o reinicio, un dispositivo que previamente estaba en estado «After First Unlock» sería muy vulnerable a la extracción de datos.
Si hubiera un perfil señuelo, todas las claves de cifrado están cargadas en memoria, y las aplicaciones que se ejecutan en él podrían continuar funcionando indefinidamente. Por este motivo, un atacante podría recuperar los mismos datos que antes de borrar las claves de derivación de la función de «contraseña de coacción». GrapheneOS no tiene acceso a software forense como Cellebrite, mientras que los creadores de este software sí tienen acceso a GrapheneOS para poder explotar vulnerabilidades, así que no quieren dejar su seguridad en «seguridad por oscuridad», es decir, sin saber qué es lo que hay realmente.
Las mejores opciones para proteger tu smartphone frente a estos ataques son:
- Una frase de contraseña fuerte y un PIN de huella dactilar como segundo factor de autenticación.
- Reducir el temporizador de reinicio automático del dispositivo para que esté en modo «Before First Unlock».
Como podéis ver, esta característica de «contraseña de coacción» funciona como debería, y cualquier otra idea como crear un perfil secundario no es factible según el equipo de desarrollo. Cuando se introduce la clave de coacción, el sistema no muestra ninguna advertencia especial, solamente aparece un mensaje de PIN incorrecto. Al reiniciar el dispositivo, pedirá realizar la configuración inicial del dispositivo.
