Le DAST (Dynamic Application Security Testing) est l'analyse dynamique d'une application en cours d'exécution : un scanner attaque l'application comme le ferait un attaquant externe (HTTP requests, fuzzing paramètres, injection payloads, testing auth flows) et observe les réponses pour détecter les vulnérabilités. Là où le SAST (Static AST) lit le code source statique, le DAST teste le comportement runtime, découvrant des classes de défaut que le code ne révèle pas seul : misconfiguration serveur, headers manquants (HSTS, CSP, X-Frame-Options), broken authentication runtime, IDOR (Insecure Direct Object Reference, CWE-639), Broken Object Level Authorization (BOLA, OWASP API Security Top 10 2023 #1). En 2026, l'écosystème DAST repose sur quatre catégories d'outils : scanner manuel pentester (Burp Suite Professional, 404 €/user/an, dominant), scanner automatisé CI/CD (OWASP ZAP gratuit, StackHawk modern, Invicti ex-Netsparker post-fusion Acunetix 2024, Burp Suite Enterprise), API DAST (42Crunch, StackHawk, Wallarm, Salt Security, Cequence, Akamai API Security suite acquisition Noname 2024), template-based fast scanner (Nuclei de ProjectDiscovery, OSS, ~10 000 templates). Le défi structurant 2026 : 80+ % du trafic web est API-driven (REST + GraphQL + gRPC) selon Gartner, un AppSec sans API DAST a un trou structurel. Comprendre la distinction SAST/DAST/IAST/RASP, les patterns d'authentification scan (SSO, MFA, JWT, OAuth), les leaders 2026 et l'intégration CI/CD shift-left est non-négociable.
Pour le contexte adjacent : voir SAST - Static Application Security Testing pour la couche statique complémentaire, et WAF - Web Application Firewall pour la protection runtime en production.
1. Définition et méthodologie DAST
Un DAST opère via trois phases principales :
| Phase | Action | Outils typiques |
|---|---|---|
| 1. Discovery / Spidering | Crawl l'application, découvre URLs/endpoints/forms | Burp Crawler, ZAP Spider, Hakrawler |
| 2. Authentification | Login session, gère cookies/tokens, maintient session | Burp Macros, ZAP Authentication Plugins |
| 3. Active Scanning | Fuzzing payloads SQLi/XSS/RCE/IDOR sur paramètres | Burp Active Scanner, ZAP Active Scan, Nuclei templates |
| 4. Reporting | Compile findings + severity + reproduction steps | Tous |
Le DAST est black-box par défaut (aucune connaissance du code) ou grey-box quand on lui fournit credentials, API spec OpenAPI, sitemap. Le grey-box est dramatiquement plus efficace : couverture jusqu'à 5-10× supérieure selon les benchmarks PortSwigger 2024.
Le concept émerge ~2003-2005 avec WebInspect (SPI Dynamics, racheté HP 2007 puis Micro Focus puis OpenText), AppScan (Watchfire, racheté IBM 2007 puis HCL 2017), et plus tard les pionniers commerciaux Acunetix (2005) et Netsparker (2007, devenu Invicti).
2. Catégories DAST 2026
| Catégorie | Cible | Outils 2026 |
|---|---|---|
| Web App DAST | Applications web traditionnelles (Server-Rendered, SSR) | Burp Suite, OWASP ZAP, Invicti, Veracode DAST |
| SPA DAST | Single-Page Apps (React, Vue, Angular) | Burp + Browser Automation, ZAP avec AJAX Spider, StackHawk |
| API DAST | REST, GraphQL, gRPC, SOAP | StackHawk, 42Crunch, Wallarm, Bright, Burp + REST extension |
| Mobile DAST | iOS / Android backend APIs | Burp Suite + Frida, MobSF, OWASP ZAP |
| Cloud DAST | Cloud-native apps, serverless | Lacework, Wiz Cloud DAST add-on |
| Auth-aware DAST | Apps avec SSO complexe, MFA, OAuth | Burp Pro Macros, ZAP Auth scripts, StackHawk Auth Plugin |
| Template-based fast DAST | Surface scan rapide, large scope | Nuclei (ProjectDiscovery), Tsunami (Google) |
L'évolution API DAST est la plus impactante 2024-2026. Selon Gartner, 80+ % du trafic web est désormais API-driven (REST + GraphQL + gRPC), et OWASP API Security Top 10 (édition 2023) place BOLA (Broken Object Level Authorization, ex-IDOR) en #1. Tester uniquement le frontend = aveugle à 80 % de la surface réelle.
3. Leaders du marché DAST 2026
3.1 DAST manuel et pentest
| Produit | Vendor | Force 2026 | Limite | Tarif |
|---|---|---|---|---|
| Burp Suite Professional | PortSwigger | Référence pentester offensif, BApp Store ext, Repeater/Intruder/Decoder | Pas pensé CI/CD pur, scan manuel | 404 €/user/an |
| OWASP ZAP | OWASP | Gratuit, scriptable Python/JS, mature, communauté large | Performance scan inférieure à Burp Enterprise, UX dated | Gratuit |
| Caido | Caido (lancé 2023) | Modern Burp alternative, projet jeune | Catalogue extensions limité | Gratuit + Pro 36 €/mois |
3.2 DAST CI/CD et automation
| Produit | Vendor | Force 2026 | Limite | Tarif indicatif |
|---|---|---|---|---|
| Burp Suite Enterprise | PortSwigger | Scan scalable + intégration CI, qualité PortSwigger | Setup plus lourd | 30-100 k€/an |
| Invicti (ex-Netsparker) | Invicti (fusion Acunetix 2024) | Proof-Based Scanning™, AI scan, marché entreprise | Tarif premium | 80-200 k€/an |
| Acunetix | Invicti (post-fusion) | Vitesse scan + DeepScan SPA | Fusion en cours avec Netsparker | 30-100 k€/an |
| StackHawk | StackHawk | CI/CD-first design, API DAST natif, dev-friendly | Marché plus restreint | 30-100 k€/an |
| Veracode DAST | Veracode | Suite SAST+DAST+SCA, marché US grand compte | Tarif premium, scan time élevé | 150-400 k€/an |
| Checkmarx DAST | Checkmarx | Bundle Checkmarx One avec SAST | Maturité DAST inférieure | 100-300 k€/an |
| Bright Security (ex-NeuraLegion) | Bright | API DAST, AI, dev-first | Marché modeste | Variable |
| Tenable Web App Scanning | Tenable | Bundle avec Tenable.io | Couverture moins riche que leaders | 30-100 k€/an |
| Probely | Snyk (acquisition 2023) | API DAST, prix accessible | Marché plus restreint | Variable |
| Detectify | Detectify | EASM + DAST | Asset discovery focus | Variable |
3.3 API DAST spécialisé
| Produit | Vendor | Force 2026 |
|---|---|---|
| 42Crunch | 42Crunch | Compliance OpenAPI mature, audit + scan + protection |
| StackHawk | StackHawk | DAST + API DAST unified, OpenAPI/GraphQL/gRPC |
| Wallarm | Wallarm | WAAP + API discovery + DAST |
| Salt Security | Salt Security | API runtime + DAST hybride |
| Cequence Security | Cequence | Bot management + API security |
| Akamai API Security | Akamai (acquisition Noname Networks 2024) | API discovery + posture management |
| Traceable AI | Traceable AI | API runtime + observability |
3.4 Template-based fast DAST OSS
Nuclei (ProjectDiscovery, lancé 2020, OSS) est devenu un standard 2024-2026 : ~10 000 templates YAML communautaires pour CVE checks, misconfigurations, exposed services. Scan rapide < 5 min sur un domaine. Adoption massive dans les pipelines bug bounty + reconnaissance + CI/CD light.
# Exemple template Nuclei pour détecter CVE-2024-3094 xz-utils backdoor pattern
id: cve-2024-3094-xz-backdoor
info:
name: xz-utils backdoor (CVE-2024-3094)
author: project-discovery
severity: critical
description: |
Detects vulnerable xz-utils versions 5.6.0 / 5.6.1 with embedded
backdoor in liblzma affecting OpenSSH on systemd-enabled distros.
reference:
- https://nvd.nist.gov/vuln/detail/CVE-2024-3094
- https://www.openwall.com/lists/oss-security/2024/03/29/4
classification:
cve-id: CVE-2024-3094
cwe-id: CWE-506
tags: cve,cve2024,supply-chain,xz,openssh
http:
- method: GET
path:
- "{{BaseURL}}/version"
matchers:
- type: regex
regex:
- "xz-utils\\s+5\\.6\\.[01]"
- "liblzma\\.so\\.5\\.6\\.[01]"
condition: orPosition tranchée 2026 : Nuclei + OWASP ZAP + Burp Pro = stack DAST OSS-friendly couvrant 80 % des besoins. Ajouter StackHawk ou 42Crunch si stack API-heavy. Eviter Veracode/Checkmarx DAST sauf bundle obligatoire.
4. Pipeline DAST CI/CD 2026
Pipeline GitHub Actions complet avec DAST shift-left :
# .github/workflows/dast.yml
name: DAST + API Security
on:
pull_request:
branches: [main]
schedule:
- cron: '0 2 * * *' # Nightly full scan 02h00
jobs:
zap-baseline-pr:
name: ZAP Baseline scan (PR fast)
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
steps:
- name: Deploy preview env
run: |
# Deploy l'app sur un preview env temporaire
./scripts/deploy-preview.sh ${{ github.event.pull_request.number }}
- name: ZAP Baseline scan (5 min max)
uses: zaproxy/action-baseline@v0.13.0
with:
target: 'https://preview-pr-${{ github.event.pull_request.number }}.staging.example.com'
rules_file_name: '.zap/rules.tsv'
cmd_options: '-T 5' # 5 min timeout
- name: PR comment with summary
if: always()
uses: actions/github-script@v7
with:
script: |
// Lire le rapport JSON et commenter la PR
zap-full-nightly:
name: ZAP Full scan (nightly)
runs-on: ubuntu-latest
if: github.event_name == 'schedule'
steps:
- uses: zaproxy/action-full-scan@v0.10.0
with:
target: 'https://staging.example.com'
rules_file_name: '.zap/rules.tsv'
cmd_options: '-T 240 -j' # 4h max, JSON
api-dast-stackhawk:
name: StackHawk API DAST
runs-on: ubuntu-latest
if: github.event_name == 'pull_request'
steps:
- uses: actions/checkout@v4
- uses: stackhawk/hawkscan-action@v2
with:
apiKey: ${{ secrets.HAWK_API_KEY }}
configurationFiles: |
stackhawk.yml
stackhawk-api.yml
nuclei-fast-scan:
name: Nuclei templates fast scan
runs-on: ubuntu-latest
steps:
- name: Run Nuclei (5 min max)
uses: projectdiscovery/nuclei-action@main
with:
target: 'https://staging.example.com'
templates: 'cves,exposures,misconfiguration,vulnerabilities'
flags: '-severity critical,high -timeout 5'
gate-decision:
name: DAST Security Gate
needs: [zap-baseline-pr, api-dast-stackhawk, nuclei-fast-scan]
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- name: Aggregate findings and decide
run: |
# Bloquer si :
# - ZAP HIGH/CRITICAL avec auth context
# - StackHawk API HIGH non-suppressed
# - Nuclei CVE-mapped findings
./scripts/security-gate.shCette architecture combine 4 outils avec gating intelligent :
- ZAP Baseline (PR fast scan, 5 min max) sur preview env temporaire.
- ZAP Full (nightly, 4h max) sur staging.
- StackHawk API DAST (PR fast) avec configs OpenAPI.
- Nuclei (CVE check rapide) sur staging.
Le pattern preview env per PR est devenu standard 2024-2026, outils : Vercel Preview Deployments, Netlify Deploy Previews, Coolify Preview Environments, Argo CD ApplicationSet.
5. Authentification DAST - le défi des apps modernes
Quatre patterns d'auth selon le contexte applicatif 2026 :
5.1 Recorded login session
Enregistrer un login interactif via Burp Suite Macros ou OWASP ZAP Authentication Plugins :
1. Activer recording dans Burp/ZAP
2. Login dans le browser proxifié (admin, MFA si nécessaire)
3. Sauvegarder la session capturée
4. Le scanner rejoue la séquence pour chaque scanMarche sur SSO simple (Cognito basic, Auth0 simple). Casse sur MFA / push notifications / WebAuthn / Passkeys → besoin d'autres techniques.
5.2 Token-based auth (pattern dominant 2026)
Récupérer un JWT ou API key via API technique d'auth, l'injecter dans les headers :
# stackhawk.yml extrait avec auth token
app:
applicationId: my-app-id
env: staging
host: https://api.staging.example.com
authentication:
loggedInIndicator: \"X-User-Id\"
loggedOutIndicator: \"login required\"
tokenExtraction:
type: JSON_PATH
value: $.access_token
tokenRequest:
url: https://api.staging.example.com/auth/token
method: POST
content:
type: application/json
body: '{\"username\": \"hawk-scanner\", \"password\": \"${HAWK_PASSWORD}\"}'
hawk:
spider:
base: false
ajax: true
maxDurationMinutes: 105.3 OAuth/OIDC client_credentials grant
Pour scan service-to-service sans user :
TOKEN=$(curl -X POST https://idp.example.com/oauth2/token \
-d "grant_type=client_credentials" \
-d "client_id=${SCAN_CLIENT_ID}" \
-d "client_secret=${SCAN_CLIENT_SECRET}" \
| jq -r '.access_token')
# Injection dans le scanner
docker run -t owasp/zap2docker-stable zap-api-scan.py \
-t https://api.example.com/openapi.json \
-f openapi \
-z "-config replacer.full_list(0).description=auth -config replacer.full_list(0).enabled=true -config replacer.full_list(0).matchtype=REQ_HEADER -config replacer.full_list(0).matchstr=Authorization -config replacer.full_list(0).regex=false -config replacer.full_list(0).replacement=Bearer ${TOKEN}"5.4 Service account dédié au scan
Le pattern le plus mature 2026 : créer un compte dédié au scan dans un tenant test isolé, avec MFA bypass légitime + IP allowlist.
6. SAST vs DAST vs IAST vs RASP - matrice de décision
| Critère | SAST | DAST | IAST | RASP |
|---|---|---|---|---|
| Mode | Statique (code) | Dynamique (runtime) | Hybride code + runtime | Runtime self-protection |
| Phase SDLC | Dev / CI commit | Staging / nightly | Test / staging | Production |
| Couverture | 100 % code source | Routes accessibles | Routes exécutées + code | Routes en prod |
| Faux positifs | 30-60 % sans tuning | 10-20 % | 5-15 % | < 5 % |
| Détecte | Patterns code (CWE-89, CWE-79, secrets, deserial) | Misconfig serveur, broken auth runtime, IDOR/BOLA, headers | Hybride | Exploitation runtime |
| Performance impact | Aucun (build) | Aucun (out-of-band) | Léger (agent) | Modéré (agent inline) |
| Outils 2026 | Semgrep, CodeQL, Snyk Code | Burp, OWASP ZAP, StackHawk, Invicti, Nuclei | Contrast Security, Checkmarx Interactive | Contrast Protect, Imperva RASP |
| Tarif typique | 30-500 $/dev/mois | 50-300 €/scan ou 30-200 k€/an enterprise | 100-300 $/server/mois | 200-500 $/server/mois |
Position tranchée : pour 80 % des organisations, SAST en CI/CD + DAST sur staging avant release + WAF en prod = couverture suffisante. IAST justifié pour apps haute valeur et tests profonds (banking, healthcare, defense). RASP justifié uniquement quand : (1) latence acceptable < 5 ms p95, (2) budget permet 200-500 $/server/mois, (3) apps legacy non-modifiables.
7. Erreurs fréquentes DAST et anti-patterns
| Erreur | Symptôme | Fix |
|---|---|---|
| Scan sans authentification | Couverture 10-20 % seulement | Auth scan obligatoire (token-based ou recorded) |
| Scan sur production avec compte admin | Données modifiées, alertes SOC | Tenant test isolé + service account dédié |
| Pas d'API DAST | Aveugle à 80 % de la surface 2026 | Adopter StackHawk / 42Crunch / Wallarm |
| DAST seulement avant prod release | Dette accumulée, fix tardif coûteux | Shift-left progressif : DAST express en PR + nightly full |
| Pas de gate intelligent | Pipeline cassé sur faux positifs ou dette ignorée | Gate sur HIGH/CRITICAL avec contexte auth uniquement |
| Crawl statique sur SPA | Routes JS-rendered ratées | AJAX Spider ZAP ou Burp Browser-driven |
| OpenAPI obsolète vs runtime | API endpoints non-couverts | Auto-discovery via proxy capture + spec regeneration |
| Pas de suivi des findings | Reproduction impossible 6 mois après | Export JSON + ticket Jira/GH automatique |
| Scan sur volume identique chaque release | Manque les nouvelles routes | Re-spider à chaque release majeure |
| DAST sans contexte business | Findings critiques sur dev tools | Adapter severity avec context métier |
8. ROI et tarification DAST 2026
ROI mesurable d'un programme DAST mature :
| Métrique | Bonne valeur 2026 | Excellent 2026 |
|---|---|---|
| Findings identifiés par scan complet | 5-30 par scan | Stable < 5 (signal pur) |
| MTTR Critical | < 30 jours | < 14 jours |
| MTTR High | < 60 jours | < 30 jours |
| Coverage routes | > 80 % | 100 % avec OpenAPI |
| PR scan time | < 15 min | < 5 min |
| FP rate | < 30 % | < 10 % |
| Adoption developer | Findings triés par dev en < 5 jours | 100 % findings reviewed |
Calcul TCO réaliste 2026 pour 50 apps web :
| Stack | Coût annuel | Effort ETP |
|---|---|---|
| OWASP ZAP + Nuclei + Burp Pro 2 licenses (OSS-friendly) | 50-100 k€ | 0.5-1 ETP AppSec |
| + StackHawk API DAST | 80-150 k€ | 0.5-1 ETP |
| Burp Suite Enterprise | 30-100 k€ | 0.3-0.5 ETP |
| Invicti enterprise | 80-200 k€ | 0.2-0.4 ETP (managed) |
| Veracode DAST bundle | 150-400 k€ | 0.2-0.3 ETP (SaaS) |
Position tranchée 2026 : pour PME/ETI < 1000 employés, OWASP ZAP automation + StackHawk API + Burp Pro 2-3 licenses ~100-150 k€/an + 0.5-1 ETP couvre 80-90 % des besoins. Veracode/Checkmarx justifiés uniquement si compliance forte (banque, gov) ou consolidation SAST+DAST+SCA chez un seul vendor pour simplification ops.
9. Mapping DAST vers compliance frameworks 2026
| Framework | Exigence | Mapping DAST |
|---|---|---|
| OWASP Top 10 2021 | Couverture A01-A10 | DAST détecte A01 Broken AC, A03 Injection, A05 SecMisconfig, A07 Auth runtime |
| OWASP API Security Top 10 2023 | API1 BOLA jusqu'à API10 | API DAST obligatoire 2026 |
| OWASP ASVS v4.0.3 | V12 Files, V13 API, V14 Configuration | DAST contribue |
| PCI-DSS v4.0 (mars 2022, mandatory mars 2025) | Requirement 11.4 (External + internal pentest), 6.4.1 (web app vulns) | DAST + pentest annuel |
| NIST CSF 2.0 (février 2024) | DE.CM-8 (Vulnerability scans) | DAST = control direct |
| NIST SP 800-53 r5 | RA-5 (Vulnerability Monitoring and Scanning) | DAST contribue |
| ISO/IEC 27001:2022 | A.8.29 (Security testing in development) | DAST contribue |
| NIS2 (transposée FR octobre 2024) | Article 21 (cybersecurity risk management) | Testing offensive attendu |
| DORA (UE, applicable janvier 2025) | Article 25 (Threat-led penetration testing TLPT) | DAST partie de TLPT |
| SOC 2 | CC4.1 (Monitoring activities) | DAST contribue |
10. Pour aller plus loin
- SAST - Static Application Security Testing, la couche statique complémentaire au DAST runtime.
- WAF - Web Application Firewall, la protection runtime en production.
- CWE - Common Weakness Enumeration, taxonomie des classes de défaut détectées par DAST.
- CVE - Définition, format, processus, vulnérabilités matchées par les templates Nuclei.
- CVSS - Scoring vulnérabilités v3.1 vs v4.0, métrique de sévérité utilisée par DAST findings.
- Bootcamp DevSecOps, formation 12 semaines couvrant DAST, Burp Suite, OWASP ZAP.
- Hub catégorie Glossaire cyber, autres définitions de référence Zeroday.
- Burp Suite documentation : https://portswigger.net/burp/documentation.
- OWASP ZAP : https://www.zaproxy.org/.
- Nuclei templates registry : https://github.com/projectdiscovery/nuclei-templates.
- StackHawk API DAST : https://www.stackhawk.com/.
- 42Crunch API Security : https://42crunch.com/.
- OWASP API Security Top 10 2023 : https://owasp.org/API-Security/.
- Akamai acquisition Noname Networks (2024) : https://www.akamai.com/newsroom.
- Invicti / Acunetix fusion 2024 : https://www.invicti.com/.
11. Points clés à retenir
- DAST = analyse dynamique runtime. Teste l'application en cours d'exécution comme un attaquant externe.
- Origine : ~2003-2005 avec WebInspect (SPI Dynamics → HP/OpenText), AppScan (Watchfire → IBM/HCL).
- 4 catégories DAST 2026 : Web App, SPA, API DAST, Mobile. Convergence vers API-first.
- 80+ % du trafic web 2026 est API-driven (Gartner). API DAST = obligatoire en 2026, plus une option.
- OWASP API Security Top 10 2023 : BOLA (Broken Object Level Authorization, ex-IDOR) en #1.
- Leaders DAST 2026 : Burp Suite Pro/Enterprise (PortSwigger, 404 €/user/an), OWASP ZAP (gratuit), Invicti (ex-Netsparker, fusion Acunetix 2024), StackHawk (CI/CD-first), Veracode DAST, Checkmarx, Tenable Web App Scanning, Probely (Snyk acquisition 2023).
- API DAST spécialisés : 42Crunch, StackHawk, Wallarm, Salt Security, Cequence, Akamai API Security (acquisition Noname 2024), Traceable AI.
- Nuclei (ProjectDiscovery, OSS, lancé 2020) : ~10 000 templates 2026, scan rapide < 5 min, standard CI/CD light.
- 4 patterns d'auth scan : recorded login (SSO simple), token-based (dominant 2026), OAuth client_credentials, service account dédié.
- Anti-pattern absolu : scanner production avec compte admin réel. Toujours tenant test isolé + service account dédié.
- Pipeline mature 2026 : ZAP Baseline (PR fast 5 min) + ZAP Full (nightly 4h) + StackHawk API DAST + Nuclei CVE check + gating intelligent.
- Tarification 2026 : OSS-friendly ~50-100 k€/an + 0.5-1 ETP ; Burp Enterprise 30-100 k€/an ; StackHawk 30-100 k€/an ; Invicti 80-200 k€/an ; Veracode 150-400 k€/an.
- Compliance : DAST mappe directement OWASP Top 10 2021, OWASP API Security Top 10 2023, PCI-DSS v4.0 Req 6.4.1 + 11.4, NIST CSF 2.0 DE.CM-8, ISO 27001:2022 A.8.29, DORA article 25 (TLPT).






