🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónDel dato al punto peligroso
4 tareas · 35 min · Principiante
En el módulo 3 el análisis estático te señaló una línea y tú decidiste si era real. Aquí se abre el informe por dentro: los análisis de flujo no marcan una línea suelta, siguen un dato desde donde entra hasta donde puede hacer daño, y cada paso del recorrido queda escrito con su archivo y su línea. Con el repositorio de Naranjal Seguros, una aseguradora que gestiona siniestros, aprendes a leer ese recorrido y, igual de importante, a saber qué cosas no aparecerán nunca en él por muy bueno que sea el análisis.
Objetivo de la sala
En el módulo 3 el análisis estático te señaló una línea y tú decidiste si era real. Aquí se abre el informe por dentro: los análisis de flujo no marcan una línea suelta, siguen un dato desde donde entra hasta donde puede hacer daño, y cada paso del recorrido queda escrito con su archivo y su línea. Con el repositorio de Naranjal Seguros, una aseguradora que gestiona siniestros, aprendes a leer ese recorrido y, igual de importante, a saber qué cosas no aparecerán nunca en él por muy bueno que sea el análisis.Un análisis de flujo de datos trabaja con tres piezas. La fuente es el punto donde entra un valor que no controla el programa: un parámetro de la petición, un archivo subido, un mensaje de otro sistema. Los pasos son las asignaciones y llamadas por las que ese valor viaja, incluso de una función a otra y de un archivo a otro. El sumidero es la línea donde el valor produce un efecto delicado: se ejecuta como consulta, como comando o como ruta de archivo. Si entre la fuente y el sumidero hay un saneador que la herramienta reconoce (una conversión, una validación), el recorrido se corta y no hay hallazgo.
El informe de Naranjal escribe ese recorrido línea por línea. Leerlo es lo que permite decidir dónde conviene arreglar: en el sumidero, en un paso intermedio o en la fuente.
Responde para continuar
En el recorrido del hallazgo, ¿qué papel cumple la línea siniestros/repositorio.py:5?
Ver pista de ayuda
Fuente es dónde nace el dato, saneador es lo que lo comprueba y sumidero es dónde produce efecto. Mira qué hace esa línea con el texto.
Lo que distingue a un análisis de flujo de uno de patrones es que no se queda dentro de una función. En Naranjal el dato nace en un archivo, pasa por otro y se ejecuta en un tercero: ninguna de las tres funciones, mirada sola, parece grave. Por eso el informe lista los pasos intermedios, y por eso el arreglo puede ir en más de un sitio. También es la razón por la que a veces la herramienta pierde el rastro: cuanto más indirecta es la ruta, más fácil es que se corte.
Al revisar un hallazgo, recorre los pasos uno por uno y abre cada archivo que aparece; es el único modo de entender qué hace realmente el dato en el camino.
Responde para continuar
La traza del hallazgo cruza tres archivos. Escribe el nombre de la función de filtros.py por la que pasa el dato.
Ver pista de ayuda
Abre el informe de flujo y mira las líneas de tipo «paso»; después abre ese archivo para confirmar el nombre.
Un análisis estático reconoce lo que está escrito: un dato que va a un lugar delicado, una función peligrosa, un valor fijo donde no debería haberlo. No conoce las reglas del negocio: quién debe poder ver cada siniestro, qué estados son legales, si un reintegro es razonable. Y la ausencia de una comprobación no deja ninguna forma que una regla pueda reconocer. Tampoco ve lo que depende de la configuración en ejecución, ni el dato que hoy se guarda y mañana se usa desde otra pantalla, ni lo que un marco de trabajo resuelve por reflexión.
Esto no es un defecto de la herramienta sino el reparto de trabajo con la revisión humana, que es el tema de la sala 5.
Responde para continuar
La revisión manual encontró que cualquier usuario con sesión abre siniestros ajenos y el análisis no lo marcó. ¿Por qué?
Ver pista de ayuda
Compara con el hallazgo que sí se detectó. Allí había un dato yendo a un lugar delicado; aquí no hay ninguna línea peligrosa, hay una que falta.
A lo que el análisis no detecta se le llama falso negativo, y tiene una propiedad incómoda: no se puede contar con el propio análisis, porque por definición no lo vio. Solo se mide con otra fuente: la revisión manual, las pruebas autorizadas de seguridad o los incidentes. Un equipo maduro lleva una lista de lo que se le escapó y, por cada caso, se pregunta dos cosas: si una regla podría haberlo detectado (y entonces se escribe), o si pertenece a la revisión humana (y entonces se pone una pregunta en la lista del revisor).
La revisión manual de Naranjal contiene un caso detectado y otro que no. Saber cuál es cuál es el primer dato de esa lista.
Responde para continuar
Escribe el identificador del hallazgo de la revisión manual que el análisis estático no detectó.
Ver pista de ayuda
Cada entrada de la revisión manual dice al final si el análisis la detectó; lee las dos.
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.