У каждого контейнера внутри Firefox — собственный набор куков, indexedDB, localStorage и кэш



Работа в Twitter одновременно под рабочим и личным аккаунтами. Фото: Mozilla

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

Правда это или нет, но в экспериментальной сборке браузера Firefox Nightly только что реализована технология, которая сильно упрощает одновременную работу под несколькими аккаунтами. Теперь для этого не придётся заводить несколько виртуальных машин или открывать несколько браузеров: изоляция окружений реализована непосредственно между вкладками!

Разработчики Mozilla вчера представили новую функцию Contextual Identities для браузера Firefox 50 Nightly.

Формально, изоляция окружений (контейнеры) в Firefox создана для того, чтобы пользователь мог легко отделить свои аккаунты по нескольким сферам. Например, личные, рабочие, финансовые, шоппинг. Соответственно, открывая новую вкладку, пользователь сразу выбирает, из какого контейнера она будет работать.



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

Теоретически, такая изоляция профилей повышает безопасность информации. Например, все финансовые данные и профили хранятся в «банковском» контейнере. Таким образом, при посещении сомнительного сайта из личного контейнера не произойдёт утечки финансовой информации через возможную XSS- или CSRF-атаку. Дополнительная изоляция здесь совсем не помешает.

У каждого контейнера внутри Firefox — свой собственный набор куков, собственный indexedDB, localStorage и кэш, собственная история сёрфинга и т.д. Получается, что если сайт открыт на вкладке из рабочего контейнера, то он не сможет получить доступ к кукам из личного контейнера. С другой стороны, различные вкладки из персонального контейнера будут использовать одни и те же куки, кэш и локальные базы данных.



По умолчанию, новые вкладки в в Firefox Nightly открываются как обычно, то есть как «общие» контейнеры. Чтобы получить изолированное окружение, пользователь должен вручную открыть вкладку внутри дополнительного контейнера. Для создания вкладки в новом контейнере есть несколько способов, в том числе через меню FileNew Container Tab. Сейчас разработчики думают добавить ещё несколько способов открытия новой вкладки внутри контейнера, например, длительным нажатием клавиши “+” на клавиатуре.

В данный момент доступны контейнеры Personal, Work, Banking, Shopping. Каждый из них помечен своим цветом: синий, оранжевый, зелёный и розовый, соответственно, чтобы случайно не перепутать. Соответствующая цветная полоска размещается над указателем вкладки.



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

Контейнеры — это, в своём роде, нечто среднее между обычным и приватным режимами сёрфинга в Firefox. Как известно, в режиме Private Mode при выходе из браузера или закрытии вкладки полностью стираются все куки, история и кэш, так что каждый раз начинается работа «с чистого листа».

Нужно иметь в виду, что некоторые сайты запрещают заводить несколько аккаунтов. Например, такое косвенно запрещено в правилах «Хабрахабра» (редакция от 16 мая 2016 года).

Вот список того, чего на ресурсе делать не следует.

Создавать виртуалов. Всегда приятно поговорить с умным человеком, но создавать для этого добавочные аккаунты и накручивать с них карму и голоса за публикации не стоит.

Как обычно, любые экспериментальные технологии организация Mozilla сначала опробует в Firefox Nightly, а затем на основании отзывов пользователей дорабатывает их, исправляет ошибки и очень часто доводит до реализации в стабильной версии браузера.

В данном случае ожидается широкая общественная дискуссия, потому что тема авторизации на сайтах под несколькими аккаунтами из одного браузера обсуждается давно: см. обсуждение в блоге Mozilla от 2010 года и статью от 2013 года для технического комитета IEEE по безопасности и защите конфиденциальных данных, опять от представителей организации Mozilla.

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

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

Mozilla надеется на помощь и подсказки сообщества в обсуждении этих проблем.

Своё мнение о контейнерах сейчас можно высказать, заполнив небольшую анкету.

Если всё пойдёт по плану, то контейнеры Contextual Identities могли бы появиться в стабильной версии Firefox 50, которая запланирована к выходу ориентировочно осенью 2016 года. Но разработчики считают, что контейнеры следует ещё дополнительно тестировать. В следующей версии Aurora/DevEdition 50 контейнеры не будут включены по умолчанию. На осень 2016 года запланировано более подробное исследование на добровольцах по программе Test Pilot.

В любом случае, контейнеры всегда можно будет отключить. Сейчас в Firefox Nightly это делается в about:config через настройку privacy.userContext.enabled (нужно установить значение false).

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



Следует иметь в виду, что у сайтов всё равно остаётся возможность идентифицировать отдельных пользователей, которые пользуются разными аккаунтами. Для этого применяются техники фингерпринтинга, то есть составления «отпечатка» системы по сочетанию нескольких характеристик: версия ОС, user-agent браузера, набор установленных шрифтов, IP-адрес и многие другие. Недавно сайты начали применять более продвинутые техники для отслеживания пользователей: фингерпринтинг по рендерингу Сanvas, через Audio API, путём выявления реального IP-адреса через WebRTC Local IP, через список установленных шрифтов по Canvas-Font. Наилучший эффект даёт сочетание всех этих методов. По указанным ссылкам перечислены сайты из числа самых популярных сайтов интернета, где работают соответствующие скрипты для скрытого фингерпринтинга.

