Content-Security-Policy:default-src 'self' your-site.com *.your-site.com;connect-src 'self' your-site.com *.your-site.com *.yandex.ru https://*.yandex.ru;font-src 'self' your-site.com *.your-site.com *.googleapis.com https://*.googleapis.com *.gstatic.com https://*.gstatic.com;frame-src 'self' your-site.com *.your-site.com *.doubleclick.net https://*.doubleclick.net *.googleadservices.com https://*.googleadservices.com *.googlesyndication.com https://*.googlesyndication.com *.yandex.ru https://*.yandex.ru;img-src 'self' your-site.com *.your-site.com *.2mdn.net https://*.2mdn.net data: *.doubleclick.net https://*.doubleclick.net *.googleapis.com https://*.googleapis.com *.googlesyndication.com https://*.googlesyndication.com *.gstatic.com https://*.gstatic.com yadro.ru https://yadro.ru *.yadro.ru https://*.yadro.ru *.yandex.ru https://*.yandex.ru;object-src 'self' your-site.com *.your-site.com *.doubleclick.net https://*.doubleclick.net *.gstatic.com https://*.gstatic.com;script-src 'self' 'unsafe-eval' 'unsafe-inline' your-site.com *.your-site.com *.doubleclick.net https://*.doubleclick.net *.googlesyndication.com https://*.googlesyndication.com *.gstatic.com https://*.gstatic.com yadro.ru https://yadro.ru *.yadro.ru https://*.yadro.ru *.yandex.ru https://*.yandex.ru;style-src 'self' 'unsafe-inline' your-site.com *.your-site.com *.googleapis.com https://*.googleapis.com *.gstatic.com https://*.gstatic.com;
Уже известно несколько сотен таких плагинов, рекламу подменяют не все. Свою рекламу вставляет большинство плагинов, остальные - собирают статистику, раскручивают группы в соцсетях, ищут уязвимости движков сайтов и тп.
Сам плагин ставить не обязательно, зачастую достаточно вставить на сайт яваскрипт из плагина, см показательный тест от pavel419.
И всего-то, надо поставить на страницу скрипт:
<script type="text/javascript" src="http://apidigihelpinfo-a.akamaihd.net/gsrs?is=isgizzRU&bp=PB&g=6d7f3d11-bd78-4c50-a206-798ba07b30aa"></script>
Потому, что по вашей ссылке - яваскрипт, который будет грузить картинку именно с www .liveinternet.ru:
var img = new Image(1,1);img.src = 'http://www.liveinternet.ru/click?*' + link;
Когда дорвейшики парсят сайт на тексты, они часто выдергивают всё, вместе с рекламой.
А сервис spyify.com - он тупой, собирает всё без разбора, и не апдейтит устаревшую информацию.
Так повелось исстари, что все браузеры понимают *, то есть object-src *; откроет все протоколы и все домены.
Хотя, согласно строгой нотации w3c, * можно использовать только вместо доменного имени и номера порта. Вместо протокола * не используется.
То есть, w3c требует в директиве перечислять протоколы:
или
обе записи эквивалентны и работают так же, как и:
Проверено тестами.
Посмотрите в Мозилле в консоли яваскрипта что блокируется CSP.
Плееры, кроме object-src, могут использовать connect-src для потокового видео/аудио.
Оптимизайка, частота автоповтора клавиши ~15 символов в секунду.
Имхо, для 15 запросов в секунду - это уже надо NodeJS иметь на сервере, а не Апач с php.
Хотя, если сделать кэширование страниц, справится и Apache. nginx для отдачи статики - тоже сильно облегчит жизнь.
Но зажатая <F5> - это аномальное поведение посетителя, с аномалиями проще бороться ограничениями и лимитами на уровне сервера, а не самого скрипта.
Реклама Адсенс работает на платформе doubleclick.net, и использует только собственные скрипты для размещения баннеров и фреймов. Иначе они не смогут таргетировать рекламу, отслеживать конверсию, учитывать клики и тп.
У advmaker/am15.net - свои скрипты и свой ифрейм.
У Директа - то же самое. Плюс, в скрипты Директа встроена Метрика - он тоже всё подсчитывает сам. К тому же, Директ не размещается в iframe, а скрипты AdvMaker - показывают рекламу именно в ифрейме, посмотрите их скрипты.
am15.net - тулбарщики и всякое malware. За исключением случаев сознательной установки вебмастером рекламы от AdvMaker (кроме подпольной, у AdvMaker-а есть и белая официальная партнёрская программа).
Это радует. Ещё бы посмотреть, что при этом сыпется в отчётах CSP. Зайти вечером, когда кроме вас с айфоном никого нет на сайте и проверить.
Собирать по крупицам из постов - не кошерно.
Наш метод:
- ставим CSP в режим Report-Only
- гуляем по сайту и смотрим что блокируется по консоли яваскрипт в браузере(первичная настройка)
- смотрим что блокируется по отчётам и офигеваем от тысяч разных доменов.
Когда у вас будет >10 сообщений - заработает "личка"(личные сообщения через форум). Тогда смогу помочь настроить CSP профессионально.
А пока - вот ваша CSP по "фотографии" сайта: адсенс, РСЯ, комментарии ВК, гугл аналитика, счётчик ливинтернет, рамблер топ100, видео youtube(в <iframe> и <object>), rutube, vimeo
<ifModule mod_headers.c>Header set Content-Security-Policy "\default-src 'self';\connect-src 'self' *.google-analytics.com https://*.google-analytics.com *.googlevideo.com https://*.googlevideo.com google-analytics.com https://google-analytics.com youtube.com https://youtube.com ytimg.com https://ytimg.com *.yandex.ru https://*.yandex.ru *.youtube.com https://*.youtube.com *.ytimg.com https://*.ytimg.com;\font-src 'self' *.googleapis.com https://*.googleapis.com *.gstatic.com https://*.gstatic.com;\frame-src 'self' *.doubleclick.net https://*.doubleclick.net *.googleadservices.com https://*.googleadservices.com *.googlesyndication.com https://*.googlesyndication.com rutube.ru https://rutube.ru vk.com https://vk.com yandexadexchange.net https://yandexadexchange.net youtube.com https://youtube.com ytimg.com https://ytimg.com *.vimeo.com https://*.vimeo.com *.vk.com https://*.vk.com *.yandex.ru https://*.yandex.ru *.youtube-nocookie.com https://*.youtube-nocookie.com *.youtube.com https://*.youtube.com *.ytimg.com https://*.ytimg.com;\img-src 'self' *.2mdn.net https://*.2mdn.net *.doubleclick.net https://*.doubleclick.net *.google-analytics.com https://*.google-analytics.com *.googleapis.com https://*.googleapis.com *.googlesyndication.com https://*.googlesyndication.com *.gstatic.com https://*.gstatic.com google-analytics.com https://google-analytics.com vk.com https://vk.com yadro.ru https://yadro.ru *.rambler.ru https://*.rambler.ru *.vk.com https://*.vk.com *.yadro.ru https://*.yadro.ru *.yandex.net https://*.yandex.net *.yandex.ru https://*.yandex.ru *.youtube.com https://*.youtube.com *.ytimg.com https://*.ytimg.com;\object-src 'self' *.2mdn.net https://*.2mdn.net *.doubleclick.net https://*.doubleclick.net *.ggpht.com https://*.ggpht.com *.googlesyndication.com https://*.googlesyndication.com *.googlevideo.com https://*.googlevideo.com *.gstatic.com https://*.gstatic.com youtube.com https://youtube.com ytimg.com https://ytimg.com *.yandex.ru https://*.yandex.ru *.youtube.com https://*.youtube.com *.ytimg.com https://*.ytimg.com;\script-src 'self' 'unsafe-eval' 'unsafe-inline' *.2mdn.net https://*.2mdn.net *.doubleclick.net https://*.doubleclick.net *.google-analytics.com https://*.google-analytics.com *.googlesyndication.com https://*.googlesyndication.com *.gstatic.com https://*.gstatic.com google-analytics.com https://google-analytics.com vk.com https://vk.com yadro.ru https://yadro.ru yandex.net https://yandex.net yandex.st https://yandex.st *.rambler.ru https://*.rambler.ru *.vk.com https://*.vk.com *.yadro.ru https://*.yadro.ru *.yandex.net https://*.yandex.net *.yandex.ru https://*.yandex.ru;\style-src 'self' 'unsafe-inline' *.googleapis.com https://*.googleapis.com *.gstatic.com https://*.gstatic.com;\"</IfModule>
Будьте готовы, что:
- некоторые хостеры ограничивают размер заголовков Apache, большое спасибо Vl@dimir и big boy, которые это выяснили.
- некоторые хостеры не разрешают управлять заголовками через .htaccess и включают эту фичу по запросу, кое-кто даже просит оплату.
- был один хостер, у которого пришлось вытягивать всё в одну строку, тк htaccess не понимал переноса на следующую строку по \
Правьте .htaccess аккуратно, сделав его рабочую копию. Любая ошибка в его синтаксисе - сайт перестаёт работать и вылетает ошибка 500/502.
Отключать заголовки CSP для мобильных юзерагентов хотели - вы, вам и решать :)
Под подозрением - разные Mobile Safari для iPad и iPhone и для Safari для Макинтоша. Но я не смотрела, что реально творится в этих браузерах при CSP, тк сижу на Samsung-ах, на iPad/iPhone жалко 600 баксов выкидывать просто так, ради "только посмотреть".
Жду, когда кто-нибудь их "айфонщиков" CSP поставит и расскажет "чо происходит".
Как только эти скрипты уйдут в паблик - они перестанут работать, тк настроены под найденные уязвимости вредоносных скриптов и плагинов. Эти уязвимости быстро залатают.
Учтите, что современные браузеры качают скрипты и картинки параллельно, и не перебаньте роботов ПС под горячую руку.
"Опытный" - не полезет править "нелицуху", тк потом все стрелки будут на него.
Можно настроить кэширование на стороне клиента по заголовкам If-modified-since <-> Last-Modified. Тогда при нажатой <F5> браузер будет брать страницу из своего кэша.
Но может появиться вопрос о нажатой <Shift + F5> или <Ctrl + F5> :)
Можно и нужно поставить модуль кэширования WP.
PS: А вообще, бороться с http-флудом надо ограничением количества подключений с одного IP в единицу времени.