Опрос
Оценка сайта по пяти-бальной шкале?
Результаты опроса "Оценка сайта по пяти-бальной шкале?"
1
(Всего ответов 2)
2
(Всего ответов 1)
3
(Всего ответов 2)
4
(Всего ответов 0)
5
(Всего ответов 1)
Всего ответов:
6
23/11/2015
a24mag:
где domen.ru - это ваш домен.
каждому надо настраивать под себя - чтобы ВСЕ страницы сайта корректно работали.
где domen.ru - это ваш домен.
каждому надо настраивать под себя - чтобы ВСЕ страницы сайта корректно работали.
Пишут, что сейчас советник иногда подгружается через sript-src = https://sovetnik.market.yandex.ru
В вышенаписанных кодах правило *.yandex.ru его пускает. Как минимум эту директиву надо менять.
Но сейчас у меня и без нее Советник появляется: http://clip2net.com/s/3qJBXXx
До сегодняшнего он блокировался.
23/11/2015
Немного покопался в интернете.
Суть в том, что теперь советник подгружает нужную ему библиотеку не через "ваш сайт", а через "расширение броузера".
А вот CSP у "расширения броузера" свое:
Content-Security-Policy:script-src 'self' blob: filesystem: chrome-extension-resource:; object-src 'self' blob: filesystem:;
Оно то и позволяет работать Советнику.
В общем я в этом всем не силен. Думаю в ближайшее время этим займутся лучшие программисты нежели я...
Суть в том, что теперь советник подгружает нужную ему библиотеку не через "ваш сайт", а через "расширение броузера".
А вот CSP у "расширения броузера" свое:
Content-Security-Policy:script-src 'self' blob: filesystem: chrome-extension-resource:; object-src 'self' blob: filesystem:;
Оно то и позволяет работать Советнику.
В общем я в этом всем не силен. Думаю в ближайшее время этим займутся лучшие программисты нежели я...
24/11/2015
irvine:
Оно то и позволяет работать Советнику.
Оно то и позволяет работать Советнику.
Немного неверно... я привел пример блокоровки в логах именно того скрипта который отвечает за вывод этого вонючего банера.
А вот скрипт обмена метаданными с вашего сайта на сайт яндекс маркета - пусть работает, он не мешает, т.к. ничего не выводит в браузер. Если есть корреляция позиции в яндексе с блокированием скрипта маркета, то лучше его не блокировать.
Именно метабар (лог блокировки которого я привел) - ответсвеннен за отображение информации в браузере.
24/11/2015
Совместо с a24mag нашли решение:
надо в CSP добавить директиву connect-src с белым списком всех необходимых доменов.
Рекомендую тщательно проверить работу сайта и всех скриптов.
Например JivoChat требует разрешения к wss://node#.jivosite.com;
где # - случайное число, индивидуальное для вашего виджета. Конкретное число узнаем из консоли (при попытке отправить сообщение, она напишет какой node был заблокирован).
Обратите внимание, что надо указать протокол wss.
connect-url 'self' wss://node8.jivosite.com
надо в CSP добавить директиву connect-src с белым списком всех необходимых доменов.
Рекомендую тщательно проверить работу сайта и всех скриптов.
Например JivoChat требует разрешения к wss://node#.jivosite.com;
где # - случайное число, индивидуальное для вашего виджета. Конкретное число узнаем из консоли (при попытке отправить сообщение, она напишет какой node был заблокирован).
Обратите внимание, что надо указать протокол wss.
connect-url 'self' wss://node8.jivosite.com
25/11/2015
Вот пример отчета:
blocked-uri - блокируемый домен
original-policy - оригинальная инструкция
effective-directive - политика которая сработала
violated-directive - место где надо прописать изменения чтобы blocked-uri стал доступным
referrer - источник перехода
document-uri - страница где возникла блокировка.
blocked-uri - можно получить большой список вредоносных сайтов и т.п.
{"csp-report":{
"document-uri":"http:\/\/a24mag.ru\/category\/lizuny\/",
"referrer":"http:\/\/www.yandex.ru\/clck\/*****",
"violated-directive":"script-src 'self' a24mag.ru https:\/\/ajax.googleapis.com https:\/\/www.google-analytics.com https:\/\/mc.yandex.ru https:\/\/top-fwz1.mail.ru https:\/\/st.top100.ru https:\/\/vk.com
'unsafe-eval'
'unsafe-inline' https:\/\/yandex.ru *.yandex.ru yandex.st *.ytimg.com *.vk.com https:\/\/vk.com *.top100.ru *.mail.ru *.doubleclick.net *.api.twitter.com *.facebook.com *.yandex.net https:\/\/yastatic.net https:\/\/www.google-analytics.com *.googleapis.com maps.google.com",
"effective-directive":"script-src",
"original-policy":"default-src 'self' a24mag.ru https:\/\/yandex.ru https:\/\/mc.yandex.ru *.yandex.ru *.yandex.net *.googleapis.com *.gstatic.com *.vk.com https:\/\/vk.com; connect-src 'self' a24mag.ru https:\/\/mc.yandex.ru https:\/\/yandex.ru api-maps.yandex.ru *.vk.com https:\/\/vk.com *.doubleclick.net https:\/\/informer.yandex.ru *.googleapis.com *.gstatic.com https:\/\/www.google-analytics.com; script-src 'self' a24mag.ru https:\/\/ajax.googleapis.com https:\/\/www.google-analytics.com https:\/\/mc.yandex.ru https:\/\/top-fwz1.mail.ru https:\/\/st.top100.ru https:\/\/vk.com 'unsafe-eval' 'unsafe-inline' https:\/\/yandex.ru *.yandex.ru yandex.st *.ytimg.com *.vk.com https:\/\/vk.com *.top100.ru *.mail.ru *.doubleclick.net *.api.twitter.com *.facebook.com *.yandex.net https:\/\/yastatic.net https:\/\/www.google-analytics.com *.googleapis.com maps.google.com; style-src 'self' a24mag.ru https:\/\/yastatic.net 'unsafe-inline' https:\/\/yandex.ru *.yandex.ru *.yandex.net *.ytimg.com *.googleapis.com; img-src 'self' a24mag.ru https:\/\/yandex.ru *.yandex.ru https:\/\/informer.yandex.ru https:\/\/yandex.ru https:\/\/stats.g.doubleclick.net https:\/\/www.google.com https:\/\/mc.yandex.ru https:\/\/yastatic.net www.tns-counter.ru https:\/\/www.google.ru https:\/\/vk.com https:\/\/www.google.com.ua.ru *.vk.com *.yandex.net *.maps.yandex.net *.mail.ru https:\/\/www.google-analytics.com *.googleapis.com *.yadro.ru *.rambler.ru *.gstatic.com data: *.yadro.ru *.mail.ru https:\/\/yandex.ru https:\/\/mc.yandex.ru *.yandex.ru *.yandex.net *.maps.yandex.net *.ytimg.com; frame-src 'self' a24mag.ru https:\/\/yastatic.net https:\/\/yandex.ru *.yandex.ru *.youtube.com https:\/\/vk.com *.vk.com *.yandex.net; report-uri \/csp\/report.php",
"blocked-uri":"http:\/\/hdapp1003-a.akamaihd.net","source-file":"http:\/\/apibrowsergoodin-a.akamaihd.net","line-number":3,"column-number":485,"status-code":200}}
blocked-uri - блокируемый домен
original-policy - оригинальная инструкция
effective-directive - политика которая сработала
violated-directive - место где надо прописать изменения чтобы blocked-uri стал доступным
referrer - источник перехода
document-uri - страница где возникла блокировка.
blocked-uri - можно получить большой список вредоносных сайтов и т.п.
25/11/2015
Как сделать отчеты?
Создаем в корне сайта папку к примеру csp
в ней:
пустой текстовый документ: report.txt
и скрипт report.php
тело скрипта:
Далее в прописываем куда скидывать отчеты в htaccess:
report-uri - как раз отвечает за отчеты.
Удачи в битве за чистые сайты!
Создаем в корне сайта папку к примеру csp
в ней:
пустой текстовый документ: report.txt
и скрипт report.php
тело скрипта:
<?php
header("HTTP/1.0 204 No Response");
$file = 'report.txt';
if($json_data = json_decode(file_get_contents('php://input'))){
$data = json_encode($json_data)."\n";
file_put_contents($file, $data, FILE_APPEND | LOCK_EX);
}
Далее в прописываем куда скидывать отчеты в htaccess:
Header set Content-Security-Policy "default-src 'self' ***; connect-src 'self' ***; script-src 'self' *** 'unsafe-eval' 'unsafe-inline ***; style-src 'self'; img-src 'self' *** data:***; frame-src 'self' ***; report-uri /csp/report.php"
report-uri - как раз отвечает за отчеты.
Удачи в битве за чистые сайты!
26/11/2015
Продолжим так скажем "записки программиста"...
Дописал скрипт чтобы можно было легко увидеть список блокируемых сайтов - иначе черный список.
}
теперь в blocked-uri.txt - будет список сайтов. при этом полные отчеты сохраняются.
Если кто боится запускать в боевой режим CSP:
меняйте
Header set Content-Security-Policy
на:
Header set Content-Security-Policy-Report-Only
Это позволит получать отчеты и более грамотно настроить.
В blocked-uri.txt - многие сайты лучше не открывайте - они могут быть вирусными. Если такой сайт есть в списке - значит какого-то пользователя вы защитили от банера с рекламой на своем сайте, а соответственно не опустили поведенческие и не создали присутствие вирусной рекламы на своем сайте.
Всем спасибо! Задавайте вопросы - чем смогу - помогу ))
Дописал скрипт чтобы можно было легко увидеть список блокируемых сайтов - иначе черный список.
<?php
header("HTTP/1.0 204 No Response");
$file = 'report.txt';
if($json_data = json_decode(file_get_contents('php://input'))){
$data = json_encode($json_data)."\n";
file_put_contents($file, $data, FILE_APPEND | LOCK_EX);
}
/*ниже дописал инструкцию*/
$file1 = 'blocked-uri.txt';
$csvLine = '';
$data1 = file_get_contents('php://input');
if ($array = json_decode($data1, true)){
$csvLine .= "blocked-uri: ".$array['csp-report']['blocked-uri']."\n";
file_put_contents($file1, $csvLine, FILE_APPEND);
}
теперь в blocked-uri.txt - будет список сайтов. при этом полные отчеты сохраняются.
Если кто боится запускать в боевой режим CSP:
меняйте
Header set Content-Security-Policy
на:
Header set Content-Security-Policy-Report-Only
Это позволит получать отчеты и более грамотно настроить.
В blocked-uri.txt - многие сайты лучше не открывайте - они могут быть вирусными. Если такой сайт есть в списке - значит какого-то пользователя вы защитили от банера с рекламой на своем сайте, а соответственно не опустили поведенческие и не создали присутствие вирусной рекламы на своем сайте.
Всем спасибо! Задавайте вопросы - чем смогу - помогу ))
26/11/2015
Да, есть еще одна особенность:
- указывайте протокол в явном виде:
либо просто:
- старайтесь избегать звездочек:
если конечно же доверяете ресурсу * можно оставить.
Но если например, идет подключение через https - то нужно указать жесткие директивы с соответствующими протоколами.
делайте свои сайты безопаснее!
- указывайте протокол в явном виде:
https://vk.com vk.com https://login.vk.com
либо просто:
vk.com
- старайтесь избегать звездочек:
*.vk.com
если конечно же доверяете ресурсу * можно оставить.
Но если например, идет подключение через https - то нужно указать жесткие директивы с соответствующими протоколами.
делайте свои сайты безопаснее!
30/11/2015
И снова здравствуйте!
Вот полезная ссылка по теме предыдущих постов: http://content-security-policy.ru/
Вот полезная ссылка по теме предыдущих постов: http://content-security-policy.ru/
14/12/2015
новая доработка кода:
- теперь есть отчеты по датам.
Столкнулся с тем когда отчет активно пополняется, то каждая новая запись подтормаживает систему. И за счет тах задержек, именно в момент записи не срабатывает защита.
за счет разбивки по датам - файл становится меньше - в итоге перезапись происходит быстрее...
<?php
header("HTTP/1.0 204 No Response");
$d = getdate();
$file = "$d[mday].$d[mon].$d[year].".'report.txt';
if($json_data = json_decode(file_get_contents('php://input'))){
$data = json_encode($json_data)."\n";
file_put_contents($file, $data, FILE_APPEND | LOCK_EX);
}
$file1 = "$d[mday].$d[mon].$d[year].".'blocked-uri.txt';
$csvLine = '';
$data1 = file_get_contents('php://input');
if ($array = json_decode($data1, true)){
$csvLine .= "blocked-uri: ".$array['csp-report']['blocked-uri']."\n";
file_put_contents($file1, $csvLine, FILE_APPEND);
}
- теперь есть отчеты по датам.
Столкнулся с тем когда отчет активно пополняется, то каждая новая запись подтормаживает систему. И за счет тах задержек, именно в момент записи не срабатывает защита.
за счет разбивки по датам - файл становится меньше - в итоге перезапись происходит быстрее...
19/01/2016
Очень прошу написать инструкцию куда и что ставить. Не могу понять куда и что прописывать. Спасибо.
19/01/2016
Saboteur:
Очень прошу написать инструкцию куда и что ставить. Не могу понять куда и что прописывать. Спасибо.
Очень прошу написать инструкцию куда и что ставить. Не могу понять куда и что прописывать. Спасибо.
в корне сайта в .htaccess прописал
Header set X-Frame-Options SAMEORIGIN
Header set Content-Security-Policy "default-src 'self' a24mag.ru https://yandex.ru https://mc.yandex.ru https://vk.com vk.com https://login.vk.com m.vk.com *.gstatic.com https://yastatic.net yastatic.net www.youtube.com https://www.youtube.com; connect-src 'self' a24mag.ru https://mc.yandex.ru https://yandex.ru www.google-analytics.com api-maps.yandex.ru yandex.st https://yandex.st https://vk.com vk.com https://login.vk.com https://informer.yandex.ru https://www.google-analytics.com https://my.net2pay.ru; script-src 'self' a24mag.ru *.yandex.ru *.yandex.net *.googleapis.com api-maps.yandex.ru *.google.com st.top100.ru mc.yandex.ru top-fwz1.mail.ru www.google-analytics.com vk.com https://site.yandex.net https://api.vk.com https://informer.yandex.ru https://ajax.googleapis.com https://www.google-analytics.com https://mc.yandex.ru https://top-fwz1.mail.ru https://st.top100.ru https://vk.com https://api-maps.yandex.ru 'unsafe-eval' 'unsafe-inline' vk.com yandex.st https://yandex.st maps.google.com https://yandex.ru https://vk.com https://yastatic.net https://www.google-analytics.com; style-src 'self' a24mag.ru *.googleapis.com https://code.jquery.com https://yastatic.net yandex.st https://yandex.st https://my.net2pay.ru 'unsafe-inline' https://yandex.ru; img-src 'self' a24mag.ru *.googleapis.com *.gstatic.com *.yandex.ru counter.yadro.ru top-fwz1.mail.ru counter.rambler.ru yastatic.net www.tns-counter.ru maps.google.com https://site.yandex.net https://yandex.ru https://informer.yandex.ru https://api-maps.yandex.ru https://stats.g.doubleclick.net https://www.google.com https://mc.yandex.ru https://yastatic.net https://top-fwz1.mail.ru https://www.google.ru https://vk.com vk.com https://www.google-analytics.com www.google-analytics.com vec04.maps.yandex.net vec03.maps.yandex.net vec02.maps.yandex.net vec01.maps.yandex.net https://vec04.maps.yandex.net https://vec03.maps.yandex.net https://vec02.maps.yandex.net https://vec01.maps.yandex.net https://clck.yandex.ru data: 'self' a24mag.ru vk.com https://yandex.ru https://mc.yandex.ru; frame-src 'self' a24mag.ru yastatic.net *.yandex.ru www.youtube.com mailto m.vk.com vk.com https://yastatic.net https://yandex.ru https://www.youtube.com https://vk.com https://login.vk.com; child-src 'self' a24mag.ru yastatic.net *.yandex.ru www.youtube.com mailto m.vk.com vk.com https://yastatic.net https://yandex.ru https://www.youtube.com https://vk.com https://login.vk.com; report-uri /csp/report.php"
Каждый сайт имеет свои индивидуальные настройки. Что нужно прописать а что нет - нужно исходить из отчетов.
создал в корне папку csp
в ней файл report.php
содержимое скрипта
<?php
//версия 2.12 доработка Солтык А.М.
header("HTTP/1.0 204 No Response");
$d = getdate();
$file = "$d[mday].$d[mon].$d[year].".'report.txt';
if($json_data = json_decode(file_get_contents('php://input'))){
$data = json_encode($json_data)."\n";
file_put_contents($file, $data, FILE_APPEND | LOCK_EX);
}
$file1 = "$d[mday].$d[mon].$d[year].".'blocked-uri.txt';
$csvLine = '';
$data1 = file_get_contents('php://input');
if ($array = json_decode($data1, true)){
$csvLine .= "blocked-uri: ".$array['csp-report']['blocked-uri']."\n";
file_put_contents($file1, $csvLine, FILE_APPEND);
}
Единственное, яндекс уже научился обходить эту блокировку тем более в своем же браузере.
Но всё равно показывается не так чаще как раньше (т.е. частично блокируется).
Установить считаю нужно, т.к. 70-90% блокировок - это вирусы и другие сюрпризы...
Ответить
Читайте также
20/11/2015
Компания объяснила, почему система для выбора лучшей цены не уводит покупателей и почему цена - не главное...
Подробнее