Так что для более надёжной анонимной работы лучше заходить на сайты через сеть анонимайзеров с использованием браузера Tor. Желательно также использовать операционную систему Tails, которая изначально настроена для безопасной работы в интернете. Именно этот дистрибутив Linux раньше использовал Эдвард Сноуден.
Поделиться с друзьями
-->

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


  1. Roach13
    17.06.2016 15:29
    +10

    Отлично, давно ждал.


  1. berezuev
    17.06.2016 15:31
    +1

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


    1. GennPen
      17.06.2016 15:43
      +4

      Только в хроме они запускаются в отдельных окнах, а не в табах, но думаю так даже удобней — не запутаешься.


      1. UksusoFF
        19.06.2016 11:46

        Там есть MultiLogin вполне себе тоже самое делает.


    1. BarakAdama
      17.06.2016 15:49
      +1

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


    1. imbeat
      17.06.2016 15:49
      -2

      То о чем вы говорите требует НЕСКОЛЬКИХ гугловских аккаунтов. А тут немного другое… что-то типа профилей (не привязанных к конкретным аккаунтам).


      1. BarakAdama
        17.06.2016 15:51
        +5

        Если синхронизация не нужна, то гугловский аккаунт тоже не нужен.


        1. imbeat
          17.06.2016 15:55
          -5

          Верно, но вообще нужна электронная почта (для каждого аккаунта отдельная почта). А в FF никаких почт не нужно. Я хоть и пользуюсь сам браузером Chrome, но считаю, что команда FF — молодцы, хорошая идея! Хрому можно взять на заметку.


          1. BarakAdama
            17.06.2016 16:00
            +9

            Да не нужна там электронная почта. Новый профиль создается в один клик в настройках.


    1. T-362
      17.06.2016 15:54
      +2

      В лисе есть такое, только работает слегка через магию — нужно отдельно создавать профиль и ярлык браузера с линком на него.

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


      1. themtrx
        17.06.2016 17:14
        +2

        Почти уверен, что для всех будет Banking, Work, etc., а для желающих — билеты на увлекательные путешествия в about:config. Собственно, идеальное сочетание юзабилити и конфигурабилити, за что и люблю FF.


    1. Vampireos
      17.06.2016 15:58

      Сомнительное удовольствие, так как каждый раз переключаться меж аккаунтами, это не такое стремительное действие как открыть новую вкладку


    1. SamoilowAlex
      17.06.2016 16:23
      +3

      В firefox поддержка профилей появилась еще до рождения хромоноги:
      firefox -ProfileManager — управлялка
      firefox -P — запустить с определенным профилем


      1. webmasterx
        18.06.2016 14:13

        а два firefox окна с разными профилями запустятся одновременно?


        1. darkdaskin
          18.06.2016 17:32
          +1

          Запустятся, если для дополнительных экземпляров также указать параметр -no-remote. Ссылки, открываемые из сторонних приложений будут открываться в экземпляре, в котором -no-remote не указан.


    1. NikitosZs
      18.06.2016 00:07

      Немного не то вы описали. А вот в Maxthon`е реально это реализовано уже очень давно.


  1. brzsmg
    17.06.2016 15:48
    +2

    Удобное дополнение к приватным вкладкам!
    Для покупок и онлайн-банка, всегда использую приватные вкладки, естественно не куки не пароли не сохранить.
    А так можно хотя бы для магазинов использовать отдельный контейнер, что бы реклама Али потом не маячила везде.
    Но для банка все равно лучше приватные вкладки, особенно на рабочем ПК.


  1. Vampireos
    17.06.2016 15:49
    +3

    Лозунг) Огнелис впереди планеты всей, по добавлению по настоящему нужных функций, а не фантиков^ ^ )


  1. malefistofel
    17.06.2016 15:49

    для лисы же есть multifox


  1. kafeman
    17.06.2016 15:50
    +1

    Зачем это, если давно есть Multifox? А так только будет путать тех, кому это не нужно.


    1. sumanai
      17.06.2016 16:55
      +1

      Нативное думаю будет безопаснее.


    1. Denai
      17.06.2016 17:33

      Видимо тех, кому нужно, стало достаточно для внедрения в сам браузер.


    1. 4ecTHblu
      22.06.2016 04:34

      Мультифокс не поддерживает e10s и не будет, это написано в самом расширении, если установить его в брaузер и включить поддержку e10s.
      И похожая участь ждет множество расширений, всему виной переход firefox на WebExtenisons и поддержка e10s в будущем.


  1. amarao
    17.06.2016 15:55
    +2

    О, штатная переключалка профилей. Круто.


  1. pnetmon
    17.06.2016 16:21

    >> Теоретически, такая изоляция профилей повышает безопасность информации. Например, все финансовые данные и профили хранятся в «банковском» контейнере. Таким образом, при посещении сомнительного сайта из личного контейнера не произойдёт утечки финансовой информации через возможную XSS- или CSRF-атаку. Дополнительная изоляция здесь совсем не помешает.
    — Внутренний параноик заставил использовать виртуальные машины. Перейти с обычным интернетом на виртуалку не получилось — лень матушка. Пришлось переносить банковские операции в виртуалку.


    1. dartraiden
      17.06.2016 20:26
      +1

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


  1. for611bing
    17.06.2016 16:52
    +1

    Теперь у фаерфокса появится повод съедать не гиг оперативки, а все два. Отдельное окружение для каждой учётки — как полноценный открытый второй браузер получится.


    1. T-362
      17.06.2016 17:06
      +1

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

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


      1. inoyakaigor
        17.06.2016 21:13

        >Кстати у лисы в перспективе и разделение вкладок по процессам
        Если я правильно понимаю происходящее, то будет разделение интерфейса и вкладок по процессам. Только и всего.
        Собственно пока так и есть (Fx 49)


        1. sumanai
          17.06.2016 21:20
          +1

          Процессов для вкладок может быть несколько, советуется число, равное числу ядер. Уже сейчас работает на 47, спрятано в about:config и отключается при установленных расширениях (но это можно побороть). С расширениями правда пока проблема, пробовал, но пришлось откатить настройки.


          1. inoyakaigor
            20.06.2016 12:25

            Не подскажете где и что подкрутить, чтоб было?


            1. sumanai
              20.06.2016 22:56
              +1

              В about:config
              browser.tabs.remote.autostart= true
              // Ставить равным числу ядер
              dom.ipc.processCount= 4

              В user.js в профиле, так как иначе будет постоянно слетать
              user_pref(«extensions.e10sBlockedByAddons», false);


        1. dartraiden
          17.06.2016 22:00

          Это пока. В будущем не исключается переход к модели «вкладка = процесс», как в Chrome.


          1. sumanai
            18.06.2016 15:57

            Это Firefox, очень надеюсь, что всё отключается и настраивается. Мне вот удобно 3 процесса на вкладки и один на гуй, всё летало при тестах, жду допила дополнений браузера до совместимости.


    1. tsukasa_mixer
      18.06.2016 00:30

      И всеравно это будет меньше, чем ожиревший хром, сожравший всю доступную память.


    1. Suvitruf
      18.06.2016 06:01

      Хм, он у меня и с одним аккаунтом никогда меньше 2 не съедает.


  1. Sayonji
    17.06.2016 17:01
    +3

    Если там еще на каждый такой контейнер можно свой мастер-пароль поставить, то вообще идеально.


  1. ponich
    18.06.2016 00:30

    Виртуалку поднимать что бы открыть вкладку? :-) Масштабы у автора конечно безграничные


  1. nathanael
    18.06.2016 00:30

    Первая действительно полезная функция в браузеростроении за последние N-лет.


    1. 23rd
      19.06.2016 15:00

      В Макстоне уже 6 лет как реализовано, доброе утро.


  1. ZoomLS
    18.06.2016 00:58
    -1

    Джва года ждал!


  1. sim2q
    18.06.2016 03:30

    наконец то!
    а то задолбало два браузера запускать


    1. lex_infohunter
      18.06.2016 10:26

      CTRL+SFIFT+P в окне firefox, но в данной реализации наверное будет удобнее.


      1. sim2q
        18.06.2016 13:12

        Тоже пользуюсь, но хотелоось бы всё же «полноценный» браузер, что бы всё сохранялось и тд, но как будто совсем в отдельной системе, что бы куки не пересекались, хистори. Скачал ночную сборку, попробовал, но пока не разбирался.


  1. saga111a
    18.06.2016 16:23

    Ура! Это повысит приватность. Треккеры будут негодовать от происходящего.


  1. sumanai
    18.06.2016 21:33
    +2

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


    1. GennPen
      18.06.2016 23:38
      +1

      Режим инкогнито?


      1. sumanai
        19.06.2016 11:26
        +1

        Не позволяет смешивать вкладки в одном окне.
        Вот ещё в копилку идей- автоматически открывать определённые сайты только в одном контейнере.


  1. amaksr
    18.06.2016 22:08
    -1

    В IE пункт меню File->New Session — не то же самое?


  1. trimtomato
    19.06.2016 15:00
    +1

    Уверен не только я один для подобных целей использую сейчас несколько разных браузеров. И вместо предложенной инновации я бы предпочел простую возможность независимо установить фаерфокс несколько раз.


  1. Pepka
    19.06.2016 17:31

    Firefox и Tundetbirds сама тормознутые приложения в своих категориях. Тандером пользуюсь только из-за его бесплатности и многофункциональности, но оно такое тормозное и с кучей багов.