Un en-tête de sécurité HTTP pour lutter contre le « Clickjacking » – Comment améliorer la sécurité de votre site avec l’en-tête d’options X-Frame

http security header

 

Vous en avez peut-être pris connaissance à la suite d’un test de pénétration de la sécurité ou parce que vous essayez d’empêcher une partie de détourner votre site ou de le recouvrir de publicités. Quoi qu’il en soit, l’en-tête X-Frame-Options est un bon élément à inclure dans les réponses des sites web afin d’améliorer la sécurité de votre site et d’offrir une certaine sécurité à ses visiteurs.

Cet en-tête indique au navigateur comment votre site peut être affiché dans un cadre (ou iFrame). Un cadre permet à une page web d’afficher le contenu d’un autre site à l’intérieur (souvent d’une manière qui n’est pas évidente pour le spectateur). Vous ne pensez peut-être pas que cela pose un problème, puisqu’il s’agit d’une page web publique après tout, mais ce n’est jamais aussi simple. Que se passerait-il si quelqu’un avait enregistré une erreur d’orthographe courante de votre nom de domaine et y affichait votre site à l’aide d’une iFrame ? Il pourrait superposer des publicités ou présenter une fausse page de connexion, et le tout aurait l’air tout à fait authentique, car il s’agirait du contenu de votre site, simplement diffusé depuis un autre endroit. Il n’y a pas de moyen plus rapide de perdre la confiance des clients que lorsqu’un acteur malveillant abuse de cette fonctionnalité à son avantage. Il existe de véritables utilisations des cadres, mais il est très probable que vous n’en ayez aucune à votre disposition.

La définition de l’en-tête X-Frame-Options dans toutes vos réponses est un moyen simple d’éviter ce genre de problèmes. Trois valeurs sont possibles : DENY, SAMEORIGIN et ALLOWFROM ;

-DENY empêche l’affichage du contenu de votre site dans un cadre, même par une autre page de votre site. Ceci est souvent correct mais a l’habitude de casser les applications basées sur Java.

-SAMEORIGIN est le paramètre le plus couramment utilisé et signifie que les pages de votre site web peuvent être incluses dans des cadres, mais uniquement sur d’autres pages du même site web.

-Si vous en avez besoin, vous savez probablement ce qu’il faut faire. Si ce n’est pas le cas, appelez-nous.

Comme nous le disons toujours, l’un des grands avantages de l’utilisation d’un équilibreur de charge est qu’il suffit d’apporter des modifications à un seul endroit pour déployer cet en-tête sur tous nos serveurs. Nous n’avons pas besoin de faire appel à des développeurs ou de reconfigurer Apache. Il suffit d’importer un modèle de configuration jetPACK et d’assigner une règle de trafic flightPATH au(x) service(s) virtuel(s) que vous souhaitez protéger.

flightPATH est un moteur de règles dynamique, basé sur des événements, développé par edgeNEXUS pour manipuler et acheminer intelligemment le trafic IP, HTTP et HTTPS à charge équilibrée. Il est hautement configurable et puissant, tout en étant très facile à utiliser.

La règle n’ajoute l’en-tête que s’il n’existe pas, de sorte qu’elle fonctionnera même si nos serveurs web l’insèrent déjà ou ne l’insèrent que pour des pages spécifiques. Cette règle devrait faire partie de votre configuration standard de service virtuel – vous n’avez rien à perdre, quel que soit le site, même si, bien sûr, il est toujours recommandé de procéder à des tests. Vous pouvez télécharger le jetPACK sur le site Github d’edgeNEXUS ici.

Il s’agit de l’une des nombreuses règles flightPATH que nous avons développées et que vous pouvez déployer pour améliorer la sécurité de votre site et de ses utilisateurs. Pour en savoir plus sur les en-têtes HTTP liés à la sécurité, consultez ces articles :

 

About Donna Toomey