Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Caso final — Tejón Salud

6 tareas · 45 min · Principiante

Otra aplicación, otra empresa, y nadie te dice dónde mirar. Tejón Salud es la aplicación que una red de clínicas ficticia reparte a sus pacientes para pedir cita y ver sus resultados. Tienes su paquete, su API de respaldo y un emulador, todo de laboratorio y aislado. Tu trabajo es el del analista completo: recorrer el paquete, el almacenamiento, el tráfico y la API, encontrar lo que de verdad importa, y entregar el informe con cada hallazgo y su mitigación, con el foco donde debe estar —la API—. Si el método se aprendió, aquí se transfiere; si memorizaste los hallazgos de Colibrí, aquí se nota, porque la aplicación, los datos y los fallos son otros. Todo es análisis autorizado sobre una aplicación propia, con el fin de que la clínica pueda corregirla.

0 de 6 · 0%

Objetivo de la sala

Otra aplicación, otra empresa, y nadie te dice dónde mirar. Tejón Salud es la aplicación que una red de clínicas ficticia reparte a sus pacientes para pedir cita y ver sus resultados. Tienes su paquete, su API de respaldo y un emulador, todo de laboratorio y aislado. Tu trabajo es el del analista completo: recorrer el paquete, el almacenamiento, el tráfico y la API, encontrar lo que de verdad importa, y entregar el informe con cada hallazgo y su mitigación, con el foco donde debe estar —la API—. Si el método se aprendió, aquí se transfiere; si memorizaste los hallazgos de Colibrí, aquí se nota, porque la aplicación, los datos y los fallos son otros. Todo es análisis autorizado sobre una aplicación propia, con el fin de que la clínica pueda corregirla.

Tienes el paquete de Tejón, su API y el emulador, y ninguna indicación. La tentación es saltar a lo llamativo —enganchar funciones para «romper» algo— pero eso mide resistencia del cliente, no dónde están los datos. El orden que transfiere el método es otro: abrir el paquete y leer lo que trae (rutas de la API, secretos, manifiesto), mirar qué guarda en el dispositivo, y poner el proxy para ver el diálogo con la API, que es donde viven los datos de los pacientes. El análisis del cliente sirve para encontrar la superficie; el veredicto se decide contra el servidor.

Empiezas por el análisis estático y el tráfico, no por enganchar. Con eso construyes el mapa de la API antes de probar nada contra ella.

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.

Preparando el escritorio…

Responde para continuar

Abres el caso de Tejón sin pistas. ¿Cómo empiezas para que el método se transfiera?

Ver pista de ayuda

Lo llamativo del cliente mide resistencia, no datos. Mapea la API primero; los datos se juegan en el servidor.

Mapeada la API de Tejón, pruebas la ruta que devuelve los resultados médicos: la app los pide por el identificador del paciente. Con tu sesión de paciente cambias ese identificador por otro y el servidor responde con los resultados de otra persona —análisis, diagnósticos, datos de salud—. Es un control de acceso roto sobre datos sensibles, y si los identificadores son correlativos, el alcance es toda la base de pacientes. Este es el hallazgo central del caso, y no estaba en ninguna parte del cliente: estaba en que el servidor no comprueba de quién es lo que pide.

Lo documentas con una muestra mínima que prueba el alcance, sin descargar datos de pacientes de más, y con la remediación en el servidor: comprobar en cada petición que el resultado pertenece a la sesión que lo pide.

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.

Preparando el escritorio…

Responde para continuar

Cambias el identificador de paciente en la API de Tejón y recibes los resultados médicos de otra persona. ¿Cómo lo tratas?

Ver pista de ayuda

El impacto es el alcance, probado con lo mínimo. El arreglo va en el servidor: comprobar de quién es cada recurso.

Tejón fija el certificado y, cuando montas el proxy, la aplicación deja de conectar hasta que saltas la fijación en tu emulador. Es fácil escribir «fijación vencida» como titular del informe, pero eso mediría una defensa del canal en tu propio dispositivo, no un fallo que exponga a los pacientes. La fijación cumplía su papel frente a intermediarios en la red; el problema de Tejón no es el canal —que va cifrado— sino lo que el servidor acepta una vez que la petición llega. Poner la fijación en el titular desviaría la atención del control de acceso roto, que es lo que hay que arreglar.

