Desglose del temario PPS: RA - Criterios - Contenidos

Introducción a python: https://tryhackme.com/r/room/pythonbasics

1. Prueba aplicaciones web y aplicaciones para dispositivos móviles analizando la estructura del código y su modelo de ejecución.

Criterios de evaluación:

a) Se han comparado diferentes lenguajes de programación de acuerdo a sus características principales.

  • Contenido asociado: Lenguajes de programación interpretados y compilados
  • Enlace: CE 1a

b) Se han descrito los diferentes modelos de ejecución de software.

  • Contenido asociado: Ejecución de software
  • Enlace: CE 1b

c) Se han reconocido los elementos básicos del código fuente, dándoles significado.

  • Contenido asociado: Fundamentos de la programación
  • Contenido asociado: Código fuente y entornos de desarrollo
  • Contenido asociado: Elementos principales de los programas
  • Enlace: CE 1c

d) Se han ejecutado diferentes tipos de prueba de software.

  • Contenido asociado: Pruebas. Tipos
  • Enlace: CE 1d

e) Se han evaluado los lenguajes de programación de acuerdo a la infraestructura de seguridad que proporcionan.

  • Contenido asociado: Seguridad en los lenguajes de programación y sus entornos de ejecución (“sandboxes”)
  • Enlace: CE 1e

2. Determina el nivel de seguridad requerido por aplicaciones identificando los vectores de ataque habituales y sus riesgos asociados.

Criterios de evaluación:

a) Se han caracterizado los niveles de verificación de seguridad en aplicaciones establecidos por los estándares internacionales (ASVS, “Application Security Verification Standard”).

  • Contenido asociado: Fuentes abiertas para el desarrollo seguro
  • Contenido asociado: Comprobaciones de seguridad a nivel de aplicación: ASVS
  • Enlace: CE 2a

b) Se ha identificado el nivel de verificación de seguridad requerido por las aplicaciones en función de sus riesgos de acuerdo a estándares reconocidos.

c) Se han enumerado los requisitos de verificación necesarios asociados al nivel de seguridad establecido.

  • Contenido asociado: Requisitos de verificación necesarios asociados al nivel de seguridad establecido
  • Enlace: CE 2c

d) Se han reconocido los principales riesgos de las aplicaciones desarrolladas, en función de sus características.

  • Contenido asociado: Listas de riesgos de seguridad habituales: OWASP Top Ten (web y móvil)
  • Enlace: CE 2d

3. Detecta y corrige vulnerabilidades de aplicaciones web analizando su código fuente y configurando servidores web.

Criterios de evaluación:

a) Se han validado las entradas de los usuarios.

  • Contenido asociado: Desarrollo seguro de aplicaciones web
  • Contenido asociado: Entrada basada en formularios. Inyección. Validación de la entrada
  • Enlace: CE 3a

b) Se han detectado riesgos de inyección tanto en el servidor como en el cliente.

  • Contenido asociado: Listas públicas de vulnerabilidades de aplicaciones web. OWASP Top Ten
  • Enlace: CE 3b

c) Se ha gestionado correctamente la sesión del usuario durante el uso de la aplicación.

  • Contenido asociado: Estándares de autenticación y autorización
  • Contenido asociado: Robo de sesión
  • Enlace: CE 3c

d) Se ha hecho uso de roles para el control de acceso.

e) Se han utilizado algoritmos criptográficos seguros para almacenar las contraseñas de usuario.

  • Contenido asociado: Almacenamiento seguro de contraseñas
  • Enlace: CE 3e

f) Se han configurado servidores web para reducir el riesgo de sufrir ataques conocidos.

  • Contenido asociado: Vulnerabilidades web
  • Contenido asociado: Seguridad de portales y aplicativos web. Soluciones WAF
  • Enlace: CE 3f

g) Se han incorporado medidas para evitar los ataques a contraseñas, envío masivo de mensajes o registros de usuarios a través de programas automáticos (bots).

  • Contenido asociado: Contramedidas. HSTS, CSP, CAPTCHAs, entre otros
  • Enlace: CE 3g

4. Detecta problemas de seguridad en las aplicaciones para dispositivos móviles, monitorizando su ejecución y analizando ficheros y datos.

Criterios de evaluación:

a) Se han comparado los diferentes modelos de permisos de las plataformas móviles.

  • Contenido asociado: Modelos de permisos en plataformas móviles. Llamadas al sistema protegidas
  • Enlace: CE 4a

b) Se han descrito técnicas de almacenamiento seguro de datos en los dispositivos, para evitar la fuga de información.

  • Contenido asociado: Almacenamiento seguro de datos
  • Enlace: CE 4b

c) Se ha implantado un sistema de validación de compras integradas en la aplicación haciendo uso de validación en el servidor.

  • Contenido asociado: Validación de compras integradas en la aplicación
  • Enlace: CE 4c

d) Se han utilizado herramientas de monitorización de tráfico de red para detectar el uso de protocolos inseguros de comunicación de las aplicaciones móviles.

  • Contenido asociado: Soluciones CASB
  • Enlace: CE 4d

e) Se han inspeccionado binarios de aplicaciones móviles para buscar fugas de información sensible.

  • Contenido asociado: Firma y verificación de aplicaciones
  • Contenido asociado: Fuga de información en los ejecutables
  • Enlace: CE 4e

5. Implanta sistemas seguros de desplegado de software, utilizando herramientas para la automatización de la construcción de sus elementos.

Criterios de evaluación:

a) Se han identificado las características, principios y objetivos de la integración del desarrollo y operación del software.

  • Contenido asociado: Puesta segura en producción
  • Contenido asociado: Prácticas unificadas para el desarrollo y operación del software (DevOps)
  • Enlace: CE 5a

b) Se han implantado sistemas de control de versiones, administrando los roles y permisos solicitados.

  • Contenido asociado: Sistemas de control de versiones
  • Enlace: CE 5b

c) Se han instalado, configurado y verificado sistemas de integración continua, conectándolos con sistemas de control de versiones.

  • Contenido asociado: Sistemas de automatización de construcción (build)
  • Contenido asociado: Integración continua y automatización de pruebas
  • Enlace: CE 5c

d) Se han planificado, implementado y automatizado planes de desplegado de software.

  • Contenido asociado: Escalado de servidores. Virtualización. Contenedores
  • Contenido asociado: Gestión automatizada de configuración de sistemas
  • Contenido asociado: Orquestación de contenedores
  • Enlace: CE 5d

e) Se ha evaluado la capacidad del sistema desplegado para reaccionar de forma automática a fallos.

  • Contenido asociado: Herramientas de simulación de fallos
  • Enlace: CE 5e

f) Se han documentado las tareas realizadas y los procedimientos a seguir para la recuperación ante desastres.

g) Se han creado bucles de retroalimentación ágiles entre los miembros del equipo.