intermediate

Content Security Policy

Снижайте последствия XSS через директивы script, style, image, connect, frame, nonce, hash и reporting.

Content Security Policy снижает ущерб инъекций, ограничивая источники scripts, styles, images, frames, workers и сетевых подключений. Сильные политики предпочитают nonces или hashes вместо unsafe inline, собирают отчёты о нарушениях и тестируются вместе со сборкой и сторонними интеграциями.

					Content-Security-Policy:
  default-src 'self';
  script-src 'self' 'nonce-abc123';
  connect-src 'self' https://api.example.com;
				

Начните с Content-Security-Policy-Report-Only, исправьте нарушения, затем enforce. CSP ограничивает масштаб атаки, но не заменяет escaping и аудит зависимостей.

На интервью: что CSP ограничивает и что не исправит сам по себе.

Типовые ошибки: размытая политика с wildcards — почти документация; CSP не заменяет sanitization.

Компромисс: удобство против контроля — выбирайте механизм под вашу связность и бюджет производительности.

Чеклист:

  • Nonces или hashes для scripts.
  • Без широких wildcards в продакшене.
  • Сначала report-only.
  • Escaping и sanitization ненадёжного HTML.