TL;DR:

Мы продолжаем нашу непримиримую борьбу со злостными нарушителями конфиденциальности пользователей. Наш браузер и на ПК, и на Андроиде теперь включает следующие меры защиты:

  • Фиксы для борьбы с атаками типа Pool-Party, о которых мы недавно писали

  • Дополнительные меры защиты от фингерпринтинга 

  • Защиту от большого числа новых переадресующих трекеров

  • Мы удалили небезопасные фичи Chromium

1. Чиним межсайтовую уязвимость «Pool-Party»‎ 

Начиная с версии 1.35, мы включили защиту от всех известных реализуемых на практике форм атак типа «pool-party»‎. Все браузеры уязвимы к таким атакам, но для некоторых браузеров эта проблема стоит острее, чем для других. На данный момент Brave является одним из двух браузеров, защищающих пользователей от реалистичных атак типа «pool-party» (Apple предоставила защиту от обнаруженной нами атаки в Safari 15.2).

Brave защищает пользователей от атак этого типа, секционируя глобальное ограничение на вебсокет-соединения для сайта: все сайты ограничены максимумом в 10 одновременных вебсокетов. Это не даёт сайтам использовать глобальный пул вебсокетов для получения информации за пределами сайта. (Наши пользователи никогда не подвергались опасности от другой реалистичной атаки подобного типа, которую мы обнаружили. Она пользовалась глобальным пулом Server-Sent событий, и представляла опасность только для браузеров, основанных на WebKit).

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

Сейчас мы защищаем наших пользователей от всех реалистичных форм подобных атак. Другие формы таких атак, которые мы обнаружили в браузерах на основе Chromium, слишком сложны для применения трекерами: либо они используют ресурсы с крайне коротким сроком жизни (например, ограничения на количество одновременных запросов DNS), либо они становятся доступными только в необычных конфигурациях (например, когда браузеры на основе Chromium настроены на использование HTTPS-прокси), либо у них очень маленькая пропускная способность (например, использование глобального идентификатора WebSpeech).

Мы продолжаем наше наблюдение за возможными новыми типами подобных атак и будем предоставлять соответствующие меры защиты. Мы будем работать с органами стандартизации и с поставщиками других браузеров с целью предотвращения появления новых форм подобных атак.

2. Предотвращение фингерпринтинга на основе SpeechSynthesis API

Начиная с версии 1.35, наш браузер не даёт сайтам использовать SpeechSynthesis API не по назначению и фингерпринтить (и, соответственно, трекать) наших пользователей. Для предоставления этой меры защиты мы воспользовались нашим уникальным основанным на рандомизации подходом к защите от фингерпринтинга. Добавляя небольшое количество шума к данным, которые трекеры используют для фингерпринтинга, мы сохраняем и полезный функционал сайта, и конфиденциальность пользователя. Рандомизация фингерпринтинга сохраняет анонимность пользователей, и именно поэтому мы являемся лучшим браузером в нашем классе с точки зрения защиты от фингерпринтинга.

3. Расширяем фронт атак на переадресующие трекеры

Версии нашего браузера и на ПК, и на Android теперь защищают от ещё большего количества переадресующих трекеров. С помощью нашей уникальной технологии «дебаунсинга»‎ мы успешно боремся с этой формой трекинга, и в новом релизе мы увеличили число трекеров, от которых мы предоставляем защиту, и мы продолжим борьбу с ними по мере их обнаружения.

Переадресующий трекинг набирает популярность по мере того, как ориентированные на конфиденциальность браузеры типа Brave блокируют или секционируют сторонние куки. В основном трекеры работают так: они добиваются включения своего кода на сайт (например,  Google Analytics, кнопки «лайка»‎ Facebook и т.д.), а потом используют сторонние куки для отправки одного и того же идентификатора различным сайтам. Браузеры же всё чаще блокируют или секционируют сторонние куки для борьбы с подобной слежкой. С функциональной точки зрения это означает, что ресурсы от одного трекера на разных сайтах ломают цепочку идентификации: трекер больше не получает одну и ту же куки (идентификатор) на разных сайтах, и потому больше не может быть уверенным, что запросы на них поступили от одного и того же человека.

Однако же, несмотря на эти меры защиты, переадресующие трекеры не останавливаются в своих непотребствах, и пытаются встроить себя в цепочку между переадресующим сайтом и тем, на который пользователь отправляется. Если это получается, трекер узнаёт, что один и тот же человек посетил оба сайта, и с течением времени сможет создать детальный профиль пользователя. 

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

Наша защита от переадресующих трекеров более эффективна, чем схожие меры, предоставляемые в других браузерах. Другие браузеры загружают сайт переадресующего трекера, но вскоре очищают хранилище этого сайта. Это недостаточно надёжно: некоторые типы трекеров могут этим воспользоваться, например, если идентификатор пользователя включён в урл, который получает переадресующий трекер, или если переадресующий трекер сможет заново определить пользователя посредством фингерпринтинга. 

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

