Le cadenas n’indique pas si le certificat sera renouvelé demain ni si un site tiers peut intégrer votre page. TLS et politiques HTTP répondent à des problèmes différents. Les examiner ensemble révèle les urgences de disponibilité et les protections manquantes.
Le module TLS de Sitelemetry relève confiance, validité et protocole négocié. Le module d’en-têtes inspecte une réponse réelle et conserve URL finale, statut et valeurs observées. Ces données amorcent une réparation ; elles ne prouvent pas un test d’intrusion complet.
Périmètre de cet audit
Ce qui peut être mesuré
- Confiance TLS, dates du certificat, émetteur et protocole négocié sur la connexion testée.
- HSTS, CSP, protection contre l’encadrement, type de contenu, politique de référent et signaux de divulgation/CORS.
- Attributs des cookies effectivement reçus et contrôles réussis pris en charge.
Ce qu’il ne prouve pas
- Une version TLS négociée n’énumère pas tous les protocoles ou suites cryptographiques acceptés.
- Une réponse publique n’expose pas tous les cookies authentifiés ni toutes les politiques par route.
- Sans réponse à cause de TLS ou du réseau, les en-têtes restent non mesurés plutôt qu’absents.
Analysez une cible vérifiée et autorisée. Offre et profil définissent les modules ; les moteurs supplémentaires nécessitent leur propre disponibilité. Lisez la couverture avant comparaison.
Distinguez certificat défaillant et politique absente
Un certificat expiré peut bloquer les clients immédiatement. Une politique de référent absente a d’autres effets et une autre urgence. Commencez par hôte, redirection finale, expiration et erreur de confiance. La défaillance concerne-t-elle CDN, origine ou un hôte précis ? Un certificat du domaine principal ne couvre pas automatiquement les sous-domaines.
Le contrôle natif signale une négociation ancienne observée et une expiration proche. Une connexion TLS 1.3 ne prouve pas que les anciennes versions sont désactivées. Vérifiez la configuration de terminaison et un test de protocoles adapté lorsqu’il faut cette assurance.
Priorisez selon les conséquences
| Constat | Priorité habituelle | Preuve utile |
|---|---|---|
| Certificat expiré ou non fiable | Élevée | Hôte, date, erreur de confiance |
| Expiration proche | Moyenne ; urgence croissante | Jours restants et renouvellement |
| HSTS, CSP ou protection des cadres absente | Souvent moyenne ; contexte important | En-têtes réels et page |
| nosniff ou politique de référent absente | Généralement faible | Valeur et type de contenu |
| CORS générique sur ressource publique | Évaluer le contexte | Sensibilité et consommateurs prévus |
L’absence de CSP ne prouve pas un XSS, et sa présence ne le rend pas impossible. Un CORS générique peut être voulu pour des ressources publiques. Sur des données privées, examinez authentification et comportement d’origine réels. N’assimilez pas toute observation à une fuite confirmée.
Déployez CSP à partir des observations
Inventoriez scripts, polices, images, connexions, cadres et paiements. Testez d’abord avec Content-Security-Policy-Report-Only. Ce mode révèle des incompatibilités sans bloquer les actions. Configurez une destination adaptée si vous voulez centraliser les rapports.
Content-Security-Policy-Report-Only: default-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'self'Ce point de départ est illustratif, pas universel. Des services externes peuvent nécessiter des sources explicites, les scripts des nonces ou empreintes. Testez inscription, fenêtres OAuth, paiement, consentement et erreurs. Résolvez les violations légitimes, puis appliquez la politique validée. N’ajoutez pas des jokers larges pour simplement faire taire les rapports.
Considérez HSTS comme un engagement d’exploitation
HSTS demande aux navigateurs compatibles HTTPS pendant une durée mémorisée. Vérifiez HTTPS fiable et renouvellement avant de l’allonger. Commencez par une durée courte contrôlée, observez, puis augmentez après stabilisation.
includeSubDomains touche aussi les sous-domaines : examinez services anciens et délégués. Le préchargement impose des conditions de listes de navigateur et peut être lent à retirer. Le mot preload ne soumet pas automatiquement le domaine. Ne copiez pas une longue durée couvrant tous les sous-domaines uniquement pour supprimer une alerte.
Contrôlez la réponse réellement reçue
Modifiez le terminateur TLS effectif et la couche produisant la réponse. Un fichier correct à l’origine peut être sans effet si le CDN remplace les en-têtes. Des politiques dupliquées peuvent également interagir. Comparez accueil, connexion, application et erreurs après redirections plutôt qu’un seul fichier de configuration.
Utilisez Secure et HttpOnly à bon escient pour les cookies de session ; choisissez SameSite selon le parcours intersite réel. Un cookie de préférence lisible en JavaScript n’est pas un jeton de session. Associez nosniff aux bons MIME. Réduire les versions divulguées ne corrige pas un logiciel ancien. Le guide OWASP détaille chaque protection.
Retestez sécurité et fonctionnement ensemble
- Vérifiez certificat fiable et dates attendues sur le bon hôte.
- Examinez les valeurs réelles après redirections et mise à jour des caches.
- Testez inscription, connexion, déconnexion, paiement et intégration dans les navigateurs supportés.
- Répétez les mêmes modules et consultez les contrôles incomplets.
- Gardez surveillance du renouvellement et retour arrière de politique testé.
Si TLS échoue par intermittence, conservez l’erreur et répétez depuis un autre réseau pertinent avant de déclarer tout le site indisponible. Un retest réussi clôt le constat, pas tous les risques de transport. Complétez avec le guide TLS OWASP.
Questions fréquentes
Report-Only supprime-t-il le constat de CSP absente ?
C’est une phase de test sans application. Le constat peut rester jusqu’au déploiement d’un en-tête Content-Security-Policy opérationnel.
Faut-il activer immédiatement le préchargement HSTS ?
Seulement après examen des exigences, des sous-domaines et des conséquences. Ce n’est pas un choix sûr par défaut pour tout domaine.
Pourquoi les en-têtes sont-ils non mesurés si le certificat échoue ?
La requête HTTPS vérifiée n’a pas fourni d’en-têtes utilisables. L’erreur TLS est une preuve ; l’absence de réponse ne justifie pas plusieurs absences inventées.
Sources et lectures
- MDN : mode de rapport CSPdeveloper.mozilla.org
- MDN : HTTP Strict Transport Securitydeveloper.mozilla.org
- OWASP : en-têtes HTTPcheatsheetseries.owasp.org
- OWASP : sécurité TLScheatsheetseries.owasp.org
Rédigé par l’équipe Sitelemetry et vérifié par rapport au périmètre du produit et aux sources primaires citées. Les exemples sont illustratifs, sauf mention explicite d’un cas observé.



