Vous avez implémenté du JavaScript anti-framing pour empêcher votre site d'être intégré dans des iframes. Cependant, vous avez découvert un code malveillant qui peut contourner vos efforts de contournement de trames. Ce problème soulève une question intrigante : pouvez-vous déjouer le casseur de trames ?
Le code de l'attaquant fonctionne en incrémentant un compteur lors des tentatives de navigation dans la page et en utilisant un minuteur pour rediriger la page vers un serveur distant qui répond avec HTTP. code d'état 204, empêchant efficacement la navigation.
Pendant que l'anti-cadrage Si le code peut être contourné, il est possible de reprendre le contrôle en neutralisant les mécanismes de compteur et de minuterie employés par l'attaquant. Voici comment procéder :
L'événement onbeforeunload est utilisé par l'attaquant pour incrémenter le compteur. Pour le désactiver, utilisez :
window.onbeforeunload = null;
Pour suspendre la minuterie setInterval, utilisez la fonction clearInterval :
var intervalID = setInterval(function() { // ... }, 1); clearInterval(intervalID);
Pour les principaux navigateurs, l'utilisation de l'en-tête X-Frame-Options peut empêcher le cadrage même avec script désactivé. Par exemple :
X-Frame-Options: SAMEORIGIN
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!