En el informe la fijación se menciona como lo que es —una defensa de canal que el analista salta en su equipo para poder mirar—, no como hallazgo. El titular es el acceso a datos ajenos en la API.

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.

Preparando el escritorio…

Responde para continuar

Saltas la fijación de certificado de Tejón para interceptar. ¿Qué lugar ocupa eso en el informe?

Ver pista de ayuda

Saltar la fijación en tu emulador no expone a nadie. El titular es lo que el servidor acepta: datos ajenos.

En el análisis estático viste que Tejón tiene una función de anulación de citas que la app solo muestra al personal de recepción, comprobando el rol en el cliente. Lo confirmas contra la API: llamas a la ruta de anulación con tu sesión de paciente, y el servidor anula la cita. El control de recepción vivía únicamente en la interfaz; el servidor no comprueba el rol. Un paciente podría anular citas ajenas hablando directo con la API. El hallazgo no es que la pantalla se pudiera abrir, es que la acción se ejecuta sin autorización en el servidor.

Se cierra en el servidor: la ruta de anulación verifica el rol derivado de la sesión y que la cita corresponda a quien la anula, denegando por defecto. Ocultar el botón en la app no habría cambiado nada.

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.

Preparando el escritorio…

Responde para continuar

Llamas a la ruta de anulación de citas de Tejón con sesión de paciente y el servidor anula la cita. ¿Cuál es el hallazgo y su cierre?

Ver pista de ayuda

Que la app oculte el botón no autoriza nada. La acción se ejecuta en el servidor, y ahí se verifica rol y propiedad.

Cierras el caso de Tejón con el informe para la clínica. El hallazgo que encabeza es el acceso a resultados médicos ajenos, por su impacto sobre datos de salud; le sigue la anulación de citas sin autorización; y se listan los de cliente —lo que hubiera de secreto o de dato local— con su peso real. Cada uno lleva su mitigación, y las que cierran el impacto van en el servidor: propiedad del recurso, rol desde la sesión, denegar por defecto. Las medidas de cliente —proteger el almacenamiento, no embeber secretos— se anotan donde el cliente es el lugar correcto; la ofuscación y el bloqueo por root, si aparecen, como fricción, no como cierre. El mensaje de la ruta entera queda en una línea del informe: arreglar la aplicación sin arreglar la API no cierra nada.

Si llegaste hasta aquí —mapeando la API antes de enganchar, probando el acceso a lo ajeno con muestra mínima, sin poner la fijación en el titular, y mandando las remediaciones de impacto al servidor—, el método de la ruta ya es tuyo.

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.

Preparando el escritorio…

Responde para continuar

Al cerrar el informe de Tejón, ¿cómo se ordenan y ubican las remediaciones?

Ver pista de ayuda

Ordena por impacto y cierra donde cierra: los datos se protegen en el servidor. El cliente y la fricción no son el titular.

El caso no se cierra con una impresión, se cierra con la prueba del hallazgo que encabeza el informe. Vuelve al laboratorio de Tejón, repite contra la API la petición de un resultado médico con un identificador de paciente que no es el tuyo, y comprueba que el servidor devuelve los datos de salud de otra persona. En la revisión de esa respuesta —el hallazgo central de toda la ruta— hay 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.

Preparando el escritorio…

Responde para continuar

Pide a la API un resultado médico con un identificador de paciente ajeno; en la respuesta que devuelve los datos de otra persona, escribe el código de la sala anotado.

Formato esperado: MOV-____

Ver pista de ayuda

El código acompaña al hallazgo central: la respuesta de la API con resultados médicos ajenos, no la anulación de la cita ni la fijación de certificado.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Preparando el escritorio…

16:24
Terminal (user@whoami)
user@whoami:~$
Tab Autocompletar ↑/↓ Historial
bash 5.2.21
Whoami-Labs OS v3.0.1 LTS · build bcc89e

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