Stellen Sie sich das Szenario vor, in dem Sie verhindern möchten, dass andere Websites Ihre Website in einen
/* break us out of any containing iframes */ if (top != self) { top.location.replace(self.location.href); }
Dieser Code ist zwar effektiv, kann aber durch einen Frame-Busting-Buster umgangen werden:
<script type="text/javascript"> var prevent_bust = 0 window.onbeforeunload = function() { prevent_bust++ } setInterval(function() { if (prevent_bust > 0) { prevent_bust -= 2 window.top.location = 'http://example.org/page-which-responds-with-204' } }, 1) </script>
Dies Buster funktioniert wie folgt:
Wie besiegen Sie also den Frame-Busting-Buster?
Ein wirksamer Ansatz ist die Verwendung von X-Frame-Optionen: Deny-Direktive, unterstützt von den meisten modernen Browsern. Diese Anweisung verhindert das Framing, auch wenn Scripting deaktiviert ist:
X-Frame-Options: deny
Browser-Unterstützung:
Firefox (3.6.9):
Chrome/Webkit:
Das obige ist der detaillierte Inhalt vonWie kann ich einen Frame-Busting-Buster besiegen, der herkömmliches Frame-Busting-JavaScript umgeht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!