Проверка Content Security Policy
Проверьте, возвращает ли сайт заголовок Content-Security-Policy, и изучите его значение.
Последние отправки
Что делает проверка CSP
Инструмент запрашивает сайт и проверяет, включает ли ответ заголовок Content-Security-Policy. Он сообщает значение политики, когда она присутствует, давая представление о том, как сайт ограничивает загрузку ресурсов.
Content Security Policy — это механизм безопасности браузера, помогающий предотвращать межсайтовый скриптинг и другие атаки с внедрением. Политика объявляет, из каких источников скриптов, стилей, изображений, фреймов и других ресурсов браузеру разрешено загружать. Хорошо настроенная политика снижает влияние уязвимости внедрения, блокируя несанкционированные скрипты.
Почему CSP важен
Межсайтовый скриптинг остаётся одной из самых распространённых веб-уязвимостей. CSP добавляет уровень защиты, ограничивая то, что браузер будет выполнять, даже если вредоносный код найдёт путь на страницу. Он также помогает обнаруживать нарушения политики и сообщать о них.
Развёртывание CSP требует осторожности. Слишком разрешительная политика даёт мало защиты, а слишком строгая может сломать легитимные функции. Многие команды начинают с режима report-only, чтобы наблюдать за нарушениями до принудительного применения, затем постепенно ужесточают политику.
Как интерпретировать результат
Если политика присутствует, изучите её директивы. Распространённые директивы включают default-src, script-src, style-src и img-src. Ищите широкие разрешения, такие как 'unsafe-inline' или источники с подстановочными знаками, которые ослабляют политику. Политика, разрешающая встроенные скрипты без nonce или хэшей, оставляет открытым серьёзный вектор внедрения.
Если политика не сообщена, сайт не отправляет заголовок CSP. Это не означает, что сайт небезопасен, но означает отсутствие этого уровня защиты. Для сайтов, обрабатывающих конфиденциальные данные или пользовательский контент, добавление политики — значимый шаг усиления.
Частые проблемы с CSP
- Отсутствующий заголовок. Политика не отправляется.
- Чрезмерно широкие источники. Подстановочные знаки, разрешающие любой хост.
- Небезопасные встроенные разрешения.
'unsafe-inline'или'unsafe-eval', ослабляющие защиту. - Режим report-only оставлен навсегда. Нарушения регистрируются, но не блокируются.
- Политики, ломающие функции. Чрезмерно строгие правила, из-за которых скрипты или стили не работают.
Практический сценарий
Проверьте заголовок на ключевых страницах, включая аутентифицированные области. Если политика присутствует, просмотрите директивы и ужесточьте широкие разрешения, где возможно. Если её нет, начните с режима report-only, соберите отчёты о нарушениях, затем примените политику, соответствующую вашим фактическим потребностям в ресурсах. Повторяйте проверку после добавления сторонних скриптов, поскольку они часто требуют обновления политики.
Ограничения
Проверка сообщает заголовок CSP в полученном ответе. Она не оценивает эффективность политики против конкретных атак, а CDN или прокси могут добавлять или изменять заголовки.
Похожие инструменты
Просмотрите HTTP-заголовки ответа для URL.
Проверьте, отправляет ли сайт заголовок HTTP Strict Transport Security, и изучите его значение.
Проверьте, возвращает ли сайт заголовок Referrer-Policy, и отобразите его значение.
Популярные инструменты
Проверьте, есть ли у изображений на веб-странице атрибуты alt для доступности и SEO изображений.
Измерьте общий размер веб-страницы, включая все загружаемые ресурсы.
Проверьте, установлена ли для страницы директива noindex через метатеги, HTTP-заголовки или robots.txt.
Сравните объём видимого текста с HTML-кодом на веб-странице.