Разрешено все! Изучаем новую крутую технику обхода CSP - «Новости»
Telegram добавил списки задач и предложенные посты для каналов - «Новости мира Интернет»
Telegram добавил списки задач и предложенные посты для каналов - «Новости мира Интернет»
В MIT разработали технологию, которая позволяет «видеть» предметы внутри коробок - «Новости мира Интернет»
В MIT разработали технологию, которая позволяет «видеть» предметы внутри коробок - «Новости мира Интернет»
Яндекс Метрика научилась игнорировать повторные клики по рекламе - «Новости мира Интернет»
Яндекс Метрика научилась игнорировать повторные клики по рекламе - «Новости мира Интернет»
Яндекс открыл биржу Telegram-каналов - «Новости мира Интернет»
Яндекс открыл биржу Telegram-каналов - «Новости мира Интернет»
«Жизнь в Найт-Сити продолжается»: CD Projekt Red и студия Trigger официально анонсировали Cyberpunk: Edgerunners 2 - «Новости сети»
«Жизнь в Найт-Сити продолжается»: CD Projekt Red и студия Trigger официально анонсировали Cyberpunk: Edgerunners 2 - «Новости сети»
В Китае набрали популярность «обманки» для автопилота Tesla, которые позволяют не держаться за руль - «Новости сети»
В Китае набрали популярность «обманки» для автопилота Tesla, которые позволяют не держаться за руль - «Новости сети»
Sony приостановила продажи Xperia 1 VII из-за технических проблем - «Новости сети»
Sony приостановила продажи Xperia 1 VII из-за технических проблем - «Новости сети»
Испытания солью, пылью и асфальтом: Apple показала, как тестирует iPhone на прочность - «Новости сети»
Испытания солью, пылью и асфальтом: Apple показала, как тестирует iPhone на прочность - «Новости сети»
Большинство новейших видеокарт по-прежнему продаются с наценкой в 12–57 % — особенно GeForce RTX 5090 и 5080 - «Новости сети»
Большинство новейших видеокарт по-прежнему продаются с наценкой в 12–57 % — особенно GeForce RTX 5090 и 5080 - «Новости сети»
Нил Дракманн бросил сериал The Last of Us, чтобы «целиком сосредоточиться» на Intergalactic: The Heretic Prophet - «Новости сети»
Нил Дракманн бросил сериал The Last of Us, чтобы «целиком сосредоточиться» на Intergalactic: The Heretic Prophet - «Новости сети»
Новости мира Интернет » Новости » Разрешено все! Изучаем новую крутую технику обхода 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

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

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



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