Quels en-têtes de réponse HTTP améliorent la sécurité ?
Réponse courte
Les en-têtes de sécurité clés incluent Strict-Transport-Security (force HTTPS, bloque le SSL stripping), Content-Security-Policy (limite les sources de scripts, atténue le XSS), X-Frame-Options ou CSP frame-ancestors (bloque le clickjacking), X-Content-Type-Options: nosniff (stoppe le MIME sniffing) et Referrer-Policy (contrôle la fuite du référent). Chacun traite une classe d'attaque spécifique.
Les en-têtes de réponse de sécurité sont des contrôles peu coûteux et à fort effet de levier : le serveur indique au navigateur d'imposer un comportement plus sûr, sans modification de la logique applicative. Chacun comble une faille spécifique.
Les en-têtes qui comptent
- Strict-Transport-Security (HSTS).
max-age=63072000; includeSubDomainsindique au navigateur de toujours se connecter uniquement en HTTPS à cet hôte, même si l'utilisateur tapehttp://ou clique sur un lien HTTP. Cela déjoue les attaques de l'homme du milieu par SSL stripping qui rétrogradent la connexion. La liste de préchargement du navigateur l'intègre avant la première visite — puissant, mais difficile à annuler, donc configurez-le correctement. - Content-Security-Policy. Contraint les sources de chargement des scripts et autres ressources ; l'atténuation XSS la plus forte basée sur un en-tête (traitée en détail à part).
- X-Frame-Options / CSP
frame-ancestors. Contrôle qui peut intégrer votre page dans une<iframe>, déjouant le clickjacking (superposer votre interface sous un leurre).frame-ancestorsest le remplacement moderne et plus flexible. - X-Content-Type-Options: nosniff. Empêche le navigateur de deviner le type MIME d'une réponse pour la transformer en un autre type de contenu. Sans cela, un fichier servi en texte pourrait être interprété comme un script exécutable — transformant un envoi anodin en XSS stocké.
- Referrer-Policy. Limite la quantité d'URL envoyée dans l'en-tête
Referervers d'autres sites, empêchant la fuite de jetons sensibles ou de chemins internes. - Permissions-Policy. Désactive les fonctionnalités puissantes du navigateur (caméra, géolocalisation) dont l'application n'a pas besoin, réduisant la surface d'attaque.
Ce qu'il faut retirer
Tout aussi important : retirer les en-têtes de divulgation d'informations comme Server et X-Powered-By qui livrent aux attaquants votre pile et sa version exactes.
Pourquoi les en-têtes sont de la défense en profondeur
Ils ne corrigent pas le code vulnérable ; ils réduisent l'exploitabilité et le rayon d'impact sur tout le site d'un coup.
Les recruteurs recherchent que vous nommiez plusieurs en-têtes et, surtout, l'attaque spécifique que chacun empêche — HSTS/SSL-strip, X-Frame-Options/clickjacking, nosniff/MIME-sniffing — plutôt que de simplement lister des noms.
Questions de suivi probables
- Que fait la liste de préchargement HSTS et quel est le risque de mal la configurer ?
- Comment X-Content-Type-Options: nosniff empêche-t-il une attaque ?
- Pourquoi frame-ancestors dans la CSP est-il préféré à X-Frame-Options ?