Ростелеком. Врезка рекламы в трафик. Беспредел1
Сегодня столкнулся с тем, что на некоторых сайтах внезапно перестал работать скриптовый функционал (кнопки, слайдеры и т.д.). Отключение адблока не помогло.
Полез в консоль браузера и увидел там следующее:
Content Security Policy: Параметры страницы заблокировали загрузку ресурса http://r.analytic.press/?orig=http%3A%2F%2Fsite.ru%2Fscripts...
Просмотрев в кеше браузера скрипт site.ru/scripts/main/js/sidebar.js, я увидел, что он подменен на зловредный скрипт, вставляющий рекламу.
После нескольких проверок выяснилось, что подмена происходит на уровне провайдера (Ростелеком). Многие сайты используют Content Security Policy, из-за которого вставленный скрипт вместо показа рекламы просто ломает функционал сайтов.
Если на вашем сайте по каким-то причинам не может использоваться HTTPS, есть решение по блокировке рекламы, вставляемой операторами связи.
1. Самый первый скрипт, загружаемый с сайта, должен быть пустым. При запросе скрипта с сервера, Ростелеком подменяет настоящий ответ на ответ с перенаправлением на скрипт, расположенный на домене r.analytic.press. Который в свою очередь вставляет рекламу и грузит оригинальный (настоящий) скрипт. Таким образом, если скрипт будет пустым, то блокировка запросов на r.analytic.press не приведет к проблемам с функционированием сайта.
2. Для блокировки запросов на r.analytic.press и другие рекламные ресурсы у всех пользователей (даже у кого нет адблока) нужно использовать Content Security Policy. Врезка рекламы на сайтах с CSP не работает, но при этом ломает функционал сайтов (Ростелеком нарушает работу информационной системы, что есть уголовная статья). Если использовать CSP совместно с пунктом 1, то реклама не показывается и на сайте ничего не ломается.
@RTsupport, этот беспредел навсегда?