Content Security Policy (CSP) в современных браузерах работает следующим образом: 1
- На страницу добавляется HTTP-заголовок Content-Security-Policy. 2 Он позволяет создать белый список источников доверенного контента и проинструктировать браузер исполнять код или рендерить ресурсы только из этих источников. 1
- Когда браузер просматривает код сайта, он сначала анализирует содержание частных директив. 2 Если информации нет, то обращается к резервной директиве. 2
- Основные директивы CSP:
- img-src — контролирует использование изображений с внешних ресурсов; 2
- media-src — управляет загрузкой медиаконтента (видео, анимации, аудио); 2
- script-src — ограничивает источники рабочих сценариев для веб-страницы; 2
- frame-src — контролирует подгрузку веб-элементов, вложенных в контекст основной страницы; 2
- default-src — резервная директива. 2
Даже если злоумышленник найдёт брешь в защите и сможет внедрить скрипт, этот скрипт не будет соответствовать белому списку и не будет исполнен. 1