GlosarioSuperficie de ataque y pentesting

SAST y DAST

Respuesta corta

SAST (Static Application Security Testing) analiza el código fuente en busca de fallos de seguridad sin ejecutarlo. DAST (Dynamic Application Security Testing) prueba la aplicación en ejecución desde fuera, como lo haría un atacante. Usados juntos, detectan vulnerabilidades durante el desarrollo, antes de que lleguen a producción.

SAST: analizar el código

Las herramientas SAST revisan el código fuente, a menudo en cada commit o pull request, y señalan patrones como riesgos de inyección, secretos escritos en el código o funciones inseguras. Detectan los problemas pronto, cuando corregirlos es barato, e indican la línea exacta. Sus puntos débiles son los falsos positivos y que no ven los fallos que solo aparecen en ejecución.

DAST: probar la aplicación en ejecución

Las herramientas DAST envían peticiones preparadas a una aplicación en ejecución en un entorno de pruebas y observan cómo responde, detectando fallos como la inyección, la autenticación rota o cabeceras mal configuradas. Ven la aplicación como la ve un atacante, pero no pueden señalar la línea de código responsable.

SCA y detección de secretos

La mayor parte del código actual son librerías de código abierto. El análisis de composición de software (SCA) comprueba esas dependencias frente a CVE conocidos y licencias, y la detección de secretos encuentra contraseñas y claves subidas por error. Junto con SAST y DAST, forman el núcleo de las pruebas de seguridad de aplicaciones (AppSec).

Dónde aparece en cumplimiento

ISO 27001 exige un ciclo de vida de desarrollo seguro, codificación segura y pruebas de seguridad (Anexo A 8.25, 8.28 y 8.29). SOC 2 y el ENS también esperan seguridad en el desarrollo, y el OWASP Top 10 es la referencia habitual de los riesgos web más críticos. Las pruebas automatizadas complementan, pero no sustituyen, al pentesting manual.

Términos relacionados

Sigue leyendo sobre este tema

Gestión de la superficie de ataque interna y externa, nube y seguridad de aplicaciones: detección de vulnerabilidades y priorización por riesgo real.

Ir a la guía del tema