# Defense in Depth

> Defense in Depth : principe de cybersécurité consistant à superposer plusieurs couches de protection indépendantes, de sorte que la compromission d&#39;une couche ne suffise pas à compromettre l&#39;ensemble du système.

- **Catégorie** : Technique
- **URL** : https://www.romaindelfosse.fr/glossary/defense-in-depth/

---

La **Defense in Depth** (défense en profondeur) est un principe de cybersécurité qui consiste à superposer plusieurs couches de protection indépendantes plutôt qu'à s'appuyer sur une unique ligne de défense. L'idée fondamentale : aucun contrôle de sécurité n'est infaillible, donc la sécurité d'un système ne doit jamais reposer sur un point unique. Si un attaquant contourne une couche, il doit encore en franchir plusieurs autres avant d'atteindre les données critiques.

## Définition technique

### Le principe des couches indépendantes

Le mot-clé, c'est **indépendantes**. Deux couches qui partagent le même mécanisme ou la même implémentation ne fournissent pas de défense en profondeur — elles peuvent être compromises ensemble par la même faille. Une bonne stratégie empile des couches hétérogènes : un WAF au niveau CDN, des règles de filtrage au niveau du reverse proxy, du code de validation au niveau applicatif, et des contraintes au niveau de la base de données. Chaque couche est construite sur une pile technologique différente, avec des logiques de défaillance différentes.

### L'analogie du château médiéval

La métaphore classique est celle du château fort. L'attaquant doit franchir : les douves (ralentissement), la herse (premier contrôle physique), la cour extérieure (zone de feu croisé), le pont-levis intérieur (deuxième contrôle), le donjon (zone de repli final). Aucun de ces obstacles n'est infranchissable isolément, mais leur combinaison rend une attaque coûteuse, longue, et détectable. La Defense in Depth applique la même logique aux systèmes d'information.

## Enjeux actuels

### Remonter les contrôles le plus bas possible dans la stack

Une implémentation efficace consiste à placer chaque contrôle de sécurité au **niveau le plus bas** où il peut être appliqué. Un filtrage d'URL doit se faire au niveau du reverse proxy (Nginx, Envoy) et non dans le code applicatif. Un contrôle de débit (rate limiting) doit se faire au niveau du routeur ou du CDN. Un chiffrement doit se faire au niveau du stockage, pas dans le code. Cette logique produit naturellement une architecture où chaque couche a une responsabilité claire, et où la sécurité n'est pas un problème "applicatif" à résoudre avec du code métier.

### La complexité comme ennemie

La Defense in Depth a un piège : elle peut dégénérer en empilement de contrôles redondants, mal coordonnés, qui augmentent la complexité sans augmenter la sécurité. Chaque couche ajoutée est une surface d'attaque supplémentaire et un composant à maintenir. Une bonne stratégie privilégie quelques couches bien conçues et bien testées plutôt qu'une longue liste de contrôles cosmétiques. Le test ultime : chaque couche doit être capable de produire sa propre détection d'incident et son propre journal d'audit.

## Applications pratiques

### Sécurisation d'un WordPress

Plutôt que de tout confier à un plugin de sécurité applicatif, une approche Defense in Depth sur WordPress consiste à empiler : règles Nginx pour bloquer les patterns dangereux avant que PHP ne soit chargé, headers HTTP au niveau serveur, CSP stricte pour contenir les injections, filesystem en lecture seule pour empêcher l'upload de code, audit des dépendances Composer, vérification d'intégrité du core WordPress à chaque déploiement. Je détaille cette approche dans [mon article sur la sécurisation de WordPress via Infrastructure as Code](/blog/securiser-wordpress-sans-plugins-infrastructure-as-code/).

### Zero Trust et Defense in Depth

Les architectures modernes Zero Trust sont une application radicale de la Defense in Depth : chaque interaction entre deux composants (service à service, utilisateur à service, processus à processus) doit être authentifiée et autorisée, quelle que soit la zone réseau où elle se produit. Le principe sous-jacent est le même : on ne fait confiance à aucun périmètre, on empile les contrôles à chaque frontière.



## Questions fréquentes

### D&#39;où vient le concept de Defense in Depth ?

Le concept est militaire avant d'être informatique. Il désigne une doctrine de défense territoriale consistant à ne pas s'appuyer sur une ligne de front unique, mais à échelonner plusieurs lignes de défense — de sorte que la percée de la première n'entraîne pas l'effondrement général. La NSA a adopté et formalisé le terme dans les années 1990 pour la cybersécurité, et il est devenu depuis un pilier des standards NIST et ISO 27001.

### Quelles sont les couches typiques d&#39;une stratégie Defense in Depth ?

Une implémentation classique empile au minimum : (1) périmètre réseau (firewall, DDoS protection, CDN), (2) couche transport (TLS, VPN, segmentation), (3) serveur applicatif (durcissement OS, règles Nginx/Apache, WAF), (4) runtime (sandbox, disable_functions, isolation de processus), (5) application (validation d'entrée, authentification, autorisation), (6) données (chiffrement au repos, contrôle d'accès, audit), (7) gouvernance (formation, politique de sécurité, réponse à incident).

### Comment appliquer Defense in Depth à une application web ?

Concrètement, cela signifie ne pas confier toute la sécurité à un seul outil (par exemple un plugin WordPress ou un WAF cloud). Chaque couche doit avoir sa propre responsabilité, et chaque couche doit continuer à fonctionner même si la précédente a été compromise. Un bon test : si mon plugin de sécurité disparaît demain, qu'est-ce qui protège encore mon site ? Si la réponse est « rien », la stratégie n'est pas Defense in Depth — c'est un point de défaillance unique.



## Ressources

- [NIST SP 800-53 — Security and Privacy Controls](https://csrc.nist.gov/publications/detail/sp/800-53/rev-5/final?utm_source=romaindelfosse&amp;utm_medium=glossaire&amp;utm_campaign=defense-in-depth) — NIST

- [Defense in Depth — ENISA Overview](https://www.enisa.europa.eu/topics/cybersecurity-policy?utm_source=romaindelfosse&amp;utm_medium=glossaire&amp;utm_campaign=defense-in-depth) — European Union Agency for Cybersecurity

