🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónDatos en el dispositivo y secretos incrustados
5 tareas · 45 min · Principiante
Lo que una app guarda en el teléfono y lo que lleva escrito dentro del paquete se puede leer sin hablar con ningún servidor. De ahí salen muchos hallazgos de un encargo móvil, y también mucho ruido: no todo lo que se lee es un fallo. Esta sala trabaja sobre lo que quedó de Gaviota Móvil en un dispositivo de pruebas del encargo y sobre las cadenas de texto del paquete. Todo está ya extraído; tú lees y decides qué se reporta, qué se anota y qué no merece una línea.
Objetivo de la sala
Lo que una app guarda en el teléfono y lo que lleva escrito dentro del paquete se puede leer sin hablar con ningún servidor. De ahí salen muchos hallazgos de un encargo móvil, y también mucho ruido: no todo lo que se lee es un fallo. Esta sala trabaja sobre lo que quedó de Gaviota Móvil en un dispositivo de pruebas del encargo y sobre las cadenas de texto del paquete. Todo está ya extraído; tú lees y decides qué se reporta, qué se anota y qué no merece una línea.El grupo MASVS-STORAGE cubre más que «la base de datos sin cifrar». Incluye cualquier dato sensible que la app deja donde otro pueda leerlo: archivos de preferencias, bases locales, la caché, los registros del sistema y las copias de seguridad. El criterio es doble: que el dato sea sensible (credenciales, tokens, datos de pago, datos personales) y que quede accesible para quien no debería leerlo.
Un dato que no es sensible, como el idioma o el tema de la pantalla, puede guardarse en claro sin que sea un hallazgo. Reportarlo solo infla el informe.
Responde para continuar
¿Qué se considera almacenamiento inseguro de datos en una app móvil?
Ver pista de ayuda
Dos condiciones a la vez: que el dato sea sensible y que lo pueda leer quien no debe.
Un token de sesión es la llave de la cuenta mientras no caduque: quien lo tiene actúa como el usuario sin conocer su clave. Guardarlo en un archivo de preferencias legible lo deja al alcance de cualquier copia del dispositivo o de cualquier app con acceso a esa carpeta. Para el hallazgo importa nombrar con precisión dónde está, para que el equipo del cliente lo encuentre sin buscar.
Abre el archivo de preferencias extraído del dispositivo de pruebas y localiza la clave que guarda la sesión.
Responde para continuar
¿Cómo se llama la clave del archivo de preferencias que guarda la sesión de la cuenta?
Ver pista de ayuda
El archivo es sesion.xml; entre sus cuatro claves, una guarda un valor que empieza por tk_.
Hay datos que no se deben guardar en el dispositivo aunque se guarden cifrados: el número completo de una tarjeta es el caso típico, porque el cliente puede mostrar los últimos cuatro dígitos sin guardar el resto. Cuando aparece uno, el primer paso es averiguar en qué tabla está y qué función de la app lo escribe, para que la corrección apunte a la causa y no solo a la fila.
Lee el volcado de la base local. Dos de las tres tablas son inocuas.
Responde para continuar
¿Qué tabla de la base local guarda el número de tarjeta completo?
Ver pista de ayuda
Mira las columnas de cada una de las tres tablas, no solo sus nombres.
Las cadenas legibles de un paquete incluyen cosas muy distintas: identificadores, direcciones, claves públicas y credenciales. La pregunta para cada una es qué puede hacer con ella quien la lea. Una credencial que abre un servicio de terceros con cargo a la empresa es un secreto expuesto; un identificador de la app o una clave pública hecha para repartirse no lo es.
Lee las cadenas del paquete y las notas del cliente. Una sola da acceso a un servicio con costo y sin restricción de origen.
Responde para continuar
¿Cómo se llama la cadena incrustada que da acceso a un servicio con costo para la cooperativa?
Ver pista de ayuda
Lee la nota que el cliente escribió bajo cada cadena: busca la que habla de cargo y de restricción de origen.
Ofuscar o esconder una clave dentro de la app solo la retrasa, así que lo que cuenta es cuánto daño permite. Algunas claves están pensadas para ir en el cliente: las de mapas, por ejemplo, se restringen al paquete de la app y a la API que usan, de modo que quien las extrae no consigue nada propio. Reportarlas como fuga crítica le enseña al cliente a ignorar tus hallazgos.
En las cadenas de Gaviota Móvil hay una clave de mapas con su nota del cliente.
Responde para continuar
La clave de mapas figura en las cadenas del paquete, restringida por el cliente al paquete y a la API de mapas. ¿Cómo la tratas?
Ver pista de ayuda
Pregúntate qué consigue quien la copie, no solo si se puede copiar.
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.