4. Удаляем Network Information API

Начиная с версии 1.35, мы удаляем поддержку нестандартного Network Information API. Этот API, доступный в браузерах на Chromium и частично в некоторых версиях Firefox, позволяет сайтам и трекерам получать подробную информацию о сети пользователя. К примеру, сайт или трекер могут определить тип подключения (“ethernet,” “bluetooth,” “3g”), изменения типа подключения (например, переход с Wi-Fi на мобильное подключение), а также момент, когда пользователь меняет локальную сеть (т.к. локальная сеть может меняться независимо от изначального IP-адреса пользователя).

Таким образом, Network Information API представляет собой чрезвычайно серьёзную угрозу конфиденциальности пользователей. Этот интерфейс делится информацией, которая может  быть использована трекерами и злоумышленниками для фингерпринтинга пользователей, может позволить понять, когда пользователь путешествует или просто не находится дома, и когда пользователь подключается через анонимизирующий VPN. Начиная с версии 1.35, этот API отключен вне зависимости от настроек щитов Brave. Продвинутые пользователи могут включить его на brave://flags, но мы не рекомендуем это делать.

Удаление Network Information API — это очередной шаг Brave по удалению или отключению различной проблемной функциональности Chromium. Мы агрессивно модифицируем, настраиваем и дополняем Chromium, чтобы наши пользователи имели доступ к впечатляющей функциональности безопасности, доступной в Chromium, дополненной наилучшими мерами защиты конфиденциальности среди всех популярных браузеров.

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


  1. ifap
    26.01.2022 11:45

    В основном трекеры работают так: они добиваются включения своего кода на сайт (например,  Google Analytics, кнопки «лайка»‎ Facebook и т.д.)

    В Brave есть настройка: блокировать загрузку всего, что загружается не с посещаемого домена (и его поддоменов)?


    1. BraveSoftware Автор
      26.01.2022 12:35
      +2

      Нет, с такой включенной настройкой во всем интернете будут работать только единичные сайты.

      В Brave без всяких настроек блокируется нежелательный контент со сторонних доменов


      1. ifap
        26.01.2022 13:12
        +1

        Любознательный пользователь с шаловливыми ручками что угодно сломает, но почему бы не дать остальным такую возможность?


        1. BraveSoftware Автор
          26.01.2022 15:13
          +1

          Потому что мало запросов на такой суровый хардкор. За много лет работы над браузерами впервые увидел такой фичереквест если честно.

          Если такое сделать, элементарно не заработает хабр - он тянет ресурсы с habrastorage.com и шрифты с gstatic.com.

          Ну и плюс, это никак вас не защитит от зловредного контента, потому что тот же fingerprint.js вполен себе можно хостить на своем домене, или настроить CNAME-алиас для всего чего угодно (так многие делают)


          1. ifap
            26.01.2022 15:29

            ingerprint.js вполен себе можно хостить на своем домене

            Так если мы на этот "свой" домен заходим, то уже априори соглашаемся с тем, что на нем может лежать все, что угодно. А вот его попытки подтянуть что-то с условного fcbn.net обломятся.

            или настроить CNAME-алиас для всего чего угодно (так многие делают)

            Допустим, для условного fb.com настроят алиас на fcbn.net, а уже на 99% всяких example.com никто заморачиваться не будет. Поставят прямой вызов ресурса с fcbn.net который будет блокироваться не потому, что этот хост внесен в черный список запретов, а просто потому, что это за пределами *.example.com


            1. BraveSoftware Автор
              26.01.2022 16:13

              99% всяких example.com никто заморачиваться не будет

              Не согласен с вами, CNAME-алиасы очень популярны сейчас. https://blog.apnic.net/2020/08/04/characterizing-cname-cloaking-based-tracking/

              Ну и Хабр таки жалко


              1. ifap
                26.01.2022 17:11

                Очень популярны у кого? У крупных порталов, где есть целый штат админов и выделенные сервера? Так они и есть тот самый оставшийся 1%.

                Хабр нас не жалеет, увеличивая вдвое время установления TLS-соединения, почему мы его должны жалеть? ;)

                Если серьезно, то можно добавить к этой опции белый список, куда заносить доверенные домены. Главное не отвергать идею сходу. Вот у меня отключены любые third-party cookies и только Youtube при авторизации капризничает, больше никто.


        1. Shished
          27.01.2022 07:33
          +1

          В uBlock Origin есть такая функция.


    1. bcrypt
      28.01.2022 23:26
      +2

      на самом деле это возможно, если перейти на сайт brave://adblock/ и добавить строку *$third-party в разделе «Custom Filters» :)


  1. SnowBearRu
    26.01.2022 12:46
    +2

    А вот впорос есть такой: почему Brave создан на основе chromium а не движка Mozilla ?

    Тем более, если я правильно понимаю, могли быть предпосылки к этому.


    1. BraveSoftware Автор
      26.01.2022 15:09

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