![The Downfall of DAST Security Testing](http://www.zerolynx.com/cdn/shop/articles/downfall.png?v=1706262149&width=1100)
The Downfall of DAST Security Testing
Juan Antonio CallesCompartir
Moltes organitzacions gather data from a variety of sources, such as users, ia store it in data lakes afterwards. Data és everything aquests dies, és ability to process a una pila de dades en breu temps.
Usa la data és allà on dóna through APIs. APIs inclouen totes les apli- cacions components per a accedir a l'accessible per a un client de client, com a usuari.
Of course, APIs did not menja alone. The traditional monolithic architecture has given way to others, like microservices. Everything is modular these days. Microservices make any application modular and composable per becal scalability, greater flexibility, and shorter time-to-market.
Microservices combined with APIs consideren el futur de programari development. Aquest és el que OWASP released el 2019 API-adapted versió de la seva nova opinió OWASP TOP 10. So, en aquest escenari, aplicació de seguretat necessita per adaptar-se a aquesta nova manera de fer programari i carregar-lo s ell.
En les dècades, aplicació security ha evolved as well in the form of several automated and specialized security tests. However, evolution of controls de seguretat seems to lag behind, i this is the case of Dynamic Application Security Testing (DAST).
DAST, a nice guy
DAST cam out as a "fairly" automatic black box tool per find specific web application vulnerabilities at a time when al més d'only techniques were SAST analysis and manual pentesting. DASTs emergeixen amb la promissió d'assistir el pentester, i filling d'escapaments als SAST tools, la seva reducció false positives i reduir scanning time.
Les running processes són very simples: From som predefined rulesets, ell sends HTTP requests a la web application and watches per certain strings a les respostes a sei if there is any vulnerability. In other words, DAST attempts to simulate a pentester.
Needless to say, that there are a couple of main drawbacks:
- False positives. Any number of false positives would need some short of review after the scan, the so-called triage. Aquest triatge ofereix la necessitat d'un expert expert en cybersecurity analyst, i fins i tot per un expert it takes som preuós temps que mai s'acabi slowing down els post-scan steps.
- Estafi. Scans s'estime en run, usually from 30 minutes to 2 hours, or maybe days depending on the application's size. Aixo, time will depend on how good the configuration is. El fet de configurar-los, els temps que s'ha fet. Però setting up a good pre-scan configuration no és que easy and most of the times requeriments a cybersecurity expert.
DAST is far behind Software Development
The way of developing software has changed. DAST és comunament integrada en el CI/CD pipeline, i en el CI/CD environments agility i ràpid en cornerstones. Any build-and-deployment pipeline shouldn't lest longer than just a few minutes.
This does not seem a feature of DAST. Aix it les mentioned before, DAST scans takes time to run, time to review the findings, and time to configure. Però aquestes pitfalls no són les ones que són les possibilitats d'agilitat i velocitat:
- Discovery & Crawling. One d'un gran nombre de DAST és l'ability per a la investigació i el crawl a més d'una part de l'aplicació durant el scanning. By applying som heuristic rules per rewriting URLs i following links, DAST tools per discover and crawl many subdomains and sections of web applications. Another version of this discovery process is by proxing the traffic and collecting the endpoints to be scanned. Però en temps moderns, quan la seguretat és shifting a l'est de SDLC, aquestes feines could es consideren shortcoming because it takes time. Luckily, most de DAST tools across the years have included the possibility of specifying what endpoints of the application you want to scan in various formats.
- Developers use DAST. Un nou *DevSecOps* paradigm, developers can use some tools presents en pipelines on their own, like security tools. Aquesta és intended for providing more agility pel programari development process. Per a desenvolupadors per a ells semblen review de la finança de seguretat analysis com a DAST, aquesta és supposedly speed up whole development. In theory. In practice, developers struggle per distingir what is false positive from what is not, or they need to invest more time to do it han security expert. Aquest escenari redueix drastically la tolerància a les falses positives de DevSecOps teams i un tros in security testing.
Finally, the programari itself has changed too. Per a la seva instal·lació, APIs i microservices són presents i futures, i DAST no estan adaptats a les instal·lacions:
- DAST cannot discover any dynamic generat content in a web front-end, which is very common today du a to estenent use of javascript frameworks, like Angular, React, Next, JQuery, etc.
- DAST no s'ha detectat en algunes eines de les vulnerabilitats habituals d'APIs, com a IDOR/BOLA, perquè requereixen context de la lògica de les aplicacions, com a usuaris rols i privilegis.
- DAST als struggles to pass through som protection walls, like anti-CSRF tokens and several typical authentication/authorization mechanisms in APIs, like OAuth2, SSO and multi factor authentication. Although it és possible a l'overcome som els seus barriers, el most certainly would increase el temps per preparar el scan, i every application needs its own configuration.
How to do DAST in 2023 i no die trying?
En aquest punt, s'elimina tempting per tenir en compte que DAST és útil, però és not. Many of the shortcomings can be overcome by using DAST in some other ways:
- Repurposeu DAST per find the low-hanging fruit. Some vulnerabilities easy and quick to find for any DAST tool and have reasonably low false positives ratio. Some examples are insecure or missing HTTP Headers, Cross Site Scripting or even some kind of SQLi.
- Test for specific security requirements. Per a catalogues d'existències existents de seguretat, DAST pot utilitzar-se per a tot tipus de tests per comprovar si hi ha uns quants requeriments across many applications.
- Create configuration templates beforehand. Com que està bé, s'ha configurat, els temps s'han de fer. Es tracta d'una idea correcta per a investigar una mica en la preparació d'altres configuracions, que es poden utilitzar per a les applicacions semblants amb semblants o arquitectures. Per això, si teniu una propera configuració, si execution time and false positives es considera reduïda in future scans.
- Avoid full scans. Scanning d'aplicació d'aplicació pot ser consumit molt de temps, i cada operació en CI/CD pipeline s'ha de fer just a uns quants segons o minuts. Insteu, narrow scope of the scan to just the changes recently made to the application.
- Feed the DAST with les exact API routes to scan. Si utilitzeu suport it (recommended), al mateix temps instructiu l'escàner per a tests de l'API per a l'aplicació de l'API, la seva acció que ha estat any changes. Aquest és possible per a 100% scan coverage gradually sense slowing down the CI/CD process.
- Run DAST asynchronously. Perquè scan és launched en CI/CD step i going to take a while, a good option would be to simple execute it without waiting for it to finish. Later, quan és completed, el correspo- nent team és possible per a la revisió de findings o del triage.
A part d'aquest, DAST estill remains és realment handy tool l'any pentester sense it és capable de fuzzing a vast amount de input paràmetres en moltes aplicacions en no temps s'un pre-defined rule sets, que permet finding moltes types of vulnerabilities, li injections and misconfigurations.
What to look for in DAST tool for API Security Testing
Per avaluar DAST or semblants tools per a API Security Testing, ell s'ha de challenging per saber que aquesta és la millor opció, si és com sigui criteria que es pot utilitzar:
- Easy to integrate in CI/CD pipeline.
- Allows to choose what kind of application to be scanned: API or web with front-end.
- Supports severals API specification formats per especificar les exact API routes per scan: Postman collections, OpenAPI/Swagger, GraphQL introspection, WADL, WSDL, etc.
- Enableu per a seleccionar un tipus de API específic per testar-lo: REST, GraphQL, SOAP.
- Provides the capability to define pre-and post-to generate fine-tune configurations for detecting business logic vulnerabilities.
To recap
The way software is developed has changed, and so has programari itself. Agilitat i ràpida són nous key features d'any SDLC per a advantages d'usar CI/CD pipelines. APIs ha de beure el core any d'un nou piece del programari, el deliveració de secure application depends en l'absència de vulnerabilities in underlying APIs.
APIs han de ser secured i quickly, i fins i tot DAST no s'està suitant per això, és possible per alterar la configuració de les càmeres i forma integració de les pipelines a les teves API better and faster.
AI: A New Hope
Aquest post cannot end without mentioning Artificial Intelligence. El que és l'any security solution could leverage AI per solucionar plegats de gaps de DAST: improve discovery, crawling and URL rewriting, prevent duplicats or iterative requests, decrease false positives, detect complex business logic vulnerabilities...
Perhaps, AI will become the fire that will reviu the DAST phoenix. What do you think?
Ernesto Rubio, Cybersecurity Analyst