# Kit del curso 14 · Seguridad de aplicaciones móviles

## Contenido

| Fichero | Para qué sirve |
|---|---|
| `apk-propio/resources/res/xml/network_security_config.xml` | Network Security Config de ejemplo de una app ficticia (`verdelinda`): tráfico en claro permitido, CA de usuario y un `pin-set` con un valor de relleno (no es de ningún servidor) |
| `movil/estatico/out/resources/AndroidManifest.xml` | Manifiesto ya decodificado de una build de depuración ficticia (equivale a lo que dejaría `jadx -d out`). Solo para repetir la última orden de la terminal de análisis estático |

No se reparte ningún APK. Con tu propia app de pruebas, genera estos ficheros con jadx.

## Requisitos

- `grep` (Linux, WSL o Git Bash). OpenSSL para la terminal del pin.

## Terminales que cubre

1. **Terminal: revisar la Network Security Config de un APK** (diapositiva «Comunicaciones: TLS, ATS y red»): `cd apk-propio/resources` y ejecuta el `grep` sobre `res/xml/*.xml`. Debe señalar `cleartextTrafficPermitted="true"`, la CA `user` y el `pin-set` con `expiration`. Variará: nada.
2. **Terminal: firma y manifiesto de un APK propio** (diapositiva «Análisis estático: manifiesto, jadx y MobSF») — **parcial**: `cd movil/estatico` y ejecuta solo `grep -nE 'debuggable|allowBackup' out/resources/AndroidManifest.xml`. Salen las líneas 9 y 10. En la diapositiva la línea 10 aparece con un espacio menos de sangría: es solo un ajuste visual de la diapositiva. Las dos primeras órdenes (`apksigner` y `jadx`) necesitan tu propio APK y las herramientas del SDK de Android; ver abajo.

## No reproducible con ficheros

- `apksigner verify` y `jadx` (misma terminal de firma y manifiesto): necesitan un APK de depuración propio y las herramientas instaladas. La diapositiva lo marca como salida de ejemplo.
- **Terminal: adb y Frida en un emulador de pruebas** («Análisis dinámico: adb, Frida y proxy»): necesita un emulador Android propio, `adb` y `frida-server`. La salida de la diapositiva es de ejemplo; solo sobre tu app o una de laboratorio.

## No necesita ficheros

- **Terminal: calcular la huella SPKI de un pin** («Pinning de certificados»): genera su propio certificado de laboratorio con OpenSSL. Variará: la huella cambia en cada ejecución (la tuya no coincidirá con la de la diapositiva). Funciona sin red.
