🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónDependencias directas y transitivas
4 tareas · 40 min · Principiante
Una aplicación moderna es en su mayor parte código que no escribió nadie del equipo: bibliotecas que el proyecto pidió y bibliotecas que esas bibliotecas pidieron a su vez. Un escáner de dependencias lee ese árbol y lo compara con una base de vulnerabilidades conocidas. En esta sala lees el resultado de ese escaneo sobre dos proyectos de Avellana Pagos, una empresa ficticia de cobros para comercios, y aprendes a responder tres preguntas que el informe no contesta solo: de dónde llegó el paquete, qué versión exacta corre y a quién le toca moverlo. Todo es lectura de un informe de ejemplo en la consola; no se ejecuta nada contra ningún sistema.
Objetivo de la sala
Una aplicación moderna es en su mayor parte código que no escribió nadie del equipo: bibliotecas que el proyecto pidió y bibliotecas que esas bibliotecas pidieron a su vez. Un escáner de dependencias lee ese árbol y lo compara con una base de vulnerabilidades conocidas. En esta sala lees el resultado de ese escaneo sobre dos proyectos de Avellana Pagos, una empresa ficticia de cobros para comercios, y aprendes a responder tres preguntas que el informe no contesta solo: de dónde llegó el paquete, qué versión exacta corre y a quién le toca moverlo. Todo es lectura de un informe de ejemplo en la consola; no se ejecuta nada contra ningún sistema.Una dependencia directa es la que alguien escribió en el manifiesto del proyecto: el archivo donde se declaran las bibliotecas que se piden. Una transitiva es la que llegó arrastrada porque otra dependencia la necesita. Nadie del equipo la eligió, pero está en la aplicación con el mismo peso que las demás.
Esto cambia el trabajo del analista. Cuando el informe marca una biblioteca que no aparece en el manifiesto, no es un error del escáner: es una transitiva. Y la corrección casi nunca consiste en editarla a mano, sino en actualizar la dependencia directa que la trae, o en forzar una versión distinta con una regla explícita del proyecto.
Responde para continuar
El informe marca una biblioteca que no figura en el manifiesto del proyecto. ¿Qué significa y cómo se corrige normalmente?
Ver pista de ayuda
Lo que llega arrastrado por otra biblioteca está en la aplicación aunque nadie lo haya escrito. Mira quién la trae.
Para mover una transitiva hay que saber quién la trae. Es la columna que convierte «hay que actualizar lodash» en una petición concreta: «actualiza este paquete directo, que es el que lo arrastra».
Abre el escaneo de dependencias de Avellana. En el portal de comercios hay dos versiones del mismo paquete de utilidades, cada una traída por una dependencia distinta. Interesa la que el escáner marcó, no la otra.
Responde para continuar
¿Qué dependencia directa arrastra la versión de lodash que el escáner marcó en el portal? Escribe solo su nombre.
Ver pista de ayuda
Cruza los hallazgos de la tabla hallazgos_sca con las filas de dependencias que tengan ese paquete y esa versión. La columna traido_por dice el origen.
El manifiesto dice qué se pidió, a menudo con un rango («cualquier versión 4 o superior»). Lo que corre de verdad es lo que se resolvió al instalar, y eso lo fija un segundo archivo, el de bloqueo, que anota la versión exacta de cada paquete, directo o transitivo. Escanear solo el manifiesto produce dos errores opuestos: marcar una versión que no es la que quedó instalada, o pasar por alto una transitiva que el manifiesto ni nombra.
Por eso el escáner de un repositorio debe leer el archivo de bloqueo o las dependencias ya resueltas. Y por eso el mismo paquete puede salir dos veces, con versiones distintas, cada una con su propio veredicto.
Responde para continuar
¿Qué debe leer un escaneo de repositorio para saber qué versión exacta de cada paquete correrá?
Ver pista de ayuda
El manifiesto puede pedir un rango. La versión que de verdad se instaló queda anotada en otro sitio.
El número CVSS dice la gravedad en abstracto. El catálogo KEV de CISA dice algo distinto y más útil para priorizar: que hay explotación observada en el mundo real. Cruzar ambos es el primer filtro de este módulo, y todavía no es el veredicto: antes de decidir hay que comprobar si esa biblioteca se carga y si alguien puede llegar a ella, que es lo que se ve en las salas siguientes.
Cuenta, en el informe de Avellana, cuántos hallazgos tienen su CVE en ese catálogo.
Responde para continuar
¿Cuántos hallazgos del escaneo de dependencias constan en el catálogo KEV? Escribe solo el número.
Ver pista de ayuda
Filtra hallazgos_sca por kev = 'si' y cuenta las filas.
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.