367  /  382
Справочник

Защита от фреймов

Просмотров: 38794
Дата последнего изменения: 29.05.2024
Роберт Басыров
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
1
2
3
4
5
Недоступно в лицензиях:
Ограничений нет

На странице Защита от фреймов (Настройки > Проактивная защита > Защита от фреймов) можно включить/отключить ограничение работы во фрейме, а также задать исключения на действие защиты.

Нажмите на рисунок, чтобы увеличить

Запрет на использование кросс-доменных фреймов, ссылающихся на страницы ресурса, задается установкой заголовка (header) X-Frame-Options в значение SAMEORIGIN.

X-Frame-Options

Такой заголовок указывает браузеру, можно ли загружать страницы сайта через <frame>/<iframe>.

  • DENY — значение запретит загрузку через фреймы
  • SAMEORIGIN — значение разрешит загрузку, но только если и фрейм, и страница, его загружающая, находятся на одном домене (Same Origin Policy)

Основная функция такой защиты — предотвращение кликджекинга. А в качестве дополнительного бонуса это позволит предотвратить атаку, описанную Ben Schmidt.


Защита от фреймов в коробочных продуктах на BitrixVM

Защита от фреймов присутствует не только в административных настройках коробочных продуктов 1С-Битрикс, а и в виртуальной машине BitrixVM. Вы найдете header для защиты от фреймов в файле конфигурации nginx по пути /etc/nginx/bx/conf/general-add_header.conf. Запись имеет вид:

add_header X-Frame-Options SAMEORIGIN;

Когда вы включаете защиту от фреймов через модуль проактивной защиты, добавляется такой же заголовок. Причем есть возможность настроить исключения, если такой хедер не нужен, например, для Яндекс.Метрики.

При стандартных настройках BitrixVM может возникнуть ситуация, когда конфиг nginx перекроет системную настройку защиты от фремов. В этом случае хедер будет присутствовать всегда, даже если он выключен в административных настройках. А при включённой защите от фремов, хедер будет дублироваться и сайты, которые добавлены в исключения защиты, не будут корректно работать.

Вариант решения такой ситуации — использовать только один инструмент. Рекомендуем пользоваться инструментом проактивной защиты Защита от фрейма в продукте, чтобы не менять регулярно конфигурационные файлы сервера. Тогда в BitrixVM вы можете один раз закомментировать хедер в файле /etc/nginx/bx/conf/general-add_header.conf:

#add_header X-Frame-Options SAMEORIGIN;

А затем включить защиту от фреймов через Проактивная защита > Защита от фреймов.

Теперь заголовок X-Frame-Options будет записан верно и вы сможете добавлять исключения через админку, не внося изменений в конфигурационные файлы сервера.

26
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии