WP Content Security Plugin
Политика безопасности контента (CSP) - это руководство W3C по предотвращению межсайтовых сценариев (XSS) и связанных атак. XSS позволяет другим людям запускать сценарии на вашем сайте, что делает его больше не вашим приложением, работающим на вашем сайте, и открывает весь ваш домен для атаки из-за «политики одинакового происхождения» - XSS в любом месте вашего домена - это XSS везде в вашем домене. (см. https://www.youtube.com/watch?v=WljJ5guzcLs) CSP сообщает вашему браузеру использовать среду с минимальными привилегиями в вашем приложении, позволяя клиенту использовать ресурсы только из доверенных доменов и блокировать все ресурсы из любого другого места. Добавление CSP на ваш сайт защитит ваших посетителей от: атак с использованием межсайтовых сценариев (XSS), рекламного и шпионского ПО, находящегося на вашем сайте. Этот плагин поможет вам установить настройки CSP и добавит их на страницу, запрошенную посетителем. Нарушения политики будут регистрироваться в таблице базы данных, которую можно просмотреть на странице администратора, на которой указаны все нарушения и их количество. Кнопки позволяют легко добавлять сайты в заголовки или игнорировать их. Этот плагин также позволяет игнорировать сайты, которые неоднократно нарушают вашу политику. Например, некоторые изображения отслеживания будут отображаться как нарушающие ваши политики, но вы все равно не хотите, чтобы они запускались, поэтому вы можете заблокировать отображение сайта в своих журналах - однако обратите внимание, что браузер по-прежнему будет вызывать ваш сервер и ваш сервер по-прежнему будет тратить ресурсы на обработку вызова. Кроме того, этот плагин может помочь вам попасть в список предварительной загрузки HSTS - подробности см. На https://hstspreload.org/. Директивы CSP CSP позволяет вам контролировать, откуда браузер ваших посетителей может запускать код. Спецификация W3C допускает следующие директивы: default-src default-src - это политика по умолчанию для загрузки содержимого. Если другой параметр не указан, будет использоваться этот параметр. script-src Определяет допустимые источники jаvascript. style-src Определяет допустимые источники таблиц стилей. img-src Определяет допустимые источники изображений. connect-src Применяется к XMLHttpRequest (AJAX), WebSocket или EventSource. manifest-src Указывает, какой манифест можно применить к ресурсу. worker-src Указывает допустимые источники для сценариев Worker, SharedWorker или ServiceWorker. font-src Определяет допустимые источники шрифтов. object-src Определяет допустимые источники плагинов. Не позволяет вашему сайту становиться источником вторженных атак. media-src Определяет допустимые источники аудио и видео. base-uri Ограничивает значения, которые можно использовать в записи. frame-src Определяет допустимые источники для загрузки фреймов. sandbox Включает изолированную программную среду для запрошенного ресурса, аналогичную атрибуту изолированной программной среды iframe. действие формы. Действие формы ограничивает, какие URL-адреса могут использоваться в качестве действия элементов формы HTML. frame-ancestors Разрешить ли встраивание ресурса с использованием фрейма, iframe, объекта, встраивания и т. д. в ресурсы, отличные от HTML. plugin-types Ограничивает набор подключаемых модулей, которые могут быть вызваны, путем ограничения типов ресурсов, которые могут быть встроены. report-uri URL для публикации информации о нарушениях установленных вами политик. require-sri-for Требовать проверки целостности скриптов и / или стилей. Примечание по синтаксису входа CSP - в версии 3 спецификации CSP произошел переход к «строго-динамическому» - см. Раздел «Уведомление об обновлении» для получения дополнительной информации. Каждая директива может принимать одно или несколько из следующих значений: * Позволяет загружать ресурсы из любого источника. 'none' Блокирует загрузку ресурсов из всех источников. Обязательны одинарные кавычки. «я» относится к вашему собственному хосту. Обязательны одинарные кавычки. 'unsafe-inline' Разрешает встроенные элементы, такие как функции в тегах скриптов, onclicks и т. д. Обязательны одинарные кавычки. 'unsafe-eval' Позволяет оценивать небезопасный динамический код, такой как eval () jаvascript. Обязательны одинарные кавычки. 'strict-dynamic' Доверие, явно предоставленное сценарию, присутствующему в разметке, путем сопровождения его одноразовым идентификатором или хешем, должно распространяться на все сценарии, загруженные этим корневым сценарием. Обязательны одинарные кавычки. 'sha-AAAAAAAAA' Для скриптов и стилей, которые не могут принимать одноразовые значения, браузер сообщит вам значение 'sha-', которое вы можете использовать. Обязательны одинарные кавычки. 'nonce-AAAAAAAAA' Значение одноразового номера доверия - это значение автоматически создается при обновлении страницы и не должно вводиться пользователем. Обязательны одинарные кавычки. dаta: разрешить загрузку ресурсов из схемы данных - обычно встроенных изображений. Это небезопасно; злоумышленник также может ввести произвольные данные: URI. Используйте это экономно и определенно не для скриптов. mediastream: позволяет использовать mediastream: URI в качестве источника контента. файловая система: разрешить загрузку ресурса из файловой системы. https: разрешает загрузку ресурсов только с HTTPS: на любом домене. Это можно использовать для блокировки небезопасных запросов. www.example.com Разрешить загрузку ресурсов из этого домена по любой схеме (http / https) * .example.com Разрешить загрузку ресурсов из любого поддомена в example.com по любой схеме (http / https) http: // www. example.com Разрешает загружать ресурсы с этого домена по этой схеме. / path / to / file / Разрешает загружать любой файл с этого пути в этом домене. / path / to / file / thefile Разрешает загружать этот файл в этом домене. Заголовки безопасности В дополнение к заголовкам CSP поддерживаются другие заголовки безопасности, в том числе: Expect-CT Указывает агентам пользователя (браузерам) ожидать обслуживания действительных меток времени подписанных сертификатов (SCT). Строгая безопасность транспорта Заголовок ответа HTTP Strict-Transport-Security (HSTS) позволяет веб-сайту сообщать браузерам, что к нему следует обращаться только по протоколу HTTPS, а не по протоколу HTTP. X-Frame-Options Заголовок HTTP-ответа X-Frame-Options может использоваться, чтобы указать, следует ли разрешить браузеру отображать страницу в ,