1. Deux approches complémentaires, pas concurrentes
SAST (Static Application Security Testing) analyse le code source sans l'exécuter. Il détecte les patterns à risque dans le code : SQL concaténé, désérialisation non sécurisée, secrets en clair, crypto faible, validation insuffisante. Outils de référence : Semgrep, CodeQL, Bandit, Checkmarx, SonarQube.
DAST (Dynamic Application Security Testing) teste l'application en cours d'exécution, de l'extérieur. Il envoie des requêtes forgées pour détecter des vulnérabilités exploitables : XSS reflected, SQLi, SSRF, XXE, authentification cassée. Outils : OWASP ZAP, Burp Suite, Nuclei, Arachni.
Les deux techniques ne se remplacent pas - elles se complètent.
2. Forces et limites
| Aspect | SAST | DAST |
|---|---|---|
| Moment SDLC | Développement (commit, PR) | Staging, préprod, prod contrôlée |
| Couverture | Toute la codebase | Surface d'attaque exposée |
| Faux positifs | Élevés (plus de contexte manquant) | Modérés |
| Faux négatifs | Manque les vulnérabilités de config | Manque le dead code et erreurs non-exploitables |
| Intégration CI/CD | Simple (pre-commit, PR gate) | Plus complexe (besoin d'un runtime) |
| Coût runtime | Faible (analyse statique) | Élevé (scan actif peut charger les serveurs) |
3. Intégration CI/CD typique
# Exemple GitHub Actions DevSecOps
jobs:
sast:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: returntocorp/semgrep-action@v1
with:
config: p/owasp-top-ten
dast:
needs: [build, deploy-staging]
runs-on: ubuntu-latest
steps:
- uses: zaproxy/action-baseline@v0.14.0
with:
target: 'https://staging.example.com'SAST en pre-commit / PR check. DAST en scan nocturne sur staging. SCA (Software Composition Analysis) en parallèle pour les deps. IAST en runtime staging pour les vulnérabilités mixtes.
4. À retenir
SAST et DAST ont chacun leurs angles morts. Une stratégie AppSec mature combine SAST + DAST + SCA + secrets scanning + IaC scanning à différentes étapes du SDLC. L'objectif n'est pas zéro faux positif - c'est la couverture complémentaire et le triage efficace.




