Règle n° 211 - Le serveur envoie les informations indiquant les domaines autorisés à intégrer ses pages dans des cadres.
Les cadres permettent d’afficher des morceaux de pages web à l’intérieur d’une page web. C’est, par exemple, le cas d’un cadre affichant une publicité dans une autre page web. Vos contenus peuvent également être embarqués depuis une autre page, par exemple pour le tester avec certains services. Cela peut aussi être fait avec de mauvaises intentions, notamment pour faire croire à un utilisateur peu prudent qu’il est en train de naviguer chez vous : il faut donc empêcher ce risque.
Objectif
- réduire les risques d’utilisation trompeuse du contenu.
Solution technique
Configurer le serveur afin qu’il transmette aux navigateurs des informations explicites définissant les domaines autorisés à intégrer les pages dans des cadres (frames ou iframes). Cette configuration peut notamment reposer sur :
- l’utilisation de l’entête HTTP
X-Frame-Optionsavec les valeursDENY(interdiction totale d’intégration dans un cadre) ouSAMEORIGIN(autorisation limitée au même domaine) ; - et/ou la mise en place d’une politique de sécurité des contenus (Content Security Policy – CSP), via la directive
frame-ancestors, permettant de définir de manière fine les domaines autorisés à intégrer les pages.
Moyen de contrôle
À l’aide d’un outil d’inspection des entêtes HTTP ou d’analyse de la configuration serveur :
- vérifier la présence d’un mécanisme de contrôle des intégrations en cadre (par exemple
X-Frame-Optionsou une directive CSPframe-ancestors), - vérifier que ce mécanisme limite effectivement l’intégration des pages à des domaines explicitement autorisés ou l’interdit totalement.
Le contrôle porte sur l’existence d’une politique serveur explicite de protection contre l’intégration non autorisée en iframe, et non sur un entête unique.