Контент-безопасность
Приложение позволяет в доступной для обычного пользователя форме настроить политику безопасности CSP для вашего сайта, магазина, блога. W3C рекомендует к использованию спецификацию Content Security Policy Level 3.
- контроль за источниками стилей, скриптов, изображений, шрифтов, видео и аудиофайлов и т.п. на вашем сайте
- контроль за отправкой данных на другие сайты, в том числе логинов и паролей
- запретив загрузку сторонних скриптов вы сможете отключить работу таких приложений, как Яндекс.Советник, а также любых других подобных приложений, которые установлены у пользователя в браузере
- на зараженных компьютерах пользователей, которые зашли к вам на сайт будет показываться именно ваша реклама (некоторые вирусы/приложения, подменяют рекламные блоки и крутят свою рекламу на ваших сайтах)
- проанализировав отчеты о блокировках того или иного ресурса, вы сможете обнаружить вредоносный код на ваших страницах, который внедрен злоумышленниками
- приложение не вносит никакие изменения в html-код, а только формирует заголовок передаваемый сервером браузеру
Приложение автоматически интегрируется только с приложениями/поселениями "Сайт", "Магазин", "Блог", "Фото", в основной файл шаблона (index.html) остальных приложений необходимо добавить код {$wa->csp->integrate()}.
Предварительная настройка
* Данная инструкция по настройке рассчитана на неопытного пользователя. Возможно, что получше узучив спецификацию CSP, вы примите решение убрать некоторые директивы, которые разрешите при первой настройке. В любом случае, перед включением приложения рекомендуем ознакомится с "Материалами по теме".
1. Приложение автоматически интегрируется в приложения "Сайт", "Магазин", "Блог", "Фото". Для интеграции с другими приложениями необходимо добавить хелпер {$wa->csp->integrate()} в шаблоны этих приложений. Желательно добавить хелпер в самое начало файла index.html. Если вы добавите хелпер в приложения "Сайт", "Магазин", "Блог", "Фото", то в этом не будет ничего страшного, так как формирование заголовка происходит только один раз в процессе формирования страницы, фактически хелпер будет игнорироваться.
2. Включите приложение на несколько минут (желательно самостоятельно просмотреть хотя бы 10-20 различных страниц вашего сайта, понажимать на различные сервисы, которые вы используете, например, онлайн-консультант и т.п.). Затем можно выключить приложение и сделать предварительную настройку приложения.
3. Проставьте все галочки у localhost, кроме галочки nonce.
4. Добавьте в избранное (поставьте звездочку) те адреса, которым вы доверяете и чьи источники контента (картинки, шрифты, скрипты и т.п.) вы используете на страницах своего сайта.
5. Проставьте галочки у тех директив, которые вы разрешаете для тех адресов (хостов), которым вы доверяете. Цифра в сером квадрате означает количество поступивших отчетов на блокировку, кликнув по ней вы можете узнать подробности (как это можно использовать будет описано ниже).
6. Адреса, которым вы не доверяете или считаете вирусными или спамными вы можете при желании отправить в запрещенные (нажмите крестик). Такой хост не будет в дальнейшем отображаться в таблице, если на нем стояли разрешающие директивы, то они будут сняты.
7. Нажмите кнопку "Очистить статистику". Останется только таблица с адресами и директивами, которые вы разрешили при предварительной настройке. Данная настройка была необходима, чтобы снизить нагрузку на хостинг, ведь по умолчанию в CSP запрещено всё, что не разрешено. И за те несколько минут, когда было включено приложение мы получили информацию о наиболее популярных источниках контента и действиям на вашем сайте.
8. Снова включите приложение, если отключили его ранее. И подождите несколько часов или дней. Приложению необходимо собрать статистику блокировок (например, видео с Youtube, Яндекс или Google карты, AJAX запросы, а также иные действия, которые происходят относительно редко и не должны быть заблокированы). Цифра в красном кружочке рядом с логотипом приложения обозначает количество хостов, которые вы не добавили в избранное или в запрещенные. По мере сбора статистики эта цифра будет расти.
Окончательная настройка
1. Повторите действия описанные в пунктах 3, 4 и 5 предварительной настройки.
2. Если вы сомневаетесь разрешать ту или иную директиву, то откройте отчет по блокировкам для данной директивы (серый квадрат с числом) и перейдите на одну из страниц из таблицы (желательно на страницу с наибольшим количеством блокировок).
3. На открытой странице запустите консоль разработчика (для браузеров на движке Chromium - это комбинация клавиш Ctrl + Shift + I). И посмотрите производится ли такая блокировка в вашем браузере. Если нет, то не следует разрешать данную директиву (скорее всего контент запускался на зараженном компьютере), иначе нужно попытаться разобраться, что блокируется и зачем это используется на вашем сайте. На представленном примере мы видим отчеты о блокировке скриптов с адресов http://api-maps.yandex.ru/ - так как на странице используется Яндекс.Карта, то нужно разрешить директиву script-src для указанного хоста, иначе при переводе приложения в режим "Блокировка" карта не будет отображаться на сайте (смотрите второй скриншот).
4. Часть хостов можно отсеять опираясь на их написание, а часть - спросив у Яндекса или Google. Если в подсказках вы видите слова "вирус", "как удалить" и т.п., то смело отправляйте в запрещенные. В некоторых случаях вам потребуется время, чтобы выяснить стоит ли доверять данному источнику или нет.
5. В результате, после добавления хостов, которым вы доверяете, в избранное и простановки галочек вы получите примерно вот такую таблицу.
6. После это следует перевести приложение в режим "Блокировка", а режим добавления "В запрещенные".
7. Посмотрите на 10-20 страниц сайта и убедитесь, что все сервисы работают нормально.
- Content Security Policy Level 3. W3C Working Draft.
- Content Security Policy Level 2. W3C Candidate Recommendation.
- Как мы сделали чтение писем безопаснее: Content Security Policy в Яндекс.Почте.
- CSP (Политика Защиты Контента)
- Введение в Content Security Policy (CSP)
- Настройка CSP - Content Security Policy
- Как настроить Content Security Policy (CSP)
Характеристики
Тип
|
Приложение для Webasyst |