Разрешено все! Изучаем новую крутую технику обхода CSP - «Новости»
Спустя восемь лет после Wolfenstein 2: The New Colossus студия MachineGames взялась за Wolfenstein 3 — разработку подтвердил ещё один источник - «Новости сети»
Спустя восемь лет после Wolfenstein 2: The New Colossus студия MachineGames взялась за Wolfenstein 3 — разработку подтвердил ещё один источник - «Новости сети»
Micron на следующей неделе заложит фундамент крупнейшего комплекса по производству памяти в США - «Новости сети»
Micron на следующей неделе заложит фундамент крупнейшего комплекса по производству памяти в США - «Новости сети»
Власти потребовали от китайских компаний отменить заказы на американские ускорители Nvidia H200 - «Новости сети»
Власти потребовали от китайских компаний отменить заказы на американские ускорители Nvidia H200 - «Новости сети»
Sony анонсировала лимитированную коллекцию ярких RGB-чехлов для PlayStation 5 - «Новости сети»
Sony анонсировала лимитированную коллекцию ярких RGB-чехлов для PlayStation 5 - «Новости сети»
Блоки питания MSI получили звуковую защиту от плавления разъёма 12V-2×6 - «Новости сети»
Блоки питания MSI получили звуковую защиту от плавления разъёма 12V-2×6 - «Новости сети»
«Это не Carmageddon»: гоночный боевик на выживание Carmageddon: Rogue Shift получил дату выхода, а новый трейлер разочаровал фанатов - «Новости сети»
«Это не Carmageddon»: гоночный боевик на выживание Carmageddon: Rogue Shift получил дату выхода, а новый трейлер разочаровал фанатов - «Новости сети»
Комплект DDR5 за $1500 и кофе в подарок: оригинальная акция Newegg вызвала недоумение - «Новости сети»
Комплект DDR5 за $1500 и кофе в подарок: оригинальная акция Newegg вызвала недоумение - «Новости сети»
AMD всерьёз задумалась о возрождении старых Ryzen на фоне дефицита DDR5 - «Новости сети»
AMD всерьёз задумалась о возрождении старых Ryzen на фоне дефицита DDR5 - «Новости сети»
Lenovo представила портативную консоль Legion Go 2 на базе SteamOS — альтернатива Steam Deck за $1199 - «Новости сети»
Lenovo представила портативную консоль Legion Go 2 на базе SteamOS — альтернатива Steam Deck за $1199 - «Новости сети»
Meta✴ отложила глобальный запуск AR-очков с экраном из-за «беспрецедентного спроса», но пообещала новые функции - «Новости сети»
Meta✴ отложила глобальный запуск AR-очков с экраном из-за «беспрецедентного спроса», но пообещала новые функции - «Новости сети»
Новости мира Интернет » Новости » Разрешено все! Изучаем новую крутую технику обхода CSP - «Новости»

Содержание статьи

  • Ошибки сервера для обхода CSP
  • Как этого избежать
Политика защиты контента (CSP) — это механизм, встроенный в браузеры, который позволяет защититься от XSS-атак. Он описывает браузеру безопасные источники загрузки ресурсов, таких как jаvascript, стили, изображения, фреймы. Основной способ использования политики — блокировка недоверенных JS, что сводит к минимуму вероятность успешной эксплуатации XSS. Например, если в заголовке CSP указано загружать изображения только с текущего домена, то все теги со сторонними доменами будут проигнорированы. Но как провести полноценную атаку с кражей данных, если ничего нельзя отправлять на другие ресурсы?

Типичный пример использования CSP — это разрешение загрузки ресурсов с собственного домена (self) и разрешение выполнения инлайн-сценариев:


Content-Security-Policy: default-src 'self' 'unsafe-inline';

Такая политика подразумевает «запрещено все, что не разрешено». В данной конфигурации будет запрещено любое использование функций, выполняющих код в виде строки, таких как eval, setTimeout, setInterval, так как отсутствует настройка ‘unsafe-eval’.



Запрещено грузить любой контент с внешних источников, в том числе изображения, CSS, WebSocket. И конечно же, JS.


Разрешено все! Изучаем новую крутую технику обхода CSP - «Новости»
WWW

Для примера я специально оставил XSS в этом месте, задача — украсть секрет пользователя.




Но не стоит забывать, что self позволяет работать в контексте SOP в рамках этого домена, поэтому мы по-прежнему можем грузить сценарии, создавать фреймы, изображения. Если вспомнить о фреймах, то CSP распространяется и на фреймы, в том числе если в качестве протокола будет указан data, blob или будет сформирован фрейм с помощью атрибута srcdoc.




