Sécurité web

Testez les en-têtes de sécurité HTTP de votre site

Les en-têtes HTTP sont des consignes que votre serveur envoie au navigateur avec chaque page : ne charger le site qu'en HTTPS, refuser d'être affiché dans un cadre sur un autre site, n'exécuter que les scripts autorisés. Ils ne coûtent rien et bloquent des attaques courantes, mais ils sont souvent oubliés.

CyberGuard lit les en-têtes de votre site en 2 minutes et vous dit lesquels manquent.

Tester mon site

Les en-têtes qui comptent

Strict-Transport-Security (HSTS)
Oblige le navigateur à n'utiliser que HTTPS pour votre site, même si on lui donne un lien en http://.
Content-Security-Policy (CSP)
La liste des sources autorisées pour les scripts, les styles et les images. C'est la principale protection contre l'injection de code malveillant dans vos pages (XSS).
X-Frame-Options
Empêche un autre site d'afficher le vôtre dans un cadre invisible pour piéger vos visiteurs (clickjacking).
X-Content-Type-Options
Avec la valeur nosniff, il interdit au navigateur de deviner le type d'un fichier, ce qui évite qu'un fichier anodin soit exécuté comme un script.
Referrer-Policy
Limite les informations sur la page d'origine transmises aux autres sites quand un visiteur clique sur un lien.
Permissions-Policy
Désactive les fonctions du navigateur dont votre site n'a pas besoin : caméra, micro, géolocalisation...

Ces en-têtes se configurent une fois pour toutes chez votre hébergeur ou dans votre serveur, sans toucher au contenu du site.

Ce que CyberGuard vérifie

  • Dès le plan Starter : présence de Strict-Transport-Security, Content-Security-Policy et X-Frame-Options.
  • À partir du plan Pro : X-Content-Type-Options (nosniff), Referrer-Policy et Permissions-Policy.
  • À partir du plan Pro : version du serveur exposée dans l'en-tête Server (Apache, nginx, IIS, PHP, Express).
  • À partir du plan Pro : CORS trop permissif (Access-Control-Allow-Origin: *) et cookies sans attributs Secure, HttpOnly ou SameSite.
  • Plans Pro et Enterprise, sur un domaine vérifié : qualité de la CSP (scripts autorisés en 'unsafe-inline' ou 'unsafe-eval', sources joker, absence d'object-src).

Dès le plan Starter, CyberGuard vérifie que la CSP est présente. Une politique trop large, par exemple avec 'unsafe-inline', protège nettement moins : l'analyse de son contenu est faite sur les plans Pro et Enterprise, une fois votre domaine vérifié.

Exemple de résultat

exemple-pme.fr (domaine fictif, plan Pro)

  • OK : HSTS activé
  • À améliorer : CSP manquant — risque XSS élevé
  • À améliorer : X-Frame-Options manquant — risque clickjacking
  • À améliorer : Version serveur exposée : Apache/2.4.41
  • Critique : CORS trop permissif (Allow-Origin: *)

Chaque point pèse sur votre score de sécurité sur 100. Dès le plan Pro, le rapport IA vous donne le guide de correction adapté à votre serveur, à transmettre tel quel à votre prestataire.

Comment corriger, dans l'ordre

  1. Ajoutez d'abord les en-têtes simples

    X-Frame-Options: DENY (ou SAMEORIGIN), X-Content-Type-Options: nosniff, Referrer-Policy: strict-origin-when-cross-origin, et une Permissions-Policy qui coupe la caméra, le micro et la géolocalisation. Ils s'ajoutent dans le panneau de l'hébergeur, dans le fichier .htaccess (Apache), dans la configuration nginx ou dans le fichier de configuration de votre plateforme (Vercel, Netlify).

  2. Activez HSTS une fois tout le site en HTTPS

    Strict-Transport-Security: max-age=31536000, en commençant par une durée courte si certains sous-domaines fonctionnent encore en http://.

  3. Masquez la version de votre serveur

    Sur Apache, la directive ServerTokens Prod ; sur nginx, server_tokens off;. Un attaquant n'a pas besoin de savoir quelle version vous utilisez.

  4. Construisez votre CSP progressivement

    Commencez par l'en-tête Content-Security-Policy-Report-Only : il signale ce qui serait bloqué, sans rien bloquer. Listez les sources réellement utilisées (votre domaine, votre outil de statistiques, vos polices), puis passez en mode bloquant.

Une CSP trop stricte ajoutée d'un coup peut casser votre site : formulaires, statistiques ou paiement qui ne se chargent plus. Testez toujours en mode Report-Only avant.

Questions fréquentes

Mon site est sous WordPress. Puis-je ajouter ces en-têtes ?

Oui, sans toucher au thème : par le fichier .htaccess si votre hébergeur utilise Apache, par une extension de sécurité qui gère les en-têtes, ou dans le panneau de votre hébergeur s'il le propose.

Pourquoi X-XSS-Protection n'est-il pas vérifié ?

Cet ancien en-tête n'est plus pris en charge par les navigateurs modernes. La protection contre les scripts injectés passe aujourd'hui par Content-Security-Policy.

Le test est-il intrusif ?

Non. CyberGuard lit les en-têtes renvoyés par votre page d'accueil, comme le fait chaque navigateur qui la charge. Aucune attaque n'est simulée et rien n'est modifié.

Quel plan faut-il pour cette analyse ?

HSTS, CSP et X-Frame-Options sont vérifiés dès le plan Starter à 29 €/mois. L'analyse avancée (X-Content-Type-Options, Referrer-Policy, Permissions-Policy, version serveur, CORS, cookies) et le rapport IA sont inclus à partir du plan Pro à 79 €/mois.

Tester mon site

À lire aussi : NIS2 et PME : qui est concerné, ce qui va changer, et où en est la France

À lire aussi : RGPD et sécurité technique : la checklist que les DPO oublient souvent