DAST
Attacks the running application the way a malicious user would, without seeing the code.
What it is
(Dynamic Application Security Testing) tests the running application from the outside in, as a black box: the scanner sends malicious requests and observes the responses, as an attacker would, without access to the source code.
Because it operates on the real, assembled system, DAST validates what does not see: server configuration, HTTP headers, authentication, session and the interaction between components.
How it works
- crawling: a spider maps the application's endpoints, forms and parameters
- fuzzing: every discovered input receives attack payloads (, , path traversal, SSRF)
- response analysis: the scanner checks whether the attack was reflected, executed or leaked information
- passive checks: missing headers, cookies without flags, exposed versions
An attack in practice
The scanner found an id parameter in the crawler. First step: the classic SQL injection test, closing the quote and inserting an always-true condition. What the scanner sends:
GET /users?id=1'%20OR%20'1'='1 HTTP/1.1
Host: shop.example.comWhat gives the flaw away
The SQLi signature is in the response: instead of one user, all of them came back, because the injected condition became part of the query. The scanner compares this response with the baseline of the original parameter and concludes: injectable.
200 OK
[ {"id": 1, "name": "Ana"}, {"id": 2, "name": "Beto"},
{"id": 3, "name": "Caio"}, ... ] <- all the usersWhen there is no echo: blind injection
The response does not always return the data, and modern engines hide the error. For these cases, the scanner uses blind injections and infers from behavior. A controlled delay is the evidence:
GET /users?id=1'%20AND%20SLEEP(5)-- HTTP/1.1
with the payload: response in 5.2 s
without the payload: response in 0.1 s
=> the database ran the SLEEP: blind injectableWhere it fits in the pipeline
After deploying to staging or preview: the pipeline brings up the environment and points the scanner at it, failing on critical findings. Scheduled scans against production cover what changes outside the release cycle.
Strengths and limitations
- strength: reports what is actually exploitable, with a very low false positive rate, because it only asserts what it triggered
- strength: language-agnostic, since it tests HTTP, not code
- weakness: only sees the exposed surface; code without a reachable route is left out
- weakness: slow and late, finding issues after deploy, when fixing is already costly
connections on the map
updated on 14/10/2026 · sources to go deeper · report an error
in other domains
- WAF - observation, shadow and enforcementsecopsfinds the flaw; the WAF mitigates it until it is fixed (virtual patching)
Study before
Unlocks
test what you learned
Loading questions…