Es fundamental encarar los procesos clave que figuran en la unidad «3. Security Testing Processes» del programa ISTQB-CT-SEC. A continuación, destaco cinco aspectos que a mi criterio son sumamente importantes:
- Planificación de las Pruebas de Seguridad:
- Objetivos Claros: Define metas específicas para las pruebas de seguridad, alineadas con los requisitos del proyecto y las políticas de seguridad de la organización.
- Elementos Clave: Incluye en el plan detalles como el alcance de las pruebas, recursos necesarios, cronograma y criterios de aceptación.
- Punto de reflexión: En tu organización debe haber un comité o un equipo que se preocupe y ocupe del tema, debiéndo llevar el conocimiento y las novedades a todas las áreas como para que el negocio también reconzca la importancia y sus Product Owners incluyan en sus Épicas este aspecto y/o entiendan cuando el equipo de desarrollo se lo plantea. Recién a partir de que las Historias de Usuario incluyan el aspecto de Seguridad, nosotros los testers ágiles podremos actuar, caso contrario deberemos levantar la mano de manera temprana para comunicar la falta de.
- Diseño de las Pruebas de Seguridad:
- Basado en Políticas y Procedimientos: Desarrolla casos de prueba que reflejen las políticas de seguridad y procedimientos operativos de la organización, asegurando que se evalúen los controles implementados.
- Cobertura de Amenazas: Asegura que el diseño de las pruebas abarque las amenazas identificadas y las vulnerabilidades conocidas, utilizando estándares reconocidos como los de OWASP.
- Punto de reflexión: Recordar que si bien es importante diseñar y ejecutar casos de prueba contra el front end, las verdaderas pruebas se deben llevar a cabo por back end, y para ello hay una gran variedad de enfoques a seguir.
- Ejecución de las Pruebas de Seguridad:
- Entorno Adecuado: Establece un entorno de prueba que refleje fielmente el entorno de producción, permitiendo una evaluación precisa de las vulnerabilidades.
- Planificación y Aprobaciones: Coordina con las partes interesadas para obtener las aprobaciones necesarias y minimizar interrupciones durante la ejecución de las pruebas.
- Punto de reflexión: Preparar un ambiente sabemos que no es sencillo y más para este tipo de escenarios donde deben actuar e intervenir varias disciplinas, entre ellas Seguridad Informática, Infraestructura, Desarrollo, Testing y Negocio.
- Evaluación de las Pruebas de Seguridad:
- Análisis de Resultados: Revisa los hallazgos de las pruebas para determinar la efectividad de los controles de seguridad y priorizar las vulnerabilidades según su severidad e impacto potencial.
- Informes Detallados: Documenta los resultados de manera clara, proporcionando recomendaciones para la mitigación de riesgos identificados.
- Mantenimiento de las Pruebas de Seguridad:
- Actualización Continua: Mantén actualizados los casos de prueba y los planes de seguridad para reflejar cambios en el entorno tecnológico, nuevas amenazas y lecciones aprendidas de pruebas anteriores.
- Mejora de Procesos: Implementa un ciclo de retroalimentación para mejorar continuamente las prácticas de prueba de seguridad, adaptándolas a las necesidades cambiantes del proyecto y la organización.
- Punto de reflexión: El mantenimiento en este caso estará muy ligado a la relación que puedas mantener fundamentalmente con el área de Seguridad Informática y de Negocios. Estas dos áreas te darán suficiente input como para ir actualizando casos de prueba existentes y/o generar nuevos casos de prueba.
Ejemplo de Casos de Prueba Basados en Políticas de Seguridad
Caso 1: Verificación de Políticas de Acceso Basadas en Roles (RBAC)
Feature: Cumplimiento de políticas de acceso basado en roles
Scenario: Asegurar que los usuarios solo puedan acceder a funciones asignadas a su rol
Given un usuario con rol «Empleado» está autenticado en el sistema
When el usuario intenta acceder a la sección de «Gestión Financiera»
Then el sistema debe denegar el acceso con un mensaje de error
And registrar el intento no autorizado en los logs de auditoría
Caso 2: Validación de Políticas de Restricción Geográfica
Feature: Cumplimiento de políticas de acceso geográfico
Scenario: Bloquear el acceso desde regiones restringidas
Given un usuario intenta acceder al sistema desde una dirección IP ubicada en una región bloqueada según las políticas de la organización
When el sistema detecta la ubicación de la IP
Then el sistema debe denegar el acceso
And mostrar un mensaje indicando que el acceso está restringido desde esa ubicación
And registrar el intento de acceso en los logs de seguridad
Ejemplo de Casos de Prueba Basados en Procedimientos de Seguridad
Caso 1: Validación del Procedimiento de Reseteo de Contraseña
Feature: Verificación del procedimiento de reseteo de contraseñas
Scenario: Asegurar que el reseteo de contraseñas sigue los pasos de seguridad establecidos
Given un usuario solicita resetear su contraseña
When el sistema envía un enlace de reseteo al correo registrado del usuario
And el usuario intenta resetear la contraseña con un enlace expirado
Then el sistema debe rechazar el enlace y mostrar un mensaje indicando que el enlace no es válido
And no permitir ningún cambio en la cuenta
Caso 2: Validación del Procedimiento de Cierre de Cuentas
Feature: Verificación del procedimiento de cierre de cuentas
Scenario: Asegurar que el procedimiento de cierre de cuentas se realiza correctamente
Given un usuario solicita el cierre de su cuenta
When el sistema verifica que no hay pagos pendientes o datos bloqueados
Then el sistema debe enviar un correo de confirmación para completar el proceso
And solo proceder con el cierre si el usuario confirma mediante el enlace enviado
Integrar estos aspectos en tu estrategia de pruebas de seguridad te permitirá identificar y mitigar eficazmente las vulnerabilidades, garantizando la protección de los activos de información y el cumplimiento de las políticas de seguridad de la organización.