company_banner

Эволюция вредоносных расширений: от любительских поделок до стеганографии. Опыт команды Яндекс.Браузера

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



    Яндекс.Браузер изначально поддерживал установку расширений для Chromium, но в первое время индустрия заработка на дополнениях еще только зарождалась, поэтому особых проблем не было. Вредоносные образцы, конечно же, встречались: мы либо сами находили их вручную, либо узнавали о них из обращений в поддержку. Уникальные идентификаторы (ID) таких разработок вносились в черный список на сервере, к которому через API обращался Яндекс.Браузер и блокировал установку потенциально опасных расширений. Причем сами расширения очень редко маскировались: все их возможности почти всегда были явно описаны на HTML и JS без попыток что-либо скрыть. Но потом все изменилось.

    Быстрый рост популярности Chromium и возможность автоматически устанавливать любые расширения без подтверждения со стороны пользователя сыграли злую шутку. Разработчикам опасных дополнений не было нужды даже публиковаться в Web Store и продвигать там свое творение. Достаточно было замаскировать расширение под полезную утилиту, популярную игру или новый фильм, который еще даже до кинотеатра не добрался. Пользователи сами находили, загружали и запускали exe-файлы, которые и подбрасывали crx-расширения в профиль браузера. Как мы об этом узнали? Очень просто: примерно треть обращений в поддержку начала содержать жалобы на низкокачественную и шокирующую рекламу, которая всплывала поверх любимых сайтов в Браузере.

    Примерно так у некоторых пользователей начинал выглядеть YouTube. Это свежий скриншот, но за несколько лет симптомы изменились мало. Посчитайте, сколько здесь чужеродных рекламных блоков:



    Другие жуткие примеры











    Большинство пострадавших пользователей ничего не знали ни о каких расширениях, обвиняли нас и удаляли Яндекс.Браузер. Спокойное время закончилось.

    От черного списка до хэширования

    Достаточно быстро мы нашли возможность затормозить рост угрозы. Прежде всего, отключили у себя поддержку тех задокументированных механизмов Chromium, которые упрощали работу для разработчиков плохих расширений. Мы ограничили в обычной версии Браузера возможность устанавливать расширения через ключ реестра и запретили использовать корпоративную политику, которая, к слову, была особенно популярна у разработчиков малвари, потому что не позволяла пользователям удалять расширения.



    Мы также создали «штаб» для борьбы с новой угрозой, который в режиме реального времени получал информацию о распространяющихся среди пользователей Браузера расширениях, мог оперативно проверять подозрительные и блокировать их по ID. И на какое-то время это решило проблему.

    Любители легких денег, лишившиеся удобных способов установки и преимущества во времени, напряглись и нанесли ответный удар. В операционной системе Windows любое приложение может вмешиваться в работу любого другого приложения, что и начали использовать против Яндекс.Браузера. Сомнительные программы научились подбрасывать расширения прямо в папку профиля браузера, внося изменения в файлы настроек. Но и это не самое интересное.

    Хитрецы понимали, что мы узнаем о таких расширениях очень быстро, поэтому нашли простой, но эффективный способ не допустить блокировки по ID. Они просто начали использовать те же ID, что и популярные расширения. Например, мы не могли отключить плохое расширение с идентификатором pioclpoplcdbaefihamjohnefbikjilc, потому что тогда перестал бы работать хороший Evernote Web Clipper. Хитро. В итоге этот удар мы отбили, но какой ценой.

    Решение было найдено в сравнении хэша установленного расширения с хэшем расширения-оригинала из Стора. Если они не совпадают, то перезаписываем папку безопасной копией. Проблема в том, что способ работал только для тех дополнений, которые были опубликованы в Сторе. Всех остальных просто не с чем сравнивать. Поэтому в 2014 году мы разрешили устанавливать расширения только из доверенных источников, к которым относились Web Store, Opera Addons и наш собственный каталог. Этим решением нам удалось загнать большинство вредоносных расширений в Стор, где, как мы надеялись, суровые правила и модерация доведут их число до исторического минимума. Но мы ошибались.

    5 долларов. Именно столько стоит завести аккаунт разработчика в каталоге Web Store. Но профессионалы по ту сторону баррикад готовы тратить деньги на генерацию аккаунтов и клонов сомнительных расширений. А дальше им остается лишь найти источник пользователей. И таких способов несколько.

    Мимикрия

    Можно скопировать название, оформление и даже код у популярного расширения, чтобы попасть в результаты поиска в Web Store. К сожалению, этот способ процветает из-за отсутствия премодерации в каталоге. К примеру, совсем недавно был случай с поддельным AdBlock Plus, которое установило 37 тыс. пользователей. К моменту появления этой публикации в Твиттере оно уже было заблокировано в нашем Браузере. И не только оно. СМИ написали про один случай, но в реальности было около 10 копий фальшивого блокировщика рекламы. Вели они себя относительно скромно: предположительно ничего не воровали, но неожиданно открывали вкладки с рекламой. Например, вкладку с адресом settingsbrowser.online, который перенаправляет на рекламируемые сервисы и приложения.



    Распространение с помощью сторонних программ

    Берете популярную утилиту и переупаковываете ее так, чтобы установщик не только саму утилиту ставил, но и подбрасывал в папку профиля ваше расширение. Потом создаете фальшивый официальный сайт, на который попадают пользователи через спам. Хотя теперь уже мало кто так заморачивается. Куда проще воспользоваться одной из партнерских программ, к которой подключаются разработчики бесплатных приложений для монетизации. Обычно такой способ легко распознается по скорости распространения дополнения среди пользователей браузера.

    Есть еще один способ понять, что мы отключили бесполезное расширение с вредоносными возможностями – ни пользователи, ни разработчики почти не приходят к нам с жалобами. Некоторые, правда, пытаются хитрить и добавляют в код исключение для Яндекс.Браузера. Работает это так. Если у пользователя Яндекс.Браузер, то никаких плохих сюрпризов он не получает, в отличие от пользователей Google Chrome. Казалось бы, это проблема других браузеров на базе Chromium, но нет. Мы такое поведение считаем обманом и блокировку не снимаем.



    Inline-установка

    У любого сайта есть возможность распространять свое официальное расширение, опубликованное в Chrome Web Store. Достаточно кликнуть по кнопке во всплывающей панели, и дополнение окажется в браузере. Остается лишь уговорить человека кликнуть. К примеру, сайт может перейти в полноэкранный режим и имитировать блокировку браузера, снять которую можно только с помощью расширения (живой пример).



    Или рассмотрим другой реальный пример, о котором коллеги рассказывали ещё в прошлом году на Botconf 2016, но эпидемия продолжается и по сей день (это десятки заблокированных нами клонов).

    Пользователь Facebook получает личное сообщение от своего знакомого, в котором содержится ссылка на видео.



    После клика по ссылке открывается страница (пример, другой пример), созданная на базе авторитетного бесплатного сервиса для хранения файлов, где вместо видео обычный скриншот.



    Это прослойка между спамом в Facebook и теми сайтами, где «предлагаются» расширения или размещена иная реклама. Она нужна по следующим причинам. Во-первых, социальные сети и антивирусы не блокируют по маске все адреса на авторитетных доменах. Во-вторых, генерировать страницы на бесплатных сервисах проще и быстрее, чем регистрировать новый сайт и привязывать его к расширению. В-третьих, такие ссылки выглядят безопасно, и пользователи охотнее по ним кликают.

    Пользователь кликает на фейковый скриншот и попадает на сайт, который имитирует внешний вид YouTube и создан на базе сервиса для блогов. При любой попытке запустить видео появится предложение установить расширение.

    Важное уточнение: прямо сейчас страница на docs.google.com может перенаправлять не на указанный сайт, а на другую рекламу, потому что расширение только что заблокировали в каталоге, и автору нужно потратить время на создание новой связки сайт-расширение. Мы уже отключили у себя более 50 расширений из этого семейства, но они продолжают появляться.



    Если человек соглашается, то теперь уже он против своей воли станет источником спама в фейсбуке.

    Причем расширения из этого семейства умеют защищать себя. Обратите внимание на отзыв:



    В нем идет речь о том, что расширение не дает открыть в Chromium служебную страницу chrome://extensions (моментально закрывает ее). С помощью этой страницы обычно рекомендуют проверить список расширений и удалить подозрительные. В свое время мы тоже столкнулись с такой хитростью, поэтому в Яндекс.Браузере страница browser://tune изолирована от расширений.

    Партнерские программы

    Можно не возиться с созданием своих расширений, страниц и спамом, а просто купить готовое популярное расширение и раскатить новую версию с сюрпризом (пользователи не узнают ни о продаже, ни о выходе новой версии). Или даже создать партнерскую программу для разработчиков, которые в обмен на деньги сами добавят в свои расширения ваш скрипт. В среднем по больнице партнеры зарабатывают по 100 рублей в сутки за каждые 1500 пользователей. Найти партнерские программы не трудно. Кстати, очень приятно читать на форумах таких программ подобные комментарии. Не зря работаем ;)



    Владельцы партнерской программы готовы не просто дать свою библиотеку, но и создать готовое расширение. От партнера будет требоваться лишь опубликовать и найти трафик.

    Как вы понимаете, любое вложение средств хочется отбить, поэтому разработчики сомнительных скриптов работают не только над количеством, но и над «качеством», где под последним мы подразумеваем способность спрятать свою сущность от модераторов и автоматических сканеров. Чем сложнее найти доказательство, тем дольше расширение проработает и тем больше принесет денег. И в этой области за несколько лет произошел значительный скачок.

    От конкатенации до стеганографии

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



    Отдельно стоит сказать про обфускацию. Есть миф, что обфускация позволяет замаскировать любую логику, но работает это ровно наоборот. В реальности это самый бездарный способ маскировки, потому что он привлекает к себе внимание примерно всех: антивирусы на него ругаются, пользователи пугаются, модераторы проверяют такие расширения в первую очередь. Хотите, чтобы вас как можно быстрее выкинули из Стора? Используйте обфускацию кода.

    Куда умнее поступают те, кто сохраняет видимость приличного кода, но разносят его вредоносные части по разным модулям, запутывают следы, общаются сами с собой с помощью localStorage. Некоторые части могут даже подгружаться с внешнего сервера. Причем не для всех стран (привлечь внимание модераторов где-нибудь в США проще, чем в России), не для всех браузеров (опять же исключения для Яндекс.Браузера, как и в примере выше), не в первые дни работы расширения (чтобы затруднить ручную проверку).

    В апреле этого года среди разработчиков сомнительных расширений начала зарождаться новая мода. Взгляните на эту картинку:



    Заметили что-нибудь необычное кроме артефактов от сжатия? А теперь давайте посмотрим через отладчик на работу расширения, которое содержит эту картинку:



    Расширение извлекает часть кода из картинки. Этот прием называется «стеганографией», и он хорошо известен по вирусам для Windows, но до расширений добрался только весной. Сейчас этот метод комбинируют вместе со всеми вышеописанными, и встречается он в десятках расширений (71 тыс. пользователей, 11 тыс. пользователей). По нашей оценке, во всех этих расширениях используется скрипт от одного автора, а точнее, от одной партнерской программы, за которой мы теперь пристально наблюдаем. Мы эти расширения, конечно же, ловим и отключаем, потому что не полагаемся лишь на свои глаза и руки.

    Машинное обучение

    Нам удалось наладить полуавтоматический процесс выявления сомнительных расширений и их отключения. Работает это примерно следующим образом. Как только появляется любое новое расширение, и его начинают устанавливать в Яндекс.Браузер, запускается процесс анализа на наших серверах. Мы используем машины, которые постоянно обучаются на уже известных плохих образцах, чтобы оценивать степень опасности новых. Явные злоупотребления блокируются автоматически. Сомнительные случаи проходят через ручной контроль.

    Мы научились ловить не только те разработки, которые воруют пароли, перенаправляют на фишинг-страницы или тайно изменяют/добавляют на страницы свою рекламу. Мы также не пропускаем расширения, скрытно подменяющие ссылки на страницах (в том числе для заработка на партнерских программах) и неожиданно открывающие вкладки с рекламируемыми сайтами. Не одобряем добычу криптовалют, если пользователь не дал своего явного согласия. Запрещаем имитировать клики и другие действия пользователей (к примеру, для накрутки лайков или рассылки спама в социальных сетях).

    По понятным причинам мы не можем раскрывать детали работы наших сканеров и факторы, используемые в машинном обучении (передаем привет талантливым разработчикам сомнительных скриптов). Скажем лишь, что благодаря этому процессу большинство вредоносных дополнений отключается в Яндекс.Браузере за 1-3 дня после начала своей жизни. Это более сотни уникальных расширений в месяц и десятки тысяч защищенных пользователей.

    Что дальше?

    Как бы удивительно это ни прозвучало, но именно в рунете начинают внедрять новые способы обмана пользователей и браузеров, которые затем «экспортируются» дальше. Сейчас нам противостоят уже не любители, а целая индустрия создателей и распространителей опасных расширений, которые рано или поздно найдут очередной способ нас удивить. Мы верим, что найдем чем им ответить, но идеальной защиты не бывает, поэтому всегда будут существовать вредоносные расширения, которые у нас еще не отключены. И здесь нам пригодится помощь всего сообщества. Если вы столкнетесь с подобными разработками, то можете смело присылать информацию нашей команде (как через поддержку, так и в личку на Хабре). Мы также будем благодарны за любые идеи и информацию, которые помогут защитить пользователей от неприятных сюрпризов.
    Яндекс 511,76
    Как мы делаем Яндекс
    Поделиться публикацией
    Комментарии 100
    • +3
      Да, масштабы проблемы впечатляют. Даже задумался о том, чтобы включить обратно Protect.
      • +1
        Для себя взял правило: не устанавливать расширения от тех разработчиков, которым я не доверяю. Иногда проще самому для себя написать простой инструмент на JS, чем доверять случайному расширению.
        • 0
          Именно так и обхожусь, да.

          Кстати, про Protect — с очередным обновлением он вдруг без предупреждения исчез из списка установленных программ и превратился в неотключаемую службу. Вы про это нововведение где-нибудь писали? В клубе браузера вроде бы не было.
          • 0
            В системном диспетчере приложений должен быть удаляемый пункт «Компоненты защиты Яндекс.Браузера» (если нет, то напишите мне в ЛС, пожалуйста).
          • 0
            Хотел недавно установить пару расширений с chrome webstore, но нигде не нашел информацию о разработчике, которой можно было бы доверять.
            Например Элементы Яндекса: Погода, ссылкам «С сайта yandex.ru» и «Политика конфиденциальности» особого доверия нет.
            • 0
              Домен кликабельный, значит расширение и правда раздается на этом сайте. А дальше все зависит от вашего доверия к этому сайту.
              • 0
                Не совсем понял, т.е. если в поле «С сайта» указан действительный домен, то значит расширение предоставлено владельцем данного сайта? И другой разработчик не сможет опубликовать дополнение с этим же доменом? Просто я не знаком с процедурой публикации расширений.
                Когда искал расширения, хотел найти подтверждение того, что это дополнение действительно предоставляется Яндексом. Примерно как поле разработчик в Плей Маркете, но ничего подобного не нашел. Поле «С сайта yandex.ru» не вызвало доверия. В итоге нашел список расширений на сайте яндекса и уже от туда перешел по ссылке к дополнению на chrome webstore. Например у гугловских расширений есть значок категории «От Google».
                • +1
                  Если кликабельный домен именно для «С сайта ...», то его подделать нельзя.
                  А вот на надпись «Автор ...» вообще можно не смотреть. Там все что угодно может быть.
                  • 0
                    Тут про что речь: допустим домен верный, но скачивается с какого нибудь narod.yandex.ru/vasyapup2009/file.zip?
                    То есть тут домен — это «автор имеет доступ к домену, подтвержденный записью в CNAME» или «автор выложил на сайт, имеющий домен»?
                    • +1
                      Физически расширение хранится в Chrome Web Store. Чтобы получить подпись «С сайта», разработчик должен подключить на своем сайте inline-установку, а для этого надо подтвердить права на сайт через гугловский сервис для вебмастеров.
        • +18
          Думал про свой яндекс.бар рассказать решили
          • +2
            Вот вы смеетесь, а я себе всегда ставил яндекс.бар в Firefox. Перевод по наведению курсора был очень удобным. Был. :(
            • 0
              В их браузере сейчас есть возможность перевода выделенного текста. На мой взгляд — не менее удобная вещь.
              • 0
                Это и в моем браузере есть. Но наведению обычно удобнее — банально меньше действий.
          • +2
            Меня впечатлило, когда здесь, или на ГТ кидали ссылку для проверки работы браузеров с отозванными сертификатами. ЯБ сурово разорвал соединение, а Хром даже не покраснел в адресной строке — с его точки зрения — все было отлично.
            • 0
              ЯБ использует OCSP?
              • 0
                Тут не могу точно сказать, надеюсь кто-нибудь из сотрудников Яндекса даст вам точный ответ.
            • +1
              В операционной системе Windows любое приложение может вмешиваться в работу любого другого приложения, что и начали использовать против Яндекс.Браузера. Сомнительные программы научились подбрасывать расширения прямо в папку профиля браузера, внося изменения в файлы настроек.

              Эм-м… А в других ОС одно приложение разве не может положить файл в «папку другого»?
              • 0
                Не просто подбросить в папку, но и даже подгружать в процесс другого приложения свои библиотеки. На Windows с этим особенно большая проблема из-за популярности ОС.
              • +2
                Добро пожаловать в прекрасный мир браузерных аддонов. Гугл не проверяет свои расширения, чем малвари и пользуются. Не даром там такое кол-во скачивальщиков музыки из вконтакта, все хотят заработать. Вот у мозиллы аж две модерации — автоматическая, затем ручная. Там такое не пройдёт. А тут я вам больше скажу — можете обратиться к любому автору такого трояна, он вам за 2к рублей вставит любой ваш js код к себе на сервер, за этим там и есть eval().
                • 0
                  А в той же оперы, например, есть ручная проверка, несмотря на то что публикация плагинов бесплатная (по крайней мере бесплатных, с платными не пробовал)
                  • +1
                    К сожалению, есть еще одна причина — у мозилл просто заметно меньше юзеров, увы…
                    И там (до последнего времени) посложнее было аддоны делать. :)
                    • 0
                      Только вот автоматическую модерацию было легко обдурить, а её одной достаточно, чтобы получить подпись и без проблем устанавливаться в Firefox разными способами. Ручная была обязательной только для прохода в их каталог.
                    • +1
                      Меня удивило то, что среди скриншотов был Habrahabr. Неужели есть пользователи данного ресурса, кто мог попасться на подобное рекламное расширение? Или это с одного какого-то демо-браузера открыли разные веб сайты? =)
                      • +1
                        Вы правы в том, что никто целенаправленно именно на Хабр рекламу не встраивает. Но расширения зачастую ориентируются на код популярных рекламных сетей. И подменяют рекламу везде, где этот код встречается. Хабр и Тостер ровно так и пострадали.
                        • –1

                          Как услышал на просторах самого хабра:


                          Лох не мамонт, лох не вымрет
                        • 0

                          Надёюсь, Edge извлёк урок и такого балагана с расширениями в нём не будет.


                          Есть ли у chromium и firefox возможность отключить весь функционал расширений к чертовой матери? Специально для пользователей, которые "знать не знают ни о каких расширениях" и знать не хотят. И для тех, которые знают, но знать тоже не хотят.

                          • 0

                            Можно попробовать запускать их как chromium --disable-extensions (источник) и firefox --safe-mode (источник), но я не обещаю, что это сработает. Ещё можно посмотреть, нет ли возможности выключить ненавистные расширения на этапе компиляции и сделать свой билд.

                            • 0
                              В прошлом году замучился бегать к родне по просьбе «отключить рекламу», и вычищать тонны расширений которые они «конечно же, не ставили, оно само так сделалось».
                              Когда сильно надоело, поставил только ublock и сделал:
                              # chown root. ~/.config/chromium/Default/Extensions
                              # chmod 555 ~/.config/chromium/Default/Extensions
                              

                              С тех пор «вызовы» прекратились. Думаю и в других ОС можно сделать что-то подобное.
                              Ну и учитывая трюк из статьи с evernote'ом, возможно придётся пройтись и по некоторым подкаталогам.
                            • 0
                              Даю ссылка на инструменты для борьбы со всякой заразой в браузере.

                              Номер один конечно — AdwCleaner.

                              Этим не пользуюсь, но на всякий случай держу на стеке — "Чистилка"

                              От Google, но про эффективность мне ничего не известно — Инструмент для удаления программ (Инструмент очистки Chrome!).
                              • 0
                                и AdwCleaner и Чистилка не заработали на Win10
                                • 0
                                  Видимо у вас что-то не так, потому что заявляется — Compatible with Windows 7, 8, 8.1, 10 in 32 & 64 bits.
                                  Вас стоит задуматься на этим.
                                  • 0
                                    adwcleaner совершенно точно работает на win10
                                    скорее всего, у вас уже что-то посерьёзнее обычного мусора и это что-то блокирует работу приложений, могущих ему навредить
                                • –2
                                  Скажите, а почему так получается, что в каталоге свободного ПО Debian примерно 58 тысяч приложений (крайне полезных и популярных), и нет ни одной малвари, а в вашем браузере, три с половиной плагина — и тысячи малварь?

                                  Может быть, вы что-то делаете не так? Web of trust, самоуправление мейнтейнерами, открытые исходные тексты, довольно строгая полиси, базирующаяся на общественном договоре…

                                  Почему ничего этого нет у вас?
                                  • +9
                                    Популярность. Чем популярнее продукт среди простых пользователей, тем больший интерес он представляет для разработчиков всякой гадости. Браузеры на основе Chromium занимают в России от 70 до 80% доли рынка. Это десятки миллионов пользователей. Очень вкусный пирог для малварей разного рода.

                                    P.S. Доверять Web of trust не рекомендую. Имели место быть случаи накрутки в обе стороны.
                                    P.P.S. Про три с половиной плагина я не понял. Мы поддерживаем не только свой миниСтор, но и Chrome Web Store c Opera Addons.
                                    • –4
                                      Чего больше в мире — серверов на базе debian/ubuntu или пользователей yandex-браузера? И что вкуснее для malware — сочный сервер с толстым линком или браузер у секретарши?
                                      • +7
                                        1. Пользователей Chromium-based браузеров в мире больше, чем серверов.
                                        2. Обычного пользователя проще обмануть, чем админа сервера. Сомневаюсь, что админы вообще ставят случайные приложения на действующие сервера.
                                        • +3
                                          Так эти расширения ставятся не только на yandex-браузер, а на все браузеры на движке Chromium, т.е. и на сам Chrome.
                                          Пользователей таких браузеров, полагаю, больше, чем серверов на debian.
                                    • +2
                                      В операционной системе Windows любое приложение может вмешиваться в работу любого другого приложения, что и начали использовать против Яндекс.Браузера. Сомнительные программы научились подбрасывать расширения прямо в папку профиля браузера, внося изменения в файлы настроек.

                                      Какие, однако, ленивые хакеры. У них открыт полный доступ к компу через запущеный вирус, а они всего лишь ставят js-расширения в браузерный sandbox. Обычно, по-моему, наоборот хотят вырваться из песочницы в хост-систему с полными правами.

                                      • 0
                                        К сожалению, не только. Они еще свои сертификаты любят подбрасывать для прослушки трафика. Про это писали раньше на хабре: habrahabr.ru/company/yandex/blog/326796
                                      • +5

                                        Хорошая попытка, Яндекс, но пользоваться бинарным блобом без открытых исходников я не буду.

                                        • +2
                                          В OpenSSL были открытые исходники. Не сильно это помогло.
                                          • –1
                                            Хорошо, если вы считаете, что устанавливать на свой компьютер бинарный блоб, доверяя безопасность одной корпорации (Пускай даже с очень хорошей репутацией) лучше, чем пользоваться кодом, написанным сообществом и доступным для аудита каждому — ваше право, спорить об OSS vs CSS нужно не под этим постом.
                                            • +1
                                              Открою вам страшную тайну: открытый код нужен, чтобы его можно было самостоятельно править. Сделать что-то по вашему вкусу. К безопасности или качеству он не имеет никакого отношения. Гораздо большее значение имеют вливания ресурсов заинтересованных компаний, и тут неважна лицензия, под которой выпущен код.

                                              Как мэнтейнер могу вам сказать, что даже весьма популярные проекты могут страдать от недостатка внимания разработчиков. Код Хромиума открыт, и крайне маловероятно, что-то кто-то пойдёт и будет забесплатно делать что-то серьёзное в яндексовой части браузера (а на управление этим делом тоже нужны ресурсы). Скорее наоборот, так будет легче искать уязвимости.
                                              • +1
                                                Код Хромиума открыт, и крайне маловероятно, что-то кто-то пойдёт и будет забесплатно делать что-то серьёзное в яндексовой части браузера (а на управление этим делом тоже нужны ресурсы).


                                                Если не изменяет память — в него вообще невозможно добавить то, что не заапрувлено гуглом. А гугл аппрувит только то, что не против видеть в проприетарном хроме(чтобы не так сложно было собирать хромиум в хром). Но если не изменяет память — то несколько крупных патчей от яндекса все же прошли через этот фильтр.
                                                • 0
                                                  Это уже оффтоп, Яндекс в этом плане ничего не поменяет, так как ему тоже нужна совместимость с Хромиумом, лёгкость сборки и т.п. (потому и коммитят туда).
                                                  • 0
                                                    Ну как сказать, они где-то упоминали, что у них дельта по сравнения с хромомиумом весьма приличная, если бы больше их патчей прошло, им было бы проще собирать новые версии.
                                          • 0
                                            бинарным блобом без открытых исходников
                                            проприетарным бинарным блобом под собственнической лицензией без открытых исходников
                                          • 0
                                            «тайно изменяют/добавляют на страницы свою рекламу.» то есть монитизировать свой плагин даже через «правильный партнерки» которые не надоедают нельзя?
                                            • 0

                                              Плагин должен делать то что написано а не все подряд.

                                              • 0
                                                функционал и монетизация это разные понятия, вы когда устанавливаете игру на телефон и она показывает какие-то рекламные преролы, это получается что игра делает все в подряд?
                                                мой вопрос это как можно монетизировать плагины?
                                                • +1
                                                  Да пусть показывает что хочет на своей странице. Зачем добавлять ее на чужие?
                                                  • +1

                                                    Делайте платные плагины или платный доп. функционал к ним если хотите денег за них. Все остальные способы отвратительны и подлежат вообще запрету, на мой взгляд. Если плачете по поводу недостатка денег с плагина — уходите и займитесь другими делами (например, устройтесь на работу грузчиком), а плагин сделают другие кто более заинтересован в плагине с таким функционалом а не в доходе с него.

                                                    • 0
                                                      На мой взгляд всплывающая реклама в приложениях на телефонах тоже отвратительна, но она почему-то есть. Спасибо за совет, но я плагинами не занимаюсь, вопрос был сугубо о способах монетизации всего этого.
                                              • 0
                                                Недавно нужно было промониторить цены на Ali (да, перед 11.11, но речь не об этом). Первое расширение, что я нашел для Chrome было AliTools и я скачал его из Chrome Web Store.
                                                Заподозрить неладное помог uBlock, когда начал блокировать переходы по ссылкам. Оказалось, что AliTools время от времени прогоняет ссылки через Deeplink, т.е. пытается заработать на какой-то партнерке путем замены ссылок в моем браузере.

                                                Расширение отредактировал и выпилил этот функционал, но на мой взгляд Гугл должен обязать указывать в описании, что расширение пользуется такими «приемами».
                                                • 0
                                                  Добрый день!
                                                  Не подскажете, что там нужно сделать? Тоже недавно поставил данное расширение… после вашего ответа снес его, но ничего лучше не нашел. Буду признателен за помощь… возможно многим этот рецепт пригодится…
                                                  • 0
                                                    Если ответа не будет, то логично было бы помониторить, куда ломится аддон и заблочить те хосты, так хотя бы утечки не будет.
                                                    • 0

                                                      Здравствуйте!


                                                      Для начала нужно найти и скопировать расширение из папки:


                                                      C:\Users\%user_name%\AppData\Local\Google\Chrome\User Data\Default\Extensions

                                                      например на рабочий стол, скорее всего папка будет называться eenflijjbchafephdplkdmeenekabdfb
                                                      В хроме расширение удаляем, оно нам больше не понадобится. Хром оставляем открытым.


                                                      Меняем пару символов в названии скопированной папки, затем внутри 3.8.17_0 правим manifest.json, заменяем пару символов в key (мб не обязательно). Удаляем папку _metadata.


                                                      Затем в background.js ищем по слову 'deep_link.htm' и внутри найденной функции все удаляем и пишем return null


                                                      JS там минимизирован, на всякий случай прикладываю файл в нормальном виде, функция на строке 4290
                                                      https://gist.github.com/RTKSoftware/487ed29df4fa1c5876c8dcf3d286b77f#file-gistfile1-txt-L4290


                                                      Теперь помещаем переименованную папку обратно в папку с расширениями. В Хроме Дополнительные инструменты->Расширения ставим галочку "Режим разработчика" и жмем "Загрузить распакованное расширение", указываем путь к папке 3.8.17_0.


                                                      В Chrome последней версии (62.0.3202.89) работает нормально

                                                      • 0
                                                        … огромное спасибо!..
                                                        • 0
                                                          … надеюсь, коллеги с кармой плюсанут ваш комментарий…
                                                    • 0
                                                      Яндекс — молодцы, я с вами!
                                                      • 0
                                                        Примерно так у некоторых пользователей начинал выглядеть YouTube

                                                        использую уже несколько лет гугловый хром как основной браузер. на нем около 20 расширений (плохо, что много -не спорю, но мне так удобно и не мешает) — нормально все работает, ютюб том числе (специально для него 2 расширения которые автоматом качество по максимуму устанавливают и позволяют смотреть видео в плавающем окошке..)
                                                        что я делаю не так?
                                                        • +2
                                                          Вы очень внимательно выбираете расширения.
                                                          • 0
                                                            да, у меня тоже всё нормально, но большинство пользователей не задумываясь жмут «ОК» во всплывающем окошке, когда они пытаются посмотреть очередные сиськи дженнифер лоуренс
                                                          • +1
                                                            Уважаемые разработчики Яндекс.Браузера, попробуйте покопать в другую сторону. Если пользователи скачивают сомнительные расширения, значит, им чего-то в браузере не хватает. Может быть надо предоставить им недостающие фичи и избавить от соблазна что-нибудь левое установить?

                                                            Я недавно поставил себе ваш браузер и могу сказать, чего не хватает мне.

                                                            Прежде всего раздражают звуки, которые издают самые разные сайты. Почему-то браузер, позиционирующий себя как очень безопасный, не позволяет ограничить доступ сайтов к оборудованию, в частности к устройствам воспроизведения звука. Может быть он и к микрофону доступ по умолчанию всем предоставляет? Чтобы выключить звук на странице, надо чтобы она начала что-нибудь воспроизводить. Оказывается, многие сайты издают короткие звуки, меньше секунды. За это время не успеваешь найти вкладку и кликнуть на mute. В результате, когда у меня открыто много вкладок, то постоянно что-то крякает, звякает или пикает. Когда я сидел в файерфоксе, я даже не догадывался об этой проблеме. Естественно, что у меня возникает желание скачать расширение типа «Permanent Mute without SMS».

                                                            В любом браузере сейчас есть возможность остановить анимацию гифок. Эта опция доступна или из коробки, или в виде расширения. Почему в Яндекс.Браузере этого нет? Читать текст, если рядом мелькает какая-то бессмысленная аватарка, неудобно. Вот и приходится гуглить «Stop GIF animation free».

                                                            Сильно ограничена функциональность управления паролями. Нет информации о времени создания и последнего использования пароля. Нет возможности добавить или изменить пароль. Не сохраняются пароли в некоторых онлайн-банкингах, не сохраняются пароли на серверах с самодельными сертификатами, что для работающих в IT особенно неприятно. В результате приходится даже для тестовых серверов держать открытым отдельный менеджер паролей. А кто-то решает эту проблему, устанавливая очередное расширение.
                                                            • 0
                                                              Спасибо. Доступ к микрофону без запроса невозможен. Над дополнительными возможностями работаем, но это проблему плохих расширений не решит. Тот же пример с поддельным YouTube никак не связан с желанием что-то добавить.
                                                            • 0
                                                              Мое мнение о Яндекс.Браузере после таких статей действительно улучшается. Один вопрос только. Есть довольно много компьютеров с виндой, которую я периодически привожу в порядок, в том числе, очищаю от всяких амиг, макафей и ненужных расширений. По укоренившейся привычке из браузеров оставляю хром и файерфокс. При следующем посещении на компе стоит амиго, макафи, 500 расширений и Яндекс.Браузер. Пользователи ничего не ставили. Откуда, черт возьми, он там берется?
                                                              • 0
                                                                Сам он точно не устанавливается. Да и способы установки не отличаются от способов того же Хрома.
                                                              • 0
                                                                Как насчёт ACL для расширений?
                                                                Как минимум, доступ к паролям, к списку табов/окон, применение расширения только на определённых сайтах.

                                                                Так же не помешал бы ACL для корневых сертификатов, так как я согласен, к примеру, ходить на госуслуги по https с отдельным доверенным CA, но не согласен ходить к другим сервисам (да хоть тому же яндексу), если показываемый мне сертификат выпущен CA госуслуг (к примеру).
                                                                Но, подозреваю, это будет чересчур…
                                                                • 0
                                                                  А разве сейчас всего этого нет? Расширения запрашивают разрешения на доступ к определенным возможностям и сайтам при установке. Но никто этого не читает.

                                                                  Для работы с сайтами, которые поддерживают шифрование по ГОСТу, готовится решение с поддержкой такого шифрования. Конечно же, с защитой от применения такого сертификата на чужих сайтах.
                                                                  • 0
                                                                    Не знаю, как в я.браузере (давно не пробовал, если честно), а в том же хроме сии разрешения — уведомительные, а не разрешительные. То есть, невозможно сказать определённому уже установленному расширению работать только на определённых сайтах (список меняется по мере необходимости), если само оно под это не заточено.

                                                                    В случае сертификатов — речь не про гост вообще, а про атаку MitM, когда на основе ключа доверенного CA создаются сертификаты для вообще всех сайтов.
                                                                    Вот этого хотелось бы избежать путём ограничения области доверия для CA.
                                                                    • 0
                                                                      А зачем доверенный СА вообще нужен, если сертификат можно просто в системное хранилище для всех сайтов добавить? Да и что это за доверенный СА, который позволяет подписывать сертификаты для митма? У нас есть вот такая штука: habrahabr.ru/company/yandex/blog/326796

                                                                      Что касается расширений, то такая мера, к сожалению, будет работать только для опытных пользователей.
                                                                      • 0
                                                                        Про доверенность сертификатов и MitM: habrahabr.ru/post/272207 — подозреваю, что на казахский аналог госуслуг без этого CA не зайти, а с ним — вполне себе MitM на всю страну.
                                                                        Как минимум, я хотел бы знать, что сертификат сайта выдан не тем CA ДО ТОГО, как отправлю туда что-то важное. Независимо от того, поставлен он общесистемно или только в конкретном браузере.

                                                                        То, что у вас есть такая штука — хорошо, но маловато…

                                                                        Насчёт ACL расширений — да, это для опытных пользователей. Или тех, кто не настраивает браузер сам (при наличии сисадмина в организации — вполне решение для большинства пользователей).
                                                                        • 0
                                                                          В той новости сертификат как раз добавлялся вручную в системное хранилище. Все браузеры, кроме Яндекс.Браузера, после этого покажут зеленый замочек. Яндекс.Браузер покажет предупреждение и откроет замочек. Вроде же ровно то, что надо?
                                                                          • 0
                                                                            Почти. Тут надо бы для всех сайтов делать то, что вы делаете для важных (с галочкой «больше не спрашивать», не установленной по-умолчанию, отсутствующей на странице предупреждения). Ну и, с учётом скандалов подобных startssl, стоит выкидывать скомпрометированные CA из рассмотрения даже если они установлены в системе.
                                                                            • 0
                                                                              Ага, так понятнее. Для всех сайтов мы хотя бы открытый замочек показываем.
                                                                  • 0
                                                                    Так проблема-то глубже: браузер пытается защититься от зловредов, которые уже имеют доступ к файловой системе компьютера. Т.е. от атаки изнутри, а не снаружи.

                                                                    Такому зловреду ACL — не помеха: он пропишет любые нужные права. И даже флажок поставит чтобы защитить ACL от модификации пользователем.
                                                                    • 0
                                                                      Если зловред добрался до файловой системы на уровне «могу менять настройки браузера» — уже поздно что-либо делать в самом браузере.
                                                                      Меня больше интересует превентивная защита от случая, когда дополнение после обновления внезапно оказалось небезопасным. Скажем, стала отсылаться небольшая статистика по заголовкам открытых вкладок :-)
                                                                  • 0
                                                                    Обожаю Яндекс-браузер! И десктопную и мобильную версии (пользуюсь Бета-версией). Кстати, сейчас эту страницу читаю именно с него.
                                                                    Что касается проблемы, то она во многом — в «user.dll».
                                                                    Ради эксперимента — установил на компе Win7 без антивируса, без файервола. Из браузеров — Яндекс, флешки открываю только через Total Commander (он не использует автозагрузки). На все неожиданные предложения «установить расширение» — отказываюсь, предпочитая закрыть браузер. Перед скачиванием приложения — проверяю адрес страницы (именно адрес). Если качаю самораспаковывающийся архив — меняю ему расширение на .RAR и смотрю/извлекаю содержимое — при помощи архиватора. Ну и обязательно — прислушиваюсь к советам от Яндекса, что тот или иной сайт может представлять угрозу…
                                                                    Итог: за год — ни одного вируса (проверялся через Kaspersky Rescue Disk).
                                                                    P.S. Извините, если что, за рекламу.
                                                                    • 0
                                                                      и это от обычного пользователя или под админом?
                                                                      • 0
                                                                        Под админом, но UAC не выключал.
                                                                    • –1
                                                                      Мне кажется, надо, чтобы в каком-нибудь браузере будущего широкому потребителю были доступны только платные расширения. А для программистов и просто гиков существовали ресурсы с отдельной особой сертификацией, по которой браузер будущего одобрит установку бесплатного расширения; для соответствующей сертификации ресурса понадобится код-ревью сообщества, обязательная (непростая) регистрация для доступа к контенту, закрытость от поисковиков контента.

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

                                                                      Если расширения будут платными — то контроль будет по всей строгости закона (хотя возникнет, конечно, проблема юрисдикций, которой дотоле не знал Интернет). Появляются вполне юридические определения «мошенничества», «злоупотребления доверием», появляется процедура преследования. Ошибочно думать, что расширить спектр применения финансового контроля и имущественного права в Интернете — это то же самое, что привлечь каких-нибудь депутатов к той работе, которую должна выполнять команда Яндекс. Институт денег и институт государства — прежде всего, различаются по вовлечённости общества.
                                                                      • 0
                                                                        анализа времени, проведённого в сети (умный таймер)
                                                                        Уже есть. Rescutime называется.
                                                                        Для корректного логирования в Яндекс-Браузере опции расширения должны быть такими: i.imgur.com/oyGy0Pc.png
                                                                        В настройках www.rescuetime.com/accounts/monitoring_options надо включичть игнор для самого приложения «Яндекс Браузер», иначе будет считать 2 раза. i.imgur.com/onHz2Wi.png
                                                                        .
                                                                        .
                                                                        для самоанализа (спрашивайте — расскажу)
                                                                        Neradivy, расскажите, плз. Интересно.
                                                                      • 0
                                                                        I have a dream.
                                                                        Мечтаю о консольном браузере Яндекс для linux. Можно надстройку над elinks
                                                                        Чтобы работал так: пишешь в консоли ya <поисковый запрос>, получаешь ответ в виде списка ссылок с кратким описанием. Только вот не знаю, как реализовать деление на страницы, если вывода много.
                                                                        Еще бы хотелось, чтобы были флаги:
                                                                        ya -s — обычный поиск,
                                                                        ya -i — поиск по изображениям,
                                                                        ya -d — поиск по словарям,
                                                                        ya -v — поиск по видео.
                                                                        Может быть еще какие-то опции.
                                                                        • 0
                                                                          Возможно, вам понравится googler, который есть в репах части дистров линукса: sudo apt-get install googler.
                                                                          Блин, промахнулся, это для dcc0.
                                                                          • 0
                                                                            Скажите, а почему некоторые гуглорасширения не устанавливаются в Я.Браузер?

                                                                            Например, Plus for Trello (тайм-трекинг, отчёты, Scrum) — очень удобная надстройка для Trello, но при попытке поставить в Я.Браузер получаем это: i.imgur.com/tKiQb8v.png

                                                                            Из-за такого приходится использовать 2 браузера, что не удобно.
                                                                            • 0
                                                                              Не все API поддерживаются.
                                                                              • 0
                                                                                Поясните, плз, причем тут api.

                                                                                Все остальные расширения хром для trello, которые меняют его интерфейс или добавляют функций — работают, в том числе и те, которые логируют данные из trello на своём сервере (например, toggl, PomoDoneApp).

                                                                                При чем здесь api (и api чего?) я понять не могу.
                                                                                • 0
                                                                                  Связался с разработчиком этого расширения. Его ответ:
                                                                                  Dear user, sorry, currently we cannot yet support Yandex. We would love to, however we use web sql, which is not supported in yandex.


                                                                                  Скрытой настройки browser://flags/ про web sql я не нашел.

                                                                                  Что-то ещё можно сделать? Или только ждать, когда ЯБ включит поддержку web sql?
                                                                                  • +1
                                                                                    Спасибо. Мне понадобилось время, чтобы протестировать это расширение.

                                                                                    Причина не в web sql. Его-то мы поддерживаем. Причина в GCM API, это гугловское API синхронизации данных с использованием серверов Гугла. Раньше поддержать его было нельзя. Сейчас работаем над вариантом, который должен помочь.
                                                                                    • 0
                                                                                      Здорово, спасибо. Какие-то сроки сможете назвать?
                                                                                      • 0
                                                                                        Точно не скажу. Там, возможно, ещё другое API используется. Которое авторизацию через Google использует. Вот с этим мы уже вряд ли что сможем сделать.
                                                                              • 0
                                                                                BarakAdama, для удобного управления расширениями я использую менеджер расширений «SimpleExtManager» chrome.google.com/webstore/detail/simpleextmanager/kniehgiejgnnpgojkdhhjbgbllnfkfdk

                                                                                Но при отключении любого расширения через эту программу (или аналогичную, пробовал) выскакивает окно предупреждения: i.imgur.com/awhB1IH.png

                                                                                Как отключить это предупреждение? Оно не нужно и только раздражает.

                                                                                В browser://flags/ найти такую опцию не смог.
                                                                                • 0
                                                                                  Это окно и добавили в целях безопасности. Потому что появились расширения, которые тайно удаляют другие расширения своих конкурентов.
                                                                                  • 0
                                                                                    Это я понимаю. Но я сам слежу за своей безопасностью в сети.

                                                                                    Как отключить это окно?
                                                                                    • 0
                                                                                      Никак. Иначе бы его отключили не только вы, но и злоумышленники.
                                                                                      • 0

                                                                                        Злоумышленники с полным доступом к компу и так могут отключить что угодно. А если доступ ограничен браузерной песочницей, то можно сделать так, чтобы из неё его отключить было нельзя, а явно по желанию пользователя — можно.

                                                                                        • 0
                                                                                          «Явное желание пользователя» легко имитируется.
                                                                                          • 0

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

                                                                                            • 0
                                                                                              Имитация со стороны локальной программы, конечно же. Они это практикуют для отключения защиты Protect, чтобы открывать в браузере мошеннические сайты. Именно поэтому, к примеру, после отключения защиты мы всегда показываем предложение включить её обратно – мы просто не знаем, отключил ли пользователь её сам, или за него это сделали другие.

                                                                                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                                Самое читаемое