DAST vs SAST: un caso para las pruebas de seguridad de aplicaciones dinámicas

  • Autor de la entrada:
  • Última modificación de la entrada:19 noviembre, 2021
  • Tiempo de lectura:7 minutos de lectura
  • Categoría de la entrada:Fabricantes

La prueba de seguridad de aplicaciones dinámicas (DAST) es una metodología de prueba de seguridad de caja negra en la que una aplicación se prueba desde el exterior. Un evaluador que usa DAST examina una aplicación cuando se está ejecutando e intenta piratearla como lo haría un atacante. En el otro extremo del espectro está la prueba de seguridad de aplicaciones estáticas (SAST), que es una metodología de prueba de caja blanca. Un evaluador que usa SAST examina la aplicación desde adentro, buscando en su código fuente condiciones que indiquen que podría haber una vulnerabilidad de seguridad.

Acunetix es un escáner dinámico y creemos profundamente en las metodologías DAST y de caja negra. Eso no significa que se deban ignorar las metodologías de caja blanca. Ambas metodologías tienen sus fortalezas y debilidades y ambas deberían formar parte de todo programa de seguridad eficaz. Este artículo tiene como objetivo resaltar las fortalezas de DAST y cómo Acunetix está abordando sus debilidades. Para obtener más información sobre SAST, puede consultar el wiki de OWASP .

Cobertura tecnológica

Uno de los atributos más importantes de las pruebas de seguridad es la cobertura. Para evaluar la seguridad de una aplicación, un escáner automático debe poder interpretar con precisión esa aplicación.

Los escáneres SAST no solo deben admitir el lenguaje (PHP, C # / ASP.NET, Java, Python, etc.), sino también el marco de trabajo de la aplicación web que se utiliza. Si su escáner SAST no es compatible con el idioma o el marco de trabajo que seleccionó, es posible que se tropiece con una pared de ladrillos al probar sus aplicaciones.

Por otro lado, los escáneres DAST son, en su mayor parte, independientes de la tecnología. Esto se debe a que los escáneres DAST interactúan con una aplicación desde el exterior y dependen de HTTP. Hace que funcionen con cualquier lenguaje de programación y framework, tanto estándar como personalizados.

Configuraciones incorrectas del entorno

El código de la aplicación es solo uno de los componentes básicos de un conjunto complejo de servidores web, proxies, bases de datos, cachés, etc. Asumir que las pruebas de seguridad web deben centrarse solo en el código es un enfoque ingenuo de la seguridad web. Las configuraciones incorrectas exponen una gran superficie de ataque.

El enfoque DAST también gana aquí. Dado que las pruebas DAST se realizan desde el exterior, el escáner está en la posición perfecta para probar una aplicación web en busca de cientos de posibles problemas de configuración.

IAST: Pensando dentro de la caja

Los escáneres DAST primero rastrean una aplicación web antes de escanearla. Esto permite que el escáner encuentre todas las entradas expuestas en las páginas dentro de la aplicación web, que luego se prueban posteriormente para detectar una variedad de vulnerabilidades. Los escáneres SAST tienen una ventaja cuando se trata de la cobertura del código porque el escáner tiene acceso al código de la aplicación. Esto significa que conoce todas las entradas de la aplicación, incluidas las ocultas que no están expuestas.

Para abordar este problema, se ha desarrollado una metodología de caja gris. Las pruebas de seguridad de aplicaciones interactivas (IAST) combinan los beneficios de las metodologías de caja negra y caja blanca. Acunetix es una de las primeras soluciones DAST en utilizar esta metodología.

Acunetix AcuSensor (incluido de serie en todas las ofertas de Acunetix) funciona instalando un sensor en el back-end de la aplicación que se activa durante un escaneo DAST. El sensor luego transmite información en tiempo real sobre el código ejecutado al escáner. Esto también incluye entradas ocultas, archivos ocultos e información de configuración que el escáner no pudo obtener usando una metodología de caja negra.

OAST: Fuera de banda no significa fuera de la vista

A menudo se cree que los escáneres DAST solo pueden probar vulnerabilidades dentro de banda (realizar pruebas que devuelven una respuesta inmediata al escáner). Este puede ser el caso de la gran mayoría de los escáneres DAST, pero Acunetix ha podido probar vulnerabilidades fuera de banda durante varios años.

En 2013, Acunetix presentó AcuMonitor , que fue la primera oferta comercial para admitir pruebas de vulnerabilidad fuera de banda. Esta categoría de pruebas de vulnerabilidad ahora se denomina Prueba de seguridad de aplicaciones fuera de banda (OAST). La tecnología OAST se puede utilizar para detectar una variedad de vulnerabilidades fuera de banda, como Blind Cross-site Scripting (BXSS) , Inyección SQL fuera de banda (OOB-SQLi), Ejecución remota de código fuera de banda y Lo más interesante dentro de esta categoría: Falsificación de solicitudes del lado del servidor (SSRF) , que incluye vulnerabilidades de entidades externas XML (XXE) .

Falsos positivos y verificación de resultados

Un falso positivo es una situación en la que el resultado de una prueba indica erróneamente que existe una vulnerabilidad cuando en realidad no lo está. Los falsos positivos son una pesadilla para todo director de seguridad de la información y un problema común de las pruebas de seguridad automatizadas, especialmente en el caso de las herramientas SAST. No solo son molestos, sino que también degradan drásticamente la utilidad de una herramienta. Puede terminar pasando más tiempo eliminando falsos positivos que reparando vulnerabilidades. A menudo conduce a deshabilitar varias pruebas de seguridad solo para evitar falsos positivos y crear una falsa sensación de seguridad.

Las soluciones DAST son menos propensas a informar falsos positivos que SAST. Si la aplicación puede ejecutar una consulta SQL arbitraria a voluntad del escáner, no hay que adivinar: sabemos que la aplicación es vulnerable a SQLi. La introducción de IAST reduce la tasa de falsos positivos a casi cero.

Las herramientas SAST también dificultan la reproducción y demuestran algunos problemas de seguridad. Las herramientas DAST pueden proporcionarle una solicitud HTTP que se puede reproducir en una herramienta manual de su elección. Esto le permite demostrar y evaluar el impacto comercial de una vulnerabilidad.

Integrando DAST con SDLC

Muchos devops creen que las herramientas DAST no funcionan bien con las herramientas del ciclo de vida de desarrollo de sistemas (SDLC), como los rastreadores de problemas y las canalizaciones de integración continua. Esto no es verdad; Las herramientas DAST se pueden integrar fácil y elegantemente con rastreadores de problemas populares como Atlassian JIRA, GitHub y Microsoft TFS.

Además, como cualquier otro tipo de herramientas de prueba automatizadas, las soluciones DAST se pueden integrar con plataformas de CI como Jenkins. Con Acunetix, incluso puede instalar un complemento de Jenkins : las compilaciones pueden aprobarse o fallar según los parámetros que establezca. También puede generar informes directamente desde Jenkins. Por supuesto, si no usa Jenkins, siempre puede crear su propia integración usando la API de Acunetix.

En conclusión, un análisis SAST puede arrojar muchos falsos negativos, la solución es realizar análisis DAST en conjunto con otras tecnologías ya integradas con Acunetix, para obtener una cotización o demostración porgase en contacto con nosotros, un profesional le asistirá.

Si te ha gustado, ¡compártelo con tus amigos!

Share on facebook
Share on twitter
Share on linkedin
Share on telegram
Share on email