Настройка CSP - Content Security Policy

T
На сайте с 24.09.2014
Offline
91
#691

Ребя, не ругайтесь сильно, но будьте добры пожалуйста - дайте пожалуйста шаблон кода, который нужно вставть в плагин wordpress для заголовка, при этом что бы картинки грузились с любого сайта. Спасибо Вам большое!

РКН: консультации, помощь с разблокированием, работа с конкурентами.
L
На сайте с 07.12.2007
Offline
351
#692
tylatong:
дайте пожалуйста шаблон кода, который нужно вставть в плагин wordpress для заголовка, при этом что бы картинки грузились с любого сайта.

Что за плагин и в каком виде он требует заголовок?

Вот полный заголовок CSP "картинки отовсюду, остальное - только со своего сайта, eval в яваскриптах запрещён":

Content-Security-Policy default-src 'unsafe-inline' 'self' ваш_сайт *.ваш_сайт https://ваш_сайт https://*.ваш_сайт; img-src * data: https:;

Если отдавать его на PHP, то заголовок будет выглядеть так:

header("Content-Security-Policy: default-src 'unsafe-inline' 'self' ваш_сайт *.ваш_сайт https://ваш_сайт https://*.ваш_сайт; img-src * data: https:;");

PS: Если сайт работает только по http:, то всё, что с https:// можно убрать.

T
На сайте с 24.09.2014
Offline
91
#693

Спасибо! А как добавить в этот код еще счетчики, тизерки?

D.iK.iJ
На сайте с 26.05.2013
Offline
237
#694
tylatong:
Спасибо! А как добавить в этот код еще счетчики, тизерки?

Открываете разработчик в Хроме и смотрите на что ругается. Ну и так пройтись по сайту.

Адаптивный дизайн в 2 строчки ( https://dikij.com/wm/adaptaciya-saytov.php ). + Принимаю заказы любой сложности ( https://searchengines.guru/ru/forum/926323 ). 💎 Еще я делаю классные кулоны с опалами ( https://mosaicopal.ru/ ).
fliger
На сайте с 17.09.2015
Offline
114
#695

Перелопатил всю тему и попытался собрать воедино то, что нужно для работы ТОЛЬКО AdSense.

В этом коде указаны только self (используется в сочетании МОЙ_ДОМЕН) и домены для AdSense). В default-src почему-то режет googleads.g.doubleclick.net, поэтому вставил его туда (раньше этого не наблюдал).

Поправьте меня, коллеги, если что-то упустил и вставил лишнее для AdSense.


default-src 'self' *.doubleclick.net https://*.doubleclick.net;
connect-src 'none';
media-src 'none';
font-src *.googleapis.com *.gstatic.com https://*.googleapis.com https://*.gstatic.com;
frame-src *.doubleclick.net *.googleadservices.com *.googlesyndication.com https://*.doubleclick.net https://*.googleadservices.com https://*.googlesyndication.com;
img-src 'self' *.2mdn.net *.doubleclick.net *.googleapis.com *.googlesyndication.com *.gstatic.com https://*.2mdn.net https://*.doubleclick.net https://*.googleapis.com https://*.googlesyndication.com https://*.gstatic.com;
object-src *.2mdn.net *.doubleclick.net *.googlesyndication.com *.gstatic.com https://*.2mdn.net https://*.doubleclick.net https://*.googlesyndication.com https://*.gstatic.com;
script-src 'self' 'unsafe-inline' *.2mdn.net *.doubleclick.net *.googlesyndication.com *.gstatic.com https://*.2mdn.net https://*.doubleclick.net https://*.googlesyndication.com https://*.gstatic.com;
style-src 'self' 'unsafe-inline' *.googleapis.com *.gstatic.com https://*.googleapis.com https://*.gstatic.com;
fliger
На сайте с 17.09.2015
Offline
114
#696

Чтобы легче читалось, убрал все дубли доменов AdSense с https://

default-src 'self';

connect-src 'none';

media-src 'none';

font-src *.googleapis.com *.gstatic.com;

frame-src *.doubleclick.net *.googleadservices.com *.googlesyndication.com;

img-src 'self' *.2mdn.net *.doubleclick.net *.googleapis.com *.googlesyndication.com *.gstatic.com;

object-src *.2mdn.net *.doubleclick.net *.googlesyndication.com *.gstatic.com;

script-src 'self' 'unsafe-eval' 'unsafe-inline' *.2mdn.net *.doubleclick.net *.googlesyndication.com *.gstatic.com;

style-src 'self' 'unsafe-inline' *.googleapis.com *.gstatic.com;

Хотелось бы получить исчерпывающий список доменов по каждому правилу ТОЛЬКО ДЛЯ AdSense - чтобы не было ничего лишнего.

L
На сайте с 07.12.2007
Offline
351
#697
fliger:
В default-src почему-то режет googleads.g.doubleclick.net, поэтому вставил его туда (раньше этого не наблюдал).

1. Блокировка сыпется в default-src если она возникает в директиве, которая явно не указана в вашей CSP (и её правила инициируются из default-src). Это "косяк" реализации CSP 1.1, его исправили в CSP level 2. Но браузеры на сегодня поддерживают только CSP 1.1.

fliger:
Поправьте меня, коллеги, если что-то упустил и вставил лишнее для AdSense.

В общем, ничего не упустили, 'self' только пропишите в начале каждой директивы.

Из "лишнего":

*.2mdn.net *.googlesyndication.com https://*.2mdn.net https://*.googlesyndication.com в директиве object-src

*.doubleclick.net https://*.doubleclick.net в директиве default-src

fliger
На сайте с 17.09.2015
Offline
114
#698
Ladycharm:
Блокировка сыпется в default-src если она возникает в директиве, которая явно не указана в вашей CSP

В том то и дело, что все директивы были явно указаны, но несколько раз default-src резались fonts.gstatic.com, googleads.g.doubleclick.net, https://googleads.g.doubleclick.net, pagead2.googlesyndication.com
Ladycharm:
'self' только пропишите в начале каждой директивы.

Я прописал 'none' в тех директивах, которые вообще не использую.

С учетом всех сообщений Ladycharm в этой теме выкладываю общий список правил для AdSense. Все домены в каждой секции продублировать с https://.

default-src 'self';
connect-src 'none';
font-src *.googleapis.com *.gstatic.com;
frame-src *.doubleclick.net *.googleadservices.com *.googlesyndication.com;
img-src 'self' *.2mdn.net *.doubleclick.net *.googleapis.com *.googlesyndication.com *.gstatic.com;
media-src 'none';
object-src googleads.g.doubleclick.net *.gstatic.com;
script-src 'self' 'unsafe-eval' 'unsafe-inline' *.doubleclick.net *.googlesyndication.com *.gstatic.com;
style-src 'self' 'unsafe-inline' *.gstatic.com fonts.googleapis.com;

L
На сайте с 07.12.2007
Offline
351
#699
fliger:
В том то и дело, что все директивы были явно указаны, но несколько раз default-src резались fonts.gstatic.com, googleads.g.doubleclick.net, https://googleads.g.doubleclick.net, pagead2.googlesyndication.com

Эти "несколько раз" могли быть от старых браузеров, не полностью поддерживающих CSP, надо смотреть их ЮзерАгент.

fliger:
Я прописал 'none' в тех директивах, которые вообще не использую.

Лучше прописать в них 'self' вместо 'none', некоторые версии Хрома имеют баг на эту тему.

fliger
На сайте с 17.09.2015
Offline
114
#700

Из отчета:

object-src режет http://pagead2.googlesyndication.com

Вставлять этот домен для AdSense в object-src?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий