Лучшая практика: предотвращение взлома кликов: что делать, если JavaScript отключен?
В настоящее время я смотрю на защиту веб-сайта от перехвата кликов. Немецкая Википедия дает следующий лучший пример для этого:
<style> html{display : none ; } </style>
<script>
if( self == top ) {
document.documentElement.style.display = 'block' ;
} else {
top.location = self.location ;
}
</script>
Мне, однако, было интересно, что, если у клиента отключен JavaScript? Тогда он НЕ будет отображать страницу. У нас есть требование отправить полностью функциональную версию приложения без поддержки javascript.
Любая рекомендация для достижения этого?
1 ответ
Ты можешь использовать
<script>
if (self !== top) {
document.documentElement.style.display = 'none';
top.location = self.location;
}
</script>
по-прежнему скрывать страницу в случае успешной атаки на навигацию. Вы также можете показать сообщение по линии self.location.href + " cannot be displayed in a frame."
вместо.
Конечно, это не помешает отображению вашей страницы во фрейме, когда JavaScript отключен (может быть, даже не глобально, а только в вашем фрейме), поэтому вы всегда должны отправлять соответствующий заголовок X-Frame-Options рядом.