WARNING

Статья написана в исследовательских целях. Вся информация в ней носит ознакомительный характер. Ни автор, ни редакция не несет ответственности за неправомерное использование упомянутых в ней аппаратных платформ, программ и техник!





Можно ли выполнить JS в текстовом файле?


Для начала вспомним один трюк. Если современный браузер открывает изображение или какой-то текстовый файл, он автоматически преобразуется в HTML-страницу.



Это нужно для корректного отображения содержимого пользователю, чтобы у изображения был фон и она была расположена по центру. Но iframe также является окном! Поэтому открытые в нем файлы, которые отображаются в браузере, например favicon.ico или robots.txt, автоматически преобразуются в HTML, независимо от того, корректные ли в нем данные, главное — чтобы был правильный content-type.


Но что, если фрейм будет содержать страницу сайта, но уже без заголовка CSP? Вопрос риторический. Выполнит ли открытый фрейм без политики все JS, которые будут у него внутри? Если иметь XSS на странице, мы можем сами записать свой JS внутрь фрейма.


Для теста сформируем сценарий, который открывает iframe. Для примера возьмем bootstrap.min.css, путь к которому указан на странице выше.


Источник новостиgoogle.com
Цитирование статьи, картинки - фото скриншот - Rambler News Service.
Иллюстрация к статье - Яндекс. Картинки.
Есть вопросы. Напишите нам.
Общие правила  поведения на сайте.

Содержание статьи Ошибки сервера для обхода CSP Как этого избежать Политика защиты контента (CSP) — это механизм, встроенный в браузеры, который позволяет защититься от XSS-атак. Он описывает браузеру безопасные источники загрузки ресурсов, таких как jаvascript, стили, изображения, фреймы. Основной способ использования политики — блокировка недоверенных JS, что сводит к минимуму вероятность успешной эксплуатации XSS. Например, если в заголовке CSP указано загружать изображения только с текущего домена, то все теги со сторонними доменами будут проигнорированы. Но как провести полноценную атаку с кражей данных, если ничего нельзя отправлять на другие ресурсы? Типичный пример использования CSP — это разрешение загрузки ресурсов с собственного домена (self) и разрешение выполнения инлайн-сценариев: Такая политика подразумевает «запрещено все, что не разрешено». В данной конфигурации будет запрещено любое использование функций, выполняющих код в виде строки, таких как eval, setTimeout, setInterval, так как отсутствует настройка ‘unsafe-eval’. Запрещено грузить любой контент с внешних источников, в том числе изображения, CSS, WebSocket. И конечно же, JS. WWW Для примера я специально оставил XSS в этом месте, задача — украсть секрет пользователя. Но не стоит забывать, что self позволяет работать в контексте SOP в рамках этого домена, поэтому мы по-прежнему можем грузить сценарии, создавать фреймы, изображения. Если вспомнить о фреймах, то CSP распространяется и на фреймы, в том числе если в качестве протокола будет указан data, blob или будет сформирован фрейм с помощью атрибута srcdoc. WARNING Статья написана в исследовательских целях. Вся информация в ней носит ознакомительный характер. Ни автор, ни редакция не несет ответственности за неправомерное использование упомянутых в ней аппаратных платформ, программ и техник! Можно ли выполнить JS в текстовом файле? Для начала вспомним один трюк. Если современный браузер открывает изображение или какой-то текстовый файл, он автоматически преобразуется в HTML-страницу. Это нужно для корректного отображения содержимого пользователю, чтобы у изображения был фон и она была расположена по центру. Но iframe также является окном! Поэтому открытые в нем файлы, которые отображаются в браузере, например favicon.ico или robots.txt, автоматически преобразуются в HTML, независимо от того, корректные ли в нем данные, главное — чтобы был правильный content-type. Но что, если фрейм будет содержать страницу сайта, но уже без заголовка CSP? Вопрос риторический. Выполнит ли открытый фрейм без политики все JS, которые будут у него внутри? Если иметь XSS на странице, мы можем сами записать свой JS внутрь фрейма. Для теста сформируем сценарий, который открывает iframe. Для примера возьмем bootstrap.min.css, путь к которому указан на странице выше. Источник новости - google.com

запостил(а)
Miln
Вернуться назад
0

Смотрите также

А что там на главной? )))



Комментарии )))