Можете ли вы победить выключатель кадров? - PullRequest
4 голосов
/ 26 октября 2011

Мне пока не удалось найти много ответов, поэтому я просто собираюсь спросить.

Насколько сложно было бы остановить работу выключателя фрейма или даже просто проигнорировать его?

Ответы [ 2 ]

6 голосов
/ 10 мая 2014

Это решение вашей проблемы, надеюсь, оно помогло!

<iframe src="URL" sandbox="allow-scripts" width="100%" height="100%" scroll="yes" frameborder="0"></iframe>

6 голосов
/ 26 октября 2011

По вопросу Джеффа :

Как выясняется, ваш код очистки кадра может быть переброшен , , как показано здесь :

<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://server-which-responds-with-204.com'  
      }  
    }, 1)  
</script>

Этот код выполняет следующие действия:

  • увеличивает счетчик каждый раз, когда браузер пытается отойти от текущей страницы, с помощью обработчика событий window.onbeforeonload
  • устанавливает таймер, который срабатывает каждую миллисекунду с помощью setInterval(), и, если он видит счетчик с приращением, меняет текущее местоположение на сервер управления атакующего
  • , этот сервер отображает страницу с HTTP-статусомкод 204 , который не заставляет браузер перемещаться куда-либо
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...