🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónCómo se empaqueta y se firma una aplicación
4 tareas · 25 min · Principiante
Antes de buscar un fallo hay que saber qué se tiene entre manos. Una aplicación móvil es un archivo comprimido: dentro van el código compilado, las imágenes, los textos y un manifiesto que declara qué permisos pide y qué componentes expone. La firma que trae encima sirve para dos cosas —decir quién la publicó y garantizar que nadie la alteró después de firmarla—, y para ninguna más: no cifra el contenido ni lo esconde. En esta sala se trabaja con la aplicación de laboratorio Colibrí (el paquete que una empresa ficticia reparte a sus clientes) sobre un emulador en la nube, para entender qué garantiza la firma y qué queda a la vista de cualquiera que tenga el paquete. Es una sala de criterio: separar lo que la firma promete de lo que la gente cree que promete.
Objetivo de la sala
Antes de buscar un fallo hay que saber qué se tiene entre manos. Una aplicación móvil es un archivo comprimido: dentro van el código compilado, las imágenes, los textos y un manifiesto que declara qué permisos pide y qué componentes expone. La firma que trae encima sirve para dos cosas —decir quién la publicó y garantizar que nadie la alteró después de firmarla—, y para ninguna más: no cifra el contenido ni lo esconde. En esta sala se trabaja con la aplicación de laboratorio Colibrí (el paquete que una empresa ficticia reparte a sus clientes) sobre un emulador en la nube, para entender qué garantiza la firma y qué queda a la vista de cualquiera que tenga el paquete. Es una sala de criterio: separar lo que la firma promete de lo que la gente cree que promete.La firma de una aplicación es una prueba de origen e integridad: confirma que el paquete lo publicó quien dice, y que los bytes no cambiaron desde que se firmó. Si alguien modifica el paquete, la firma deja de cuadrar y el sistema lo rechaza al instalarlo. Lo que la firma no hace es ocultar nada: el contenido del paquete sigue siendo legible, porque firmar no es cifrar.
En el laboratorio tomas el paquete de Colibrí, lo abres como el archivo comprimido que es y ves su manifiesto, sus recursos y su código, todo sin descifrar nada. La firma estaba, y aun así leíste el interior entero.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Abres el paquete firmado de Colibrí y lees su contenido sin descifrar nada. ¿Qué te dice eso sobre la firma?
Ver pista de ayuda
Firmar no es cifrar. La firma dice quién publicó y que nada cambió; no esconde lo que el paquete lleva dentro.
El manifiesto es la ficha técnica del paquete: lista los permisos que pide la aplicación y qué componentes deja expuestos para que otras aplicaciones del dispositivo los invoquen. Un componente marcado como exportable puede ser llamado desde fuera de la aplicación; si además hace algo sensible sin comprobar quién lo llama, es una puerta abierta. Leer el manifiesto es leer la superficie de ataque declarada, antes de tocar el código.
En Colibrí el manifiesto declara exportable una pantalla interna que muestra datos de la cuenta. Ese dato, por sí solo, es un hallazgo reportable: una aplicación cualquiera del teléfono podría abrir esa pantalla.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
El manifiesto de Colibrí marca como exportable una pantalla interna con datos de la cuenta. ¿Qué significa y cómo se corrige?
Ver pista de ayuda
Exportable = invocable desde fuera de la app. El arreglo es no exportar lo interno, o proteger quién puede llamarlo.
Como el paquete se puede abrir, también se puede modificar y volver a comprimir. Pero al reempaquetarlo hay que firmarlo de nuevo, y la única firma disponible es una propia, no la del editor original. El sistema instalará ese paquete modificado solo si se desinstala el legítimo, y cualquier verificación de origen del lado del servidor vería una firma distinta. Reempaquetar sirve para analizar y para probar hipótesis en el laboratorio; no sirve para hacerse pasar por la aplicación auténtica ante quien comprueba la firma.
En el laboratorio reempaquetas Colibrí con un cambio y lo instalas en el emulador con tu propia firma. Funciona para estudiarlo; su huella de firma ya no es la del editor.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Reempaquetas Colibrí con un cambio y lo instalas en el emulador firmándolo tú. ¿Qué has demostrado y qué NO?
Ver pista de ayuda
Al reempaquetar firmas tú. La firma de origen es otra; sirve para analizar, no para suplantar al editor.
Abre el laboratorio y lee el manifiesto del paquete de Colibrí. Entre las pantallas que declara, aísla la única pantalla interna que quedó marcada como invocable desde fuera: junto a esa línea el analista anotó un código de la sala. Escríbelo tal cual.
Esta tarea se hace en el laboratorio
Un escritorio Linux con terminal, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
Lee el manifiesto, localiza la pantalla interna de cuenta que quedó exportable y escribe el código de la sala anotado junto a ella.
Formato esperado: MOV-____
Ver pista de ayuda
El código está en la revisión del analista, en la línea del componente interno que no debería ser exportable; no en la teoría de la tarea.
Preparando el escritorio…
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.