The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Уязвимость в Adblock Plus, позволяющая выполнить код при исп..."
Отправлено opennews, 16-Апр-19 09:10 
В блокировщике рекламы Adblock Plus выявлена (https://adblockplus.org/blog/potential-vulnerability-through... уязвимость, позволяющая (https://armin.dev/blog/2019/04/adblock-plus-code-injection/) организовать выполнение JavaScript-кода в контексте сайтов, в случае использования непроверенных фильтров, подготовленных злоумышленниками (например, при подключении сторонних наборов правил).

Авторы списков с наборами фильтров могут организовать выполнение своего кода в контексте открываемых пользователем сайтов через добавление правил с оператором "rewrite (https://help.eyeo.com/en/adblockplus/how-to-write-filters#re... позволяющем заменить часть URL. Оператор rewrite не позволяет заменить хост в URL, но даёт возможность свободно манипулировать с аргументами запроса. В качестве маски для замены допускается применение только текста, а подстановка тегов script, object и subdocument блокируется (https://github.com/adblockplus/adblockpluscore/blob/247943b2....


Тем не менее, выполнения кода можно добиться обходным путём.
Некоторые сайты, например, maps.google.com, применяют технику динамической загрузки исполняемых JavaScript-блоков, передаваемых в форме голого текста. Если сервер допускает перенаправление запросов, то перенаправления на другой хост можно добиться подменив параметры URL (например, в контексте Google  редирект  может быть произведён через API "google.com/search (https://www.google.com/search?hl=en-US&source=hp&biw=&bih=&q.... Кроме хостов, допускающих редирект, атака также может быть совершена против сервисов, допускающих размещение контента пользователей (хостинги кода, платформы размещения статей и т.п.).


Атака может быть проведена только на страницы, динамически загружающие строки с JavaScript кодом  (например, через XMLHttpRequest или Fetch) и затем выполняющие их. Другим важным ограничением является необходимость использования редиректа или размещения произвольных данных на стороне исходного сервера, отдающего ресурс. Тем не менее, в качестве демонстрации актуальности атаки показано как организовать выполнение своего кода при открытии maps.google.com, используя редирект через "google.com/search".


Исправление пока находится в процессе подготовки. Проблема также затрагивает блокировщики  AdBlock (https://getadblock.com/) и uBlock (https://www.ublock.org/). Блокировщик uBlock Origin проблеме не подвержен, так как не поддерживает оператор "rewrite".


Разработчики Adblock Plus считают проведение реальных атак маловероятным, так как все изменения в штатных списках правил проходят рецензирование, а подключение сторонних списков практикуется пользователями крайне редко. Подмену правил через MITM исключает применение по умолчанию HTTPS для загрузки штатных списков блокировки (для остальных списков планируется запретить загрузку по HTTP в будущем выпуске). Для блокирования атаки на стороне сайтов могут применяться директивы CSP (https://en.wikipedia.org/wiki/Content_Security_Policy) (Content Security Policy), через которые можно явно определить хосты, с которых допускается загрузка внешних ресурсов.


URL: https://adblockplus.org/blog/potential-vulnerability-through...
Новость: https://www.opennet.ru/opennews/art.shtml?num=50521

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру