Aplicaciones. El evaluador de las pruebas de penetración utiliza herramientas automatizadas y pruebas manuales para buscar vulnerabilidades en las aplicaciones y las bases de datos conectadas. Esto podría implicar examinar los propios binarios de las aplicaciones o los procesos de autorización, cifrado, potencial de SQLi y métodos de ataque comparables.
Redes. La red debe someterse a rigurosas pruebas de penetración como perímetro de seguridad de la organización (al menos en teoría). El proceso suele implicar un análisis sistemático de los controles de acceso administrativos, la capa de sockets seguros (SSL), los protocolos de transporte cifrados, los certificados, la segmentación de red y mucho más.
Nube. Con la nube, el evaluador de las pruebas de penetración examina las configuraciones del sistema, las interfaces de programación de aplicaciones (API) y el almacenamiento. Probablemente, el evaluador también buscará instancias de nube que se hayan configurado sin las políticas estándar implementadas. Esto es más común de lo que la gente cree. Un desarrollador bien intencionado, pero mal informado puede implementar una aplicación y una base de datos en una plataforma en la nube sin aplicar controles de seguridad y ni siquiera notificar a nadie que la instancia en la nube existe.
Procesos de desarrollo de software. El flujo de trabajo de DevOps y el canal de integración e implementación continua (CI/CD) son lugares en los que los desarrolladores incrustan de forma involuntaria errores de codificación y otros errores en el software que hacen que la aplicación sea vulnerable a las filtraciones. Con las pruebas de penetración automatizadas de DevOps y el canal de CI/CD, el evaluador puede encontrar vulnerabilidades ocultas que no se detectan con el análisis de código estático. El evaluador de las pruebas de penetración también intentará acceder al flujo de trabajo del desarrollador y ver si puede insertar código malicioso en la base de código. Realizarán acciones similares con respecto a los contenedores, como Docker.
Dispositivos. El hardware puede ser vulnerable a una filtración tanto como una red o una aplicación. Un evaluador de las pruebas de penetración intentará entrar en el dispositivo a través de vulnerabilidades en los binarios de sus aplicaciones, el firmware y el software del sistema operativo. Es común que los evaluadores de las pruebas de penetración detecten puntos débiles en dispositivos que no han tenido parches de seguridad instalados.
Las API. Un evaluador de pruebas de penetración utilizará una combinación de procesos de pruebas de API manuales y automatizados para determinar si una API tiene alguna de los 10 principales riesgos de seguridad de API del Proyecto Abierto de Seguridad de Aplicaciones Web (OWASP), como la autorización a nivel de objeto comprometida (BOLA), al tiempo que analiza si una API no tiene limitación de velocidad o plantea problemas de autenticación de usuarios.