PassFront
  1. PassFront
  2. База знаний
  3. DOM и браузер

Что такое CSP?

DOM и браузер

CSP (Content-Security-Policy) — это HTTP-заголовок безопасности, который указывает браузеру, из каких источников разрешено загружать ресурсы (скрипты, стили, изображения), защищая прежде всего от XSS.

Как работает

Сервер присылает заголовок с правилами (директивами), и браузер блокирует всё, что им не соответствует:

Content-Security-Policy: default-src 'self'; script-src 'self' https://cdn.example.com; img-src *
  • default-src 'self' — по умолчанию только свой origin.
  • script-src — откуда можно грузить/выполнять скрипты.
  • style-src, img-src, connect-src, font-src — по типам ресурсов.

От чего защищает

  • XSS — блокирует выполнение инлайн-скриптов и скриптов с чужих доменов, даже если злоумышленник внедрил <script>.
  • Инъекции ресурсов, кликджекинг (frame-ancestors).

Практики

  • Запретить 'unsafe-inline' и 'unsafe-eval' для скриптов (иначе XSS-защита ослаблена).
  • Использовать nonce или hash для нужных инлайн-скриптов.
  • Режим Content-Security-Policy-Report-Only — только отчёты без блокировки (для внедрения).

Коротко для собеседования

CSP — заголовок безопасности, ограничивающий источники ресурсов (скрипты, стили, изображения) через директивы (default-src, script-src и т.д.). Главная задача — защита от XSS: блокирует инлайн и сторонние скрипты. Для нужных инлайн-скриптов используют nonce/hash.

Другие вопросы раздела