Content Security Policy

Материал из Неолурк, народный Lurkmore
Перейти к навигации Перейти к поиску

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

Описание[править]

Content Security Policy работает с использованием арийских списков. Веб-сервер передает браузеру набор правил, определяющих допустимые источники различных типов ресурсов. Браузер, получив эти инструкции, блокирует любые ресурсы или действия, не соответствующие установленной политике, и может записывать, что состоялось посылание клиента на в ответ на нехороший запрос.

Сервер отправляет политику браузеру через HTTP-заголовок Content-Security-Policy или через метатег HTML. При загрузке страницы и ее ресурсов браузер проверяет каждый элемент на соответствие политике CSP. Ресурсы или действия, не соответствующие политике, блокируются.

Интересно, что в протокол можно восрать директивы report-uri или report-to, которые вынудят отправить сообщение об ошибке на конкретный ресурс, чтобы так сказать в стиле дятла стукануть на нарушителя.

Директивы[править]

  • default-src — базовая директива, определяющая политику по умолчанию.
  • script-src — описывает источники жабьего кода. Важный параметр, так как левый код способен взломать сайт.
  • style-src — определяет допустимые источники CSS-стилей.
  • img-src — регулирует источники изображений, в том числе элементы <img>, CSS-свойства background-image, favicon.
  • font-src — описывает источники веб-шрифтов, загружаемых через @font-face.
  • connect-src — определяет URL-адреса, к которым можно подключаться через XMLHttpRequest, WebSocket, Fetch API, EventSource.
  • media-src — описывает источники медиа-файлов, загружаемых через элементы <audio> и <video>.
  • object-src — контролирует источники плагинов, загружаемых через элементы <object>, <embed> и <applet>.
  • frame-src — определяет допустимые источники для встраиваемых фреймов (<iframe>).
  • frame-ancestors — указывает, какие источники могут встраивать данную страницу в фрейм.
  • form-action — определяет URL-адреса, на которые могут отправляться формы.
  • base-uri — контролирует URL-адреса, которые могут использоваться в элементе <base>.

В качестве аргументов может указываться self (тот же самый домен), конкретные домены, а также дикие карты, например можно указать *.popka.com, и тогда произвольные поддомены можно будет таким образом включать в себя.

Internet2.png Великая сеть, которая переменила течения мира
Это интернет, деткаИнтернетыДаркнетУведомления в браузереВеб-скрейпингWWWПросмотр стрима в фонеWeb ArchiveИнфоповодОткрытый проксиСайтБраузеркаБугагашечкиДейтингЗаработокИдентификация пользователейИмиджбордаИмиджхостингИнтернет-магазинИнтернет-сервисыПокровитель интернетовКаталог сайтовАссоциация блогеров и агентствОлдфагЧебурнетАнкетаАватарИзоляция российских сайтовВидеохостингТильтGoogle дуракИнфобизнесменStalinism.ruРеестр запрещённых сайтовФайлообменникФотобанкХакеры, крекеры, спамы, кукиЗакат эпохи анонимусаТроллингВеб 3.0Интернет-энциклопедияСтриминговый сервисБлокировщики рекламыВеб-камераИнтернет-знаменитостьGoogle ChromeOperaMozilla FirefoxSafariFirefoxHttpHTTPSКритерий ХомакаРейтингИИ уничтожит TikTok, Instagram и OnlyFansСлопRGBOneDriveВсемирная атака на ИнтернетSignal упал во время падения AmazonChatGPT AtlasОшибка 403R:Anon ЧатДефейсингTimewebУничтожение ИнтернетаКиберпандемияБиометрия хуже пароляПодтверждение возрастаVLESSПодтверждение возраста как исполнение пророчеств про начертание ЗверяГеолокация в Твиттере (X)ВконтактеАнонимус не забываетРазновидности VPNБлокировка соцсетей для детейБелый списокVoice Over Translation
ИнтересноеПеревод в онлайнОблачное хранилище404 ошибкаДвухфакторная авторизацияВикипедияЭлектронная почтаРунетX (ранее Твиттер)HTML5Moswar.ruRu-CenterCerberxБизнес 18+ПИОННенавистьПолитика предотвращения распространения ватной чумыЭджлордВидеоПанорамное видео 360Нейтралитет в информационной войнеПервый поток влогеров рунетаЛысый из BrazzersЛагиНиколай ДуровОпараш ДуроваGoodbyeDPIАвтопереводчикКтотут.рфИнформацияМаносфераБесплатный хостингNginxSearxПолитическое ФГМТеперь мы — это медиаUserscriptMemojiМегасталинCulturalVibesПессимизация ИИХейтвотчингРечной крабFurAffinityOurworldoftextИнтернет-цензура в ГерманииСкроллингХорошие SEOшникиОТРЯД САСА – ОСПАТонилайфШизоидная деградация интернетаMeek-clientПоисковикИстория одного разумистаЛешие в интернетеDuckDuckGoКлоудфаерПутин приказал МВД цензурировать интернетСертификатDNS
ТерминыVPNПрокси-сервер (SOCKS-прокси) • Управление репутацией404ADSLDDoSFAQGPONI2PIPv6localhostMediaGetNO CARRIERSEOTorTOSViaWi-FiАккаунтБанБотБотнетВиртуалВордфильтрГолосование ногамиДиалапДомашняя страницаДорвейИнвайтКликбейтКомментКомьюнитиКикКириллические доменыЛесенкаЛинкЛогЛокалкаМемНикОфлайнОффтопикПисьма счастьяПоисковая бомбаПост (Некропост) • ПремодерацияПруфлинкРерайтингСабжСимпафкаСиндром вахтёраСкриншотСмайлСпамСпойлерТрафикТредТроянФлудФорумХотлинкингЭто вашеЮзерпикАнонимностьШок-сайтыПингИКСUser-AgentБраузерWhoisURLДесинкРазметка реддита🤡Перевод в онлайнChat Control.mdБлокировка СтарлинкаTAS-IXСириятелекомKyberQUICПостквантовая криптографияВебсокетSSLWebRTCВиртуальный серверВечная блокировкаGoDaddyАмигоCommand & Control
ПонятияЦифровая некромантияЗаднеприводная каптчаЭффект АстольфоКвантовый интернетИнформационный вирусОнлайнЛайкСторисХештегPunycodeЧастный сайтПоддерживатьИнтернет-проектФоркСамосбор (проект)Короткие доменыПиксельный ПатриотизмСтирание личной историиБотофермаЗастолблениеЗасираниеDeep TikTokИстория браузераНижний интернетИнторанетФидонетFirstVDSОбрыв загрузки файла на 99%Блокировка Cloudflare в РФПоисковый экстремизм1.1.1.1Запрет Старлинка в РоссииСкриншотная крысаЗапрет VPN на ЮтубеКотовая рыбаUztelecomCDNКраудфандингАтака боторабкоровКубтелекомУдаление перепискиФишки.нетЗухельВебодизайнГипертекстИИ-боты долбят сайтыМусорные ИИ-статьиЗамечательРаскруткаInternet.bsREG.RUПолянорусь
МетаВеб 2, или некоторые говорят Веб 2.0Будущее сети