Выбор ответа Senior XSS и CSP обновлено

Почему allowlist доменов в CSP слабее

Вопрос

Почему политика script-src 'self' https://cdn.jsdelivr.net считается слабой?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: На CDN тысячи библиотек и JSONP, через них загрузят нужный атакующему код. Исследования политик показали, что большинство allowlist-политик обходятся: на публичном CDN есть старые версии фреймворков с гаджетами и JSONP с управляемым колбэком.

Варианты ответа

  1. CDN отдаёт скрипты по HTTP, и их можно подменить при передаче
  2. Браузеры не поддерживают домены в script-src, только nonce и хеши
  3. Директива 'self' запрещает загрузку с CDN, и сайт просто сломается
  4. На CDN тысячи библиотек и JSONP, через них загрузят нужный атакующему кодправильный ответ

Разбор

Исследования политик показали, что большинство allowlist-политик обходятся: на публичном CDN есть старые версии фреймворков с гаджетами и JSONP с управляемым колбэком. Поэтому рекомендуют nonce или хеши с strict-dynamic. Остальные варианты неверны технически.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.