Septembre 2026
Une note de sécurité de A à F, et le détail qui va avec
L’audit d’août l’a montré : un constat sans hiérarchie ne sert à personne. Le rapport rend maintenant une note sur cent, sa lettre, et pour chaque point perdu la ligne exacte à poser sur le serveur.
Pourquoi une note
Une liste de six en-têtes absents ne dit pas lesquels comptent. Le lecteur repart avec un inventaire et aucun ordre de priorité, ce qui revient à ne rien lui dire. La note part de cent et retranche. HSTS et Content-Security-Policy valent dix-huit points chacun, parce qu’ils sont les deux seuls à fermer une classe d’attaque entière : le retour au clair pour le premier, l’injection de contenu pour le second. X-Content-Type-Options et X-Frame-Options valent huit, Referrer-Policy et Permissions-Policy six. Ceux-là durcissent, ils ne protègent pas à eux seuls.
Sans HTTPS, F, sans discussion
Quand la page n’est pas servie en HTTPS, la note tombe à F et le détail n’est pas calculé. Ce n’est pas de la sévérité d’affichage, c’est la seule lecture honnête : tout transite en clair, n’importe quel intermédiaire lit et modifie la page, et aucun en-tête n’y change quoi que ce soit. Additionner des points de durcissement par-dessus une connexion ouverte donnerait une note flatteuse et fausse.
Ce qui coûte, au-delà des en-têtes
- Un certificat déjà expiré retire quarante points, un certificat qui ne correspond pas au nom du site en retire trente.
- Quinze jours ou moins avant l’échéance : quinze points. Trente jours ou moins : cinq seulement, parce qu’un renouvellement automatique se déclenche dans cette fenêtre, comme l’audit d’août l’avait montré.
- Un seul cookie posé sans Secure ou sans HttpOnly : huit points.
- Un en-tête Server qui affiche un numéro de version, ou un X-Powered-By : quatre points. Ce n’est pas une faille, c’est une indication offerte à qui cherche une version vulnérable.
- Pas de SPF, pas de DMARC : cinq points chacun. Un domaine sans DMARC s’usurpe en e-mail, même s’il ne reçoit aucun courrier.
- Un nom de domaine qui expire dans moins de trente jours : huit points, et quinze s’il est déjà échu.
Nommer un en-tête ne suffit pas
« Il vous manque Permissions-Policy » ne dit rien à quelqu’un qui n’administre pas de serveur. Il repart sans savoir s’il doit s’inquiéter, ni quoi demander à son hébergeur. Chaque en-tête absent est donc rendu avec trois choses : ce qu’il protège, ce qu’un attaquant obtient sans lui, et la ligne à copier telle quelle. Pour HSTS, cette ligne est « Strict-Transport-Security: max-age=31536000; includeSubDomains ». Ce sont les valeurs que notre propre API applique à ses réponses, à une exception près : la politique de contenu d’une API qui ne sert que du JSON est trop stricte pour un site qui charge ses images et ses scripts, nous proposons donc une valeur adaptée à un site.
La même note, en continu
L’audit public et la surveillance continue partagent une seule fonction de calcul. L’audit apporte ce qu’il mesure en plus — le certificat, le DNS du domaine —, la surveillance se limite aux en-têtes de chaque réponse. Conséquence utile : la note d’un site surveillé se recalcule à chaque passage, et une dégradation se voit. Un B qui devient un D, c’est une mise en production qui a retiré une politique de contenu. Personne ne vous le dira, la page continue de s’afficher.
Ce que la note ne dit pas
Elle mesure une présence, pas une finesse de réglage. Une politique de contenu permissive compte comme présente, et une note A ne signifie pas qu’un site est sûr : elle signifie qu’il n’a pas oublié les protections que tout le monde oublie. L’audit ne remplace pas une revue applicative, il relève ce qui manque et ce qui régresse. C’est peu, c’est mesurable, et c’est exactement ce qu’aucune équipe ne surveille spontanément.