Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Consultas a APIs de gestión, con token, páginas y certificados

5 tareas · 40 min · Principiante

Los gestores de vulnerabilidades, los de activos y los de tickets ofrecen una API, y los equipos de seguridad escriben scripts que la consultan para armar conteos e informes. Esos scripts tienen cuatro puntos donde suelen fallar sin hacer ruido, y los cuatro se ven leyendo: cómo guardan el token, si validan el certificado, si recorren todas las páginas y qué hacen con los errores. En esta sala lees un script de Python de Laminados Zaragocilla contra la API ficticia de su gestor. Todo es lectura de archivos ficticios; no se llama a ninguna API.

0 de 5 · 0%

Objetivo de la sala

Los gestores de vulnerabilidades, los de activos y los de tickets ofrecen una API, y los equipos de seguridad escriben scripts que la consultan para armar conteos e informes. Esos scripts tienen cuatro puntos donde suelen fallar sin hacer ruido, y los cuatro se ven leyendo: cómo guardan el token, si validan el certificado, si recorren todas las páginas y qué hacen con los errores. En esta sala lees un script de Python de Laminados Zaragocilla contra la API ficticia de su gestor. Todo es lectura de archivos ficticios; no se llama a ninguna API.

Una API de gestión suele pedir un token en la cabecera Authorization, con el esquema Bearer. Ese token es una credencial, y lo primero que se mira en un script es de dónde sale. Lo correcto es que no esté escrito en el código sino en el entorno o en un almacén de secretos, para que el archivo pueda compartirse y revisarse sin exponer nada.

Abre descarga_hallazgos.py y busca la línea que asigna el token que de verdad se usa.

Responde para continuar

Escribe el nombre de la variable de entorno de la que el script lee el token.

Ver pista de ayuda

Está dentro de `os.environ[...]`, en la línea que asigna `TOKEN`.

requests.get acepta el argumento verify. Por defecto la biblioteca comprueba que el certificado del servidor es válido y lo emitió una autoridad de confianza. Poner verify=False quita esa comprobación. Suele aparecer cuando el servicio usa un certificado interno que el equipo no reconoce y alguien «lo arregla» por el camino corto. La solución correcta es indicar la autoridad interna, no apagar la validación.

Responde para continuar

¿Qué efecto tiene verify=False en la petición del script?

Ver pista de ayuda

Lee en `documentacion-de-la-api.txt` qué certificado usa el servicio.

Las APIs que devuelven listas largas las entregan por páginas: cada respuesta trae un trozo, el total y algún campo que dice cómo pedir el siguiente trozo. Un script que lee una sola respuesta cree que tiene la lista entera. Para saber si hay más hay que mirar la respuesta, no el código.

Abre respuesta-pagina-1.json y revisa qué campos acompañan a la lista.

Responde para continuar

Escribe el nombre del campo de la respuesta que apunta a la página siguiente.

Ver pista de ayuda

Es una dirección completa con el parámetro `page=2`.

El script pide 100 resultados por página y lee solo la primera respuesta. La respuesta dice cuántos hallazgos abiertos hay en total. La diferencia entre el total real y los que el informe cuenta es la parte de la realidad que nadie ve, y no aparece en ningún mensaje de error porque la petición funcionó.

Compara salida-del-script.txt con respuesta-pagina-1.json.

Responde para continuar

¿Cuántos hallazgos abiertos no cuenta el informe del script? Escribe el número entero.

Ver pista de ayuda

Resta lo que cuenta el script del total que informa la API.

Comentar una línea no la borra: sigue en el archivo, en su historial de versiones y en cada copia que alguien haya hecho. Una línea que parece contener un token, aunque sea de pruebas y aunque esté comentada, se trata como credencial expuesta. El paso eficaz es dejar el token sin validez y emitir otro, no solo quitar la línea.

Responde para continuar

Hay una línea comentada que parece contener un token de prueba. ¿Qué se hace?

Ver pista de ayuda

Piensa en quién tiene ya una copia del archivo y de su historial.